校验手机号码正则表达式

校验手机号码正则表达式

Posted by WangZiTao on Tuesday, May 29, 2018

需要通过的手机号:

中国移动:134、135、136、137、138、139、148、150、151、152、157(TD)、158、159、182、183、184、187、178、188、198、147(数据卡号段) 、1705(虚拟运营商移动号段)、144十三位移动物联网

中国联通:130、131、132、145(数据卡号段)155、146、156、166、176、185、186、1709(虚拟运营商联通号段)、141十三位电信物联网

中国电信:133、153、177、180、181、189、199、1740、1349(卫星通讯号段)、1741(卫星通信号段)、1700(虚拟运营商电信号段)

整理后:

130、131、132、133、134、135、136、137、138、139、
145、146、147、148、
150、151、152、153、155、156、157、158、159、
166、
176、177、178、

180、181、182、183、184、185、186、187、188、189、198、199
 ^((13[0-9])|(14[5-8])|(15([0-3]|[5-9]))|(16[6])|(17[0|4|6|7|8])|(18[0-9])|(19[8-9]))\d{8}$

特殊:1349、1700、1705、1740、1741

   ^((134[9])|(170[0|5])|(174[0|1]))\d{7}$

十三位:141、144

   ^(14[1|4])\d{10}$

全部校验的正则:

 (^((13[0-9])|(14[5-8])|(15([0-3]|[5-9]))|(16[6])|(17[0|4|6|7|8])|(18[0-9])|(19[8-9]))\d{8}$)|(^((170[0|5])|(174[0|1]))\d{7}$)|(^(14[1|4])\d{10}$)

最后觉得太麻烦,改成

12位,13-19开头

^(1[3-9])\\d{9}$

comments powered by Disqus