我已经返回一个preg_match来检查起始数字是否为9477
或不是,它可以正常工作。但是现在我想添加另一个条件来添加9477
或9476
应该是有效的。如何匹配pregmatch中的两个数字?
这里的条件:
- 应包含11位数字
- 应与
9477
或9476
这里开始是我的代码:
preg_match('/^9477\d{7}$/',$Mnumber)
我已经返回一个preg_match来检查起始数字是否为9477
或不是,它可以正常工作。但是现在我想添加另一个条件来添加9477
或9476
应该是有效的。如何匹配pregmatch中的两个数字?
这里的条件:
9477
或9476
这里开始是我的代码:
preg_match('/^9477\d{7}$/',$Mnumber)
只需使用(9477|9476)
echo preg_match('/^(9477|9476)\d{7}$/',$Mnumber);
您还可以使用:
/^947(7|6)\d{7}$/
/^947[76]\d{7}$/
使用两个数字之间的交替:
preg_match('/^947(?:7|6)\d{7}$/',$Mnumber)
(?:7|6)
是一个非捕获匹配数字7
或6
的组。非捕获组比捕获组效率更高。
你也可以这样做:
preg_match('/^947[76]\d{7}$/',$Mnumber);
[67]
是一个字符类匹配的数字7
或6
使用在[]
echo preg_match('/^947[76]\d{7}$/',$Mnumber);
分组