Regex 一个或两个字母后跟3-4个数字
我试图找到正确的正则表达式模式,允许一个或两个字母后跟3到5个数字,并在末尾可选一个字母。最后,应允许非字母数字包装字符串:Regex 一个或两个字母后跟3-4个数字,regex,Regex,我试图找到正确的正则表达式模式,允许一个或两个字母后跟3到5个数字,并在末尾可选一个字母。最后,应允许非字母数字包装字符串: Allowed M394 ,MP4245) TD493! X4958A V49534@ U394U A5909. Not Allowed TED492 R32 R4!3 U394UU A5909AA 5349A 我找到了一个例子,但并不完全有效: 谢谢你的帮助继续,试试看。看,这其实很简单 ^[^A-Za-z]*[A-Za-z]{1,2}[0-9]{3,5}.?[^
Allowed
M394
,MP4245)
TD493!
X4958A
V49534@
U394U
A5909.
Not Allowed
TED492
R32
R4!3
U394UU
A5909AA
5349A
我找到了一个例子,但并不完全有效:
谢谢你的帮助继续,试试看。看,这其实很简单
^[^A-Za-z]*[A-Za-z]{1,2}[0-9]{3,5}.?[^A-Za-z]*
我通常会建议如果你的RE真的是,使用一个“I”(用于case insistive)标志
例如:
您可以使用此正则表达式:
\b[a-zA-Z]{1,2}\d{3,5}[a-zA-Z]?\b
正则表达式的拆分
\b # word boundary
[a-zA-Z]{1,2} # 1 or 2 letters
\d{3,5} # 3 to 5 digits
[a-zA-Z]? # an optional letter
\b # word boundary
我想这会符合你的需要
[^a-zA-Z0-9]?[a-zA-Z]{1,2}[0-9]{3,5}[a-zA-Z]?[^a-zA-Z0-9]?
我不认为
\b
和\d
是基本正则表达式规范的一部分。这将丢失第二个单词,MP4245)
它不是以a-zA-Z
开头的。这两个字符都不是以特殊字符sop had,MP4245)
结尾的,并且这个正则表达式确实允许这一行(请参见演示)。好的。我认为\b
正在发挥作用。我今天学到了新东西