Javascript 带有字符位置的正则表达式验证
您好,我需要在javascript中使用正则表达式进行验证的帮助 我需要这样的东西 第一个字符应为指定字符,如a、B或C。接下来的3个字符应该是数字 示例:A123、B345、C234 D123是不允许的。这适用于我:Javascript 带有字符位置的正则表达式验证,javascript,regex,Javascript,Regex,您好,我需要在javascript中使用正则表达式进行验证的帮助 我需要这样的东西 第一个字符应为指定字符,如a、B或C。接下来的3个字符应该是数字 示例:A123、B345、C234 D123是不允许的。这适用于我: var rgx = /^(?:A|B|C)\d{3}$/; alert('A123'.match(rgx)); // A123 alert('D123'.match(rgx)); // null alert('B986'.match(rgx)); // B986 细分: ^
var rgx = /^(?:A|B|C)\d{3}$/;
alert('A123'.match(rgx)); // A123
alert('D123'.match(rgx)); // null
alert('B986'.match(rgx)); // B986
细分:
匹配字符串的开头^
匹配A、B或C,但不捕获它(?:A | B | C)
匹配一行中的3位数字\d{3}
匹配字符串的结尾$
'A12'
将无效,因为没有3位数字,'A123'
也不会有效,因为前导空白,'A123 hello'
也不会有效,因为匹配不在字符串的开头和结尾
要使其不区分大小写,请在正则表达式末尾的/
之后添加i
。尝试使用此正则表达式:
/^[a-c]\d{3}$/i
谢谢你真是太棒了。。。另一个问题。。如果“A123你好”是可能的话。它仍然检查前4个字符,但不检查后面的字符。在这种情况下,只需从末尾删除
$
。这样,它将只在字符串的开头匹配。如果该文本可以位于字符串中的任何位置,则还可以从正则表达式的开头删除^
。