日期:2014-05-18  浏览次数:20648 次

求一电话号码正则表达式
13800000000,+8613900000000,66880000,8888,8613500000000

这一串字符是各种写法的电话号码,用逗号隔开,+号可以出现在号码的第一位,号码位数没有限制
怎么写呢?

------解决方案--------------------
哎,如果使用正则式这么麻烦,自己写一个验证不行了吗.
------解决方案--------------------
拷贝过客 的 这个验证电话 的很强

\(?0?(10|2[0-57-9]|[3-9]\d{2}|1(3\d|5[389]))\)?-?\d{8}  电话匹配
------解决方案--------------------
我这儿 有写常用的 http://hi.baidu.com/kmiaoer/blog/item/58c68201f55b5dd7267fb5c9.html

转 月儿姐的~~你看看有没~~
------解决方案--------------------
自己分析一下阿, + 号就不说了, 0就不说了,重要的判断是8601023423434 和8613* 和 8615*

都有规律的, 比如说 只要是0 和1开头的,不用说了,都是电话号码,+好开头的 如果有86去掉86
如果不是 看看是不是 86开头的,如果86后面是0并且86后面的数字大于6(没有地方的号码长度大于8把) 那么去掉86,如果86后面的长度小于6或者等于6 那么86就是电话号码本身。

以上情况还需要斟酌斟酌,我随手写的,不一定完全阿