我目前拥有的:
\b(?=[A-Z\d]{10})(?:[A-Z]*\d){0,2}[A-Z]*\b
这只会匹配长度为 10 的字符串。我想将其更改为 9 到 10 个字符之间,其中 2 可以是数字。为什么这不起作用?
\b(?=[A-Z\d]{9,10})(?:[A-Z]*\d){0,2}[A-Z]*\b
AFAIK,{9,10}
应该是长度间隔。
我目前拥有的:
\b(?=[A-Z\d]{10})(?:[A-Z]*\d){0,2}[A-Z]*\b
这只会匹配长度为 10 的字符串。我想将其更改为 9 到 10 个字符之间,其中 2 可以是数字。为什么这不起作用?
\b(?=[A-Z\d]{9,10})(?:[A-Z]*\d){0,2}[A-Z]*\b
AFAIK,{9,10}
应该是长度间隔。
你很亲近
\b(?=[A-Z\d]{9,10}\b)(?:[A-Z]*\d){0,2}[A-Z]*\b
--
|->you missed this
在这里试试
所以这个正则表达式将匹配一个包含 9 到 10 个字符[大写和数字] 的单词,其中包含 1 到 2 个数字
如果你想匹配你最好使用的整个字符串^
(字符串的开头)和$
(字符串的结尾)