PHP preg_match汽车牌照

时间:2012-06-25 08:19:38

标签: php preg-match

所以我前几天刚学会了PHP中的preg_match,现在我正在尝试preg_match一个车牌。它应该检查:

9a-4e-yy,以及-之前和之后的数字或字母,然后是-再次和更多的数字或字母。但它必须是彼此相邻的2个数字或字母,而不是更多。

现在我有了这段代码:

return preg_match("/^([0-9])"."([0-9])"."(\-([0-9])"."([0-9]))"."(\-([0-9])"."([0-9]))$/", $kenteken );

但这只会检查数字。

我希望你们也可以帮我把信件用到字母上。

提前致谢!

2 个答案:

答案 0 :(得分:6)

[0-9]仅匹配数字。如果您想匹配数字或字母,则需要[0-9A-Za-z]

完整的正则表达式可以执行您想要的操作^[0-9A-Za-z]{2}(-[0-9A-Za-z]{2}){2}$

答案 1 :(得分:3)

你可能想要:

preg_match('/^[0-9a-z]{2}-[0-9a-z]{2}-[0-9a-z]{2}$/i', $kenteken);

[0-9a-z]表示任何数字“0”到“9”或任何(小写)字母“a”到“z”。 {2}表示恰好匹配2个字符。最后的/i表示不区分大小写的匹配,因此它也匹配大写字母。