Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Regex 正则表达式(三个字符,然后是3-7位),然后可选一个字符_Regex - Fatal编程技术网

Regex 正则表达式(三个字符,然后是3-7位),然后可选一个字符

Regex 正则表达式(三个字符,然后是3-7位),然后可选一个字符,regex,Regex,我想匹配三个字符,后跟3-7位数字,然后可选一个字符或更多,总字符串应该在6到20个字符之间 我写了以下内容,但它不起作用 ^([a-zA-Z]{3}[1-9]{3,7}([a-zA-Z])?){6,20}$ 谢谢 如果字符串的总长度应为6-20个字符,则可以使用正数来断言,从字符串的开头到字符串的结尾,共有6-20个字符^(?=[a-zA-Z1-9]{6,20}$) 然后匹配3个字符[a-zA-Z]{3}并匹配3-7个数字[1-9]{3,7} 注意您使用的[1-9]与零不匹配(即[0-9])

我想匹配三个字符,后跟3-7位数字,然后可选一个字符或更多,总字符串应该在6到20个字符之间

我写了以下内容,但它不起作用

^([a-zA-Z]{3}[1-9]{3,7}([a-zA-Z])?){6,20}$

谢谢

如果字符串的总长度应为6-20个字符,则可以使用正数来断言,从字符串的开头到字符串的结尾,共有6-20个字符
^(?=[a-zA-Z1-9]{6,20}$)

然后匹配3个字符
[a-zA-Z]{3}
并匹配3-7个数字
[1-9]{3,7}

注意您使用的
[1-9]
与零不匹配(即
[0-9]

在此之后,匹配零个或多个大写或小写字符
[a-zA-Z]*$
,直到字符串结束


这将如何达到20个字符?3个字符加上最多7个数字,一个可选字符最多11个?{6,20}表示您需要全部6到20个时间,它不报告字符串的总长度,而是报告最后一个括号的时间数。您要匹配的部分必须在字符串的开头吗?可选字符表示一个或多个(最多20个)。所以我要找的是lile:AAA111或aaa11l或aaa11lasa..忘了提到不允许使用空格。是的,它必须匹配整个字符串(从文本框值字段的开始到结束)如果很难将字符串定义为介于6和20之间。我可以使用jquery来验证这一点。那么可能我需要验证字符串的格式为(三个字符)+(3-7位),然后是可选的任何字符(比如说介于1-6之间),都不带空格