猿问

我希望正则表达式匹配只能有两个字母字符或数字字符的模式

我想要一个可以匹配两个字母字符或两个数字字符的 PHP 正则表达式。例如:

AB45

字符不能与字母和数字混合。

^(\w)\1|[A-Z|0-9]{2}$

我使用了上面的正则表达式,但它不能正常工作。


qq_遁去的一_1
浏览 513回答 1
1回答

米琪卡哇伊

您可以使用preg_match('~^(?:[A-Za-z]{2}|\d{2})$~', $s, $match)该^(?:[A-Za-z]{2}|\d{2})$模式匹配两个 ASCII 字母或两个 ASCII 数字。请参阅正则表达式演示和正则表达式图:细节^ - 字符串的开始(?:[A-Za-z]{2}|\d{2}) - 一个非捕获组匹配[A-Za-z]{2} - 两个 ASCII 字母| - 或者\d{2} - 两位数$ - 字符串的结尾。要使其匹配所有 Unicode 字母,您可以使用preg_match('~^(?:\p{L}{2}|[0-9]{2})$~u', $s, $match)
随时随地看视频慕课网APP
我要回答