我是上帝在正则表达式可怕的,我只是不明白他们,我会感谢任何人的帮助。preg_match两个字母,五个数字,两个字母
我需要能够匹配两个A-Z字符,然后再匹配五个0-9个字符,然后是两个A-Z字符。一个例子是AB12345CD
。
我得到这个匹配五个数字(^[0-9]{5}$)
,但只是重复这不起作用,我觉得真的很愚蠢,无法弄清楚。
预先感谢您。
我是上帝在正则表达式可怕的,我只是不明白他们,我会感谢任何人的帮助。preg_match两个字母,五个数字,两个字母
我需要能够匹配两个A-Z字符,然后再匹配五个0-9个字符,然后是两个A-Z字符。一个例子是AB12345CD
。
我得到这个匹配五个数字(^[0-9]{5}$)
,但只是重复这不起作用,我觉得真的很愚蠢,无法弄清楚。
预先感谢您。
最简单的理解,最长写
[A-Z][A-Z][0-9][0-9][0-9][0-9][0-9][A-Z][A-Z]
短:
[A-Z]{2}[0-9]{5}[A-Z]{2}
唯一完整的生产线:
^[A-Z]{2}[0-9]{5}[A-Z]{2}$ //^- start of line; $ - end of line
拍摄中的括号:
(^[A-Z]{2}[0-9]{5}[A-Z]{2}$) // as per mpaepper, for reuse in matched expression
时间更短:
(^[A-Z]{2}\d{5}[A-Z]{2}$) // \d represents 0-9
你可以尝试这样的事:
[A-Z]{2}[0-9]{5}[A-Z]{2}
这里是表达的向下突破:
[A-Z] # Match a single character present in the list below
# A character in the range between “A” and “Z”
{2} # Exactly 2 times
[0-9] # Match a single character in the range between “0” and “9”
{5} # Exactly 5 times
或者你可以尝试如下
[A-Z]{2}\d{5}[A-Z]{2}
希望这将有助于。
“match”是什么意思?检查一个字符串是否符合表达式?在更长的文本中找到这样的字符串? – georg
@ thg435这就是正则表达式所做的 - match/expression/in/text_to_search/... – foundry