preg_match两个字母,五个数字,两个字母

Ale*_*abe 0 php regex preg-match

我对正则表达式太可怕了,我只是不理解它们,我会很感激任何人的帮助.

我需要能够匹配两个AZ字符,然后是五个0-9个字符,然后是两个AZ字符.一个例子是AB12345CD.

我得到这个匹配五个数字,(^[0-9]{5}$)但只是重复这个不起作用,我觉得真的很愚蠢,因为无法弄明白.

先感谢您.

fou*_*dry 7

最简单的理解,最长的写作

[A-Z][A-Z][0-9][0-9][0-9][0-9][0-9][A-Z][A-Z]
Run Code Online (Sandbox Code Playgroud)

短:

[A-Z]{2}[0-9]{5}[A-Z]{2}
Run Code Online (Sandbox Code Playgroud)

仅限完整行:

^[A-Z]{2}[0-9]{5}[A-Z]{2}$    // ^ - start of line; $ - end of line
Run Code Online (Sandbox Code Playgroud)

在parens捕获:

(^[A-Z]{2}[0-9]{5}[A-Z]{2}$)  // as per mpaepper, for reuse in matched expression
Run Code Online (Sandbox Code Playgroud)

更短的时间:

(^[A-Z]{2}\d{5}[A-Z]{2}$)     //  \d represents 0-9
Run Code Online (Sandbox Code Playgroud)


mpa*_*per 5

然后尝试这个:

(^[A-Z]{2}[0-9]{5}[A-Z]{2}$)
Run Code Online (Sandbox Code Playgroud)