C# Regex匹配字符串从以开始

C# Regex匹配字符串从以开始,c#,regex,string,match,C#,Regex,String,Match,这是我的正则表达式 ^AK[0-9A-Za-z-/#\s]{1,15}$ 当我们输入一些以“AKtest123”开头的文本时,它匹配整个字符串 但是我想匹配下面的字符串,比如 A AK AKtest 如何修改正则表达式以匹配第一个字符的字符串?我认为您需要分组 将正则表达式更改为: ^(((A)K)[0-9A-Za-z-/#\s]{1,15})$ 第1组将有A,第2组将有AK,第3组将有AKtest这应该会起到神奇的作用: ^(A|AK[0-9A-Za-z-/#\s]{0,15})$ 这

这是我的正则表达式

^AK[0-9A-Za-z-/#\s]{1,15}$
当我们输入一些以“AKtest123”开头的文本时,它匹配整个字符串

但是我想匹配下面的字符串,比如

A
AK
AKtest

如何修改正则表达式以匹配第一个字符的字符串?

我认为您需要分组

将正则表达式更改为:

^(((A)K)[0-9A-Za-z-/#\s]{1,15})$

第1组将有
A
,第2组将有
AK
,第3组将有
AKtest
这应该会起到神奇的作用:

^(A|AK[0-9A-Za-z-/#\s]{0,15})$

这意味着它将接受A、或AK(注意,我在末尾将1更改为0)、或AK以及列表中的任意15个字符。这就是你想要的,对吗?

也许你在找这样的东西

^A(?:K(?:[0-9A-Za-z-/#\s]{1,15})?)?$
它将匹配:

A
AK
AKtest

^A[0-9A-Za-z-/#\s]{0,15}$怎么样?不清楚你在问什么。是否希望所有单词都以
A开头