RegEx不允许在电话号码中领先0

时间:2009-09-11 21:11:34

标签: php regex

到目前为止,我只有简单的“数字”......

/^[0-9]+$/

如何做到不允许前导零(不是从零开始)或preg_replace会删除所有空格并导致零? 谢谢

4 个答案:

答案 0 :(得分:5)

/^[1-9][0-9]+$/

答案 1 :(得分:4)

只有不以0开头的数字:

/^[1-9][0-9]+$/

删除所有前导空格并归零:

$num = preg_replace('/^(?:0|\s)*([0-9]+)$/', '\1', ' 0999');

要删除字符串中的所有空格,也请删除那些不是前导的空格,请使用str_replace。它可以用正则表达式完成,但是如果要循环许多速度较慢的数字。

答案 2 :(得分:0)

/^[^0][0-9]+$/

答案 3 :(得分:0)

(^([1-9]{1})+([0-9]{9})+$

这是电话号码长10个字符的代码,不以零开头。