我想要一个与以下模式相匹配的正则表达式
目前,我已经开发了这个模式。
[^I,O,S,Z,i,o,s,z][0-9A-Za-z]{2}[AA|TN|TP]{2}但它正在考虑AI2AT,而它不应该这样做。
发布于 2016-08-24 08:46:59
你可以用
/^[0-9A-HJ-NP-RT-Y][A-Z0-9]{2}(?:BB|KA|JQ)$/i或
/^[0-9A-Ha-hJ-Nj-nP-Rp-rT-Yt-y][A-Z0-9]{2}(?:BB|KA|JQ)$/如果你能使用“看头”,你可以用
/^(?![IOSZiosz])[A-Za-z][A-Za-z0-9]{2}(?:BB|KA|JQ)$/请参阅这个regex演示
当前的[^I,O,S,Z,i,o,s,z][0-9A-Za-z]{2}[AA|TN|TP]{2}表达式实际上不检查字符串开始/结束,[^I,O,S,Z,i,o,s,z]否定字符类匹配任何字符,但匹配I、,、O等,[AA|TN|TP]{2}字符类匹配A、|、T、N、P,两次匹配。
所以,
[0-9A-HJ-NP-RT-Y]来代替第一个否定字符类(?:...)和交替运算符| (在[...]字符类中作为文字符号|处理)。(?![IOSZiosz])负查找限制了通用字母数字[A-Za-z0-9]模式,使其无法匹配I、i、o、O、S、s、z或Z。发布于 2016-08-24 08:51:59
试试这个:
(?!I,O,S,Z,i,o,s,z)[0-9A-Za-z][0-9A-Za-z]{2}(BB|KA|JQ){2}https://stackoverflow.com/questions/39118469
复制相似问题