标签: php regex
$phone = 841657196818; $phone = 841267337430; if(preg_match("/^[1-9]{2}[0-9]{8|9|10}$/", $phone)) { echo "$phone Valid"; } else { echo "$phone Invalid."; }
为什么841657196818有效,但841267337430无效?
841657196818
841267337430
答案 0 :(得分:4)
AFAIK {8|9|10}在语法上不正确。您希望{8,10}基本上意味着从8到10'。
{8|9|10}
{8,10}
更正的语法为^[1-9]{2}[0-9]{8,10}$。
^[1-9]{2}[0-9]{8,10}$
Example