Regex 字母和数字的通用正则表达式问题
我使用下面的正则表达式-Regex 字母和数字的通用正则表达式问题,regex,Regex,我使用下面的正则表达式-[a-zA-Z0-9]{9,18},这意味着我可以使用最小长度为9、最大长度为18的字母和数字。它不应该使用特殊字符。 它采用的值类似于ADV0098890等,但它也采用了ADV0098890[],这是错误的 如何防止这种情况发生?您的正则表达式只匹配字符串的第一部分。尝试在^$中包装模式: >> !!('ADV0098890' =~ /[a-zA-Z0-9]{9,18}/) => true >> !!('ADV0098890[]' =~
[a-zA-Z0-9]{9,18}
,这意味着我可以使用最小长度为9、最大长度为18的字母和数字。它不应该使用特殊字符。
它采用的值类似于ADV0098890
等,但它也采用了ADV0098890[]
,这是错误的
如何防止这种情况发生?您的正则表达式只匹配字符串的第一部分。尝试在
^$
中包装模式:
>> !!('ADV0098890' =~ /[a-zA-Z0-9]{9,18}/)
=> true
>> !!('ADV0098890[]' =~ /[a-zA-Z0-9]{9,18}/)
=> true
>> !!('ADV0098890' =~ /^[a-zA-Z0-9]{9,18}$/)
=> true
>> !!('ADV0098890[]' =~ /^[a-zA-Z0-9]{9,18}$/)
=> false
对我来说,它不包括
[]
:查看使用锚^[a-zA-Z0-9]{9,18}$