我有一个PHP应用程序,需要一个特殊的激活密钥才能解锁。
所以我想创建脚本来检查$user_input
格式是否正确。
激活密钥将如下:
1E63-DE12-22F3-1FEB-8E1D-D31F
数字和字母间距可能会有所不同。
因此激活密钥也可以是这样或不同的:
1EE3-1E1C-R21D-1FD7-111D-D3Q5
提前感谢您的任何帮助:)
答案 0 :(得分:11)
你必须使用正则表达式。我在这里测试了这个正则表达式:http://www.phpliveregex.com/
<?php
$key = '1E63-DE12-22F3-1FEB-8E1D-D31F';
$regex = '^[A-Z0-9]{4}-[A-Z0-9]{4}-[A-Z0-9]{4}-[A-Z0-9]{4}-[A-Z0-9]{4}-[A-Z0-9]{4}$';
if (preg_match($regex, $key)) {
echo 'Passed';
} else {
echo 'Wrong key';
}
答案 1 :(得分:2)
这个正则表达式会匹配你发布的那个键,如果包含小写字母也会有效:
^([A-z0-9]){4}-([A-z0-9]){4}-([A-z0-9]){4}-([A-z0-9]){4}-([A-z0-9]){4}-([A-z0-9]){4}$
如果您只想要大写字母,请将该正则表达式中的所有“z”更改为“Z”