我正在寻找符合我要求的正则表达式。但我无法找到一个确切的。
我的要求是
添加验证检查以避免电话号码:
1)6位数相等(例如000000; 111111)
2)序列号(7位)(例如 1234567; 7654321)
我尝试了最后得到这段代码
if (preg_match('/(\d)\1{5}/', $phone)) {
echo "Invalid Phone number";
}
但它只匹配第一种情况。希望有人会帮助我。提前谢谢!
答案 0 :(得分:1)
这是我脱离正则表达式的那一次。
这将执行您的预期验证(并包括"全天候"数字序列)。
$phone='000000';
$len=strlen($phone);
$rnd_the_clk='0123456789012345';
if(($len==6 && $phone==str_repeat($phone[0],6)) // length is 6, check only one integer used
||
($len==7 && (strpos($rnd_the_clk,$phone)!==false || strpos($rnd_the_clk,strrev($phone))!==false))){ // length is 7, check sequential
echo "invalid";
}else{
echo "valid";
}