Preg可靠地匹配字母和数字

时间:2018-05-22 14:00:24

标签: php preg-match

如何在PHP中为2个字符的字符串创建preg_match,例如:

1a valid
b2 valid
3c valid

11 invalid
67 invalid
ad invalid
dt invalid

我试过这个,但它不起作用:

$string = "aa";
$result = preg_match('/^([a-z]|[0-9]){2}$/i', $string);

只有当第一个字母是字母然后是数字时才匹配所有内容而不是匹配,反之亦然。

2 个答案:

答案 0 :(得分:3)

preg_match('/^([a-z][0-9]|[0-9][a-z])$/i', $string);

答案 1 :(得分:1)

比Rolando的答案更难阅读,但略短

^[\d|[a-z][\d|[a-z]$

在此处查看此行动:https://regex101.com/r/dXCDcb/4