欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

正则验证手机号是否合法(一次性手机号短信验证码平台)

程序员文章站 2024-03-26 14:47:41
目前移动、联通、电信三大运营商的手机号段如下:1、移动号段134,135,136,137, 138,139,147,150,151,152,157,158,159,178,182,183,184,18...

目前移动、联通、电信三大运营商的手机号段如下:

1、移动号段

134,135,136,137, 138,139,147,150,151,152,157,158,159,178,182,183,184,187,188

2、联通号段

130,131,132,155,156,185,186,145,176。

3、电信号段

133,153,177,180,181,189。

4、工信部:新一批手机号段98、92、19、16要来了!(摘自某新闻内容)

从以上我们可以看到手机号码第一位是【1】开头,第二位则则有【3,4,5,6,7,8,9】,第三位则是【0-9】,第三位之后则是数字【0-9】。从而我们可以得出一个符合当前的手机号码验证正则表达式。

r"^[1][3-9][0-9]{9}$"

特殊格式的手机号码表达式

通过实际数据的分析,发现手机号码格式不仅为11位数字,其中含包含【+86】、【(86)】、【+0086】、【86空格】等情况,所以正则需要补充,如下。

r"(^+86|86|[86]|(86)|+0086|0086|[0086]|(0086))(s[1]|[1])[345678][0-9]{9}$"

固话的正则表达式

国内固定电话和传真的格式基本都是带有0的区号+连接符”-“+电话号码,区号有3位、4位,电话号码有7位和8位的;其它格式的有前面带4、8等其他数字,或者不带连接符的。

区号:前面一个4、8、0,后面跟2-3位数字;

电话号码:7-8位数字;

r"^[4,8,0][0-9]{2,3}(-[0-9]{7,8}$|(s)[0-9]{7,8}$|[0-9]{7,8}$)"

呕心沥血 调试的源码

正则验证手机号是否合法(一次性手机号短信验证码平台)

手机号、电话正则匹配函数

正则验证手机号是否合法(一次性手机号短信验证码平台)