转载一组匹配中国大陆(目前)所有手机号码的正则表达式

Server 林涛 9225℃ 0评论

很多程序员都需要用到正则表达式,它可以帮助开发者很好的判断一个字符串是否合法:

  • 比如判断一个手机号的格式是否正确
  • 手机号码的匹配
  • 填写的邮箱格式是否正确

但是呢,国内手机号的匹配还是有点难度,不仅有三大运营商,这三大运营商还经常推出一些新号段,因此判断手机格式还是有点复杂的

今天就和大家分享一组超级全面的匹配大陆手机号的正则表达式——ChinaMobilePhoneNumberRegex

到底有多全面呢?往下看你就知道了,比如:

匹配所有号码(手机卡 + 数据卡 + 上网卡)

^(?:\+?86)?1(?:3\d{3}|5[^4\D]\d{2}|8\d{3}|7(?:[01356789]\d{2}|4(?:0\d|1[0-2]|9\d))|9[189]\d{2}|6[567]\d{2}|4(?:[14]0\d{3}|[68]\d{4}|[579]\d{2}))\d{6}$

匹配所有支持短信功能的号码(手机卡 + 上网卡)

^(?:\+?86)?1(?:3\d{3}|5[^4\D]\d{2}|8\d{3}|7(?:[01356789]\d{2}|4(?:0\d|1[0-2]|9\d))|9[189]\d{2}|6[567]\d{2}|4[579]\d{2})\d{6}$

手机卡

匹配所有

^(?:\+?86)?1(?:3\d{3}|5[^4\D]\d{2}|8\d{3}|7(?:[35678]\d{2}|4(?:0\d|1[0-2]|9\d))|9[189]\d{2}|66\d{2})\d{6}$

匹配中国移动

^(?:\+?86)?1(?:3(?:4[^9\D]|[5-9]\d)|5[^3-6\D]\d|8[23478]\d|(?:78|98)\d)\d{7}$

匹配中国联通

^(?:\+?86)?1(?:3[0-2]|[578][56]|66)\d{8}$

匹配中国电信

^(?:\+?86)?1(?:3(?:3\d|49)\d|53\d{2}|8[019]\d{2}|7(?:[37]\d{2}|40[0-5])|9[19]\d{2})\d{6}$

匹配北京船舶通信导航有限公司(海事卫星通信)

^(?:\+?86)?1749\d{7}$

工业和信息化部应急通信保障中心(应急通信)

^(?:\+?86)?174(?:0[6-9]|1[0-2])\d{6}$

虚拟运营商

匹配所有

^(?:\+?86)?1(?:7[01]|6[57])\d{8}$

匹配中国移动

^(?:\+?86)?1(?:65\d|70[356])\d{7}$

匹配中国联通

^(?:\+?86)?1(?:70[4789]|71\d|67\d)\d{7}$

匹配中国电信

^(?:\+?86)?170[0-2]\d{7}$

物联网数据卡

匹配所有

^(?:\+?86)?14(?:[14]0|[68]\d)\d{9}$

匹配中国移动

^(?:\+?86)?14(?:40|8\d)\d{9}$

匹配中国联通

^(?:\+?86)?146\d{10}$

匹配中国电信

^(?:\+?86)?1410\d{9}$

上网卡

匹配所有

^(?:\+?86)?14[579]\d{8}$

匹配中国移动

^(?:\+?86)?147\d{8}$

匹配中国联通

^(?:\+?86)?145\d{8}$

匹配中国电信

^(?:\+?86)?149\d{8}$

里面还包含了各种规则介绍。

目前,该项目已经在GitHub上获得 3287 个Star,328 个Fork(GitHub地址:https://github.com/VincentSit/ChinaMobilePhoneNumberRegex

如需转载请注明: 转载自26点的博客

本文链接地址: 转载一组匹配中国大陆(目前)所有手机号码的正则表达式

转载请注明:26点的博客 » 转载一组匹配中国大陆(目前)所有手机号码的正则表达式

喜欢 (0)
发表我的评论
取消评论

表情