广

JavaScript

  • IOS开发
  • android开发
  • PHP编程
  • JavaScript
  • ASP.NET
  • ASP编程
  • JSP编程
  • Java编程
  • 易语言
  • Ruby编程
  • Perl编程
  • AJAX
  • 正则表达式
  • C语言
  • 编程开发

    JavaScript最新手机号码检验正则表达式

    2018-04-16 10:57:27 次阅读 稿源:互联网
    零七广告

    看到网上很多代码都很复杂,还包括以中文开头的86,17951,其实谁会填这么多,无非是检验一下他们是否位数对不对,开头有没有写错而已。下面我们从百度百科的手机号码历程来看:现在的手机号码段有联通、移动和电信。

    电信

    中国电信手机号码开头数字
    2G/3G号段(CDMA2000网络)133、153、180、181、189
    4G号段 177

    联通

    中国联通手机号码开头数字
    2G号段(GSM网络)130、131、132、155、156
    3G上网卡145
    3G号段(WCDMA网络)185、186
    4G号段 176、185[1]

    移动

    中国移动手机号码开头数字
    2G号段(GSM网络)有134x(0-8)、135、136、137、138、139、150、151、152、158、159、182、183、184。
    3G号段(TD-SCDMA网络)有157、187、188
    3G上网卡 147
    4G号段 178

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

    var reg = /^1[3|4|5|7|8][0-9]{9}$/; //验证规则var phoneNum = '15507621999';//手机号码var flag = reg.test(phoneNum); //true

    但你想过没有,也许这个第二位代码可能随时增加一个,比如以16开头呢?19开头呢?谁知道以后的事,咱们的代码要保证几年没问题,所以还可以不验证第二位规则:

    var reg = /^1[0-9]{10}$/;

    零七网部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与零七网进行文章共享合作。

    零七广告
    零七广告
    零七广告
    零七广告