美文网首页
js正则验证手机号码

js正则验证手机号码

作者: 前端_逗叔 | 来源:发表于2019-06-11 10:51 被阅读0次

    说明

    image.png
    今天做测试的同事问我,你页面上的手机号码是怎么验证的?验证规则是怎样的?
    国内手机号码的正则验证是很早之前我就进行统计过form-validate
    ,网上关于手机号码的验证有很多,但是很多都太笼统了,要么就是不全,当时就想着自己整理一下,虽然不能验证号码的真实性,但是对目前的号段都进行了验证,反正我自己用着挺好,先上代码。

    代码

    /^(((13[0-9]{1})|(14[57]{1})|(15[012356789]{1})|(17[03678]{1})|(18[0-9]{1})|(19[89]{1})|(16[6]{1}))+\d{8})$/;
    

    正则分析

    在线分析-国内手机号码

    规则说明

    国内手机号码为11位数字,前两位只能为:13\14\15\16\17\18\19。

    三大运营商号段分配情况

    中国移动

    号段 可选值
    13x 134X(0-8)、135、136、137、138、139
    14x 147(数据卡)
    15x 150、151、152、157X(0-7\9)(TD)、158、159
    17x 178(4G)
    18x 182 、183、184、187(3G\4G)、188(3G)
    19x 198(2017-08-16 说明见附录一)

    中国联通

    号段 可选值
    13x 130、131、132
    14x 145(数据卡)
    15x 155、156
    17x 176(4G)
    18x 185(3G)、186(3G)
    16x 166(2017-08-16 说明见附录一)

    中国电信

    号段 可选值
    13x 133、(1349卫通)
    15x 153
    17x 177(4G)、173(最近刚开通)
    18x 180(3G)、181(3G)、189(3G)
    19x 199(2017-08-16 说明见附录一)

    虚拟运营商

    号段 可选值
    170 -

    号码组成

    • 目前我国使用的手机号码为11位,其中各段有不同的编码方向
    • 前3位:网络识别号
    • 第4~7位:地区编码
    • 第8~11位:用户号码
    • 电话号码编码规则:国家代码 + 地区代码 + 电话号码(服务商代码 + 4位用户号码)

    参考资料

    166/198/199新号段放出 你还准备换手机号吗?

    《电信网码号资源使用证书》颁发结果公示(2017年第10批)

    相关文章

      网友评论

          本文标题:js正则验证手机号码

          本文链接:https://www.haomeiwen.com/subject/xqsffctx.html