JavaScript 手机号正则表达式写法

栏目: JavaScript · 发布时间: 6年前

内容简介:在我们平时开发过程中,常常要判断一个手机号码。我记得刚开始做前端「切图仔」的时候,就有疑惑,这个不是后端处理的吗。实际上,如果前端提前判断手机号码是否正确,就可以减少后段请求,节省宽带资源。我们得先了解手机号码的规则「来自百度百科」:中国电信号段:133、149、153、173、177、180、181、189、191、199

在我们平时开发过程中,常常要判断一个手机号码。我记得刚开始做前端「切图仔」的时候,就有疑惑,这个不是后端处理的吗。实际上,如果前端提前判断手机号码是否正确,就可以减少后段请求,节省宽带资源。

我们得先了解手机号码的规则「来自百度百科」:

中国电信号段:133、149、153、173、177、180、181、189、191、199

中国联通号段:130、131、132、145、155、156、166、171、175、176、185、186

中国移动号段:134(0-8)、135、136、137、138、139、147、150、151、152、157、158、159、172、178、182、183、184、187、188、198

其他号段:14号段以前为上网卡专属号段,如中国联通的是145,中国移动的是147等等。

虚拟运营商

电信:1700、1701、1702、162

移动:1703、1705、1706、165

联通:1704、1707、1708、1709、171、167

卫星通信:1349

首先,手机号码只能是整数。我们可以这样判断:

function isMobile (mobile) {
  return /\d+/.test(mobile)
}
复制代码

然后手机号码必须以数字为开头,数字结尾,写法可以升级下:

function isMobile (mobile) {
  return /^\d+$/.test(mobile)
}
复制代码

上面这个正则只能做简单判断,我们知道所有的手机号码都是以 1 开头的,写法可以再升级下:

function isMobile (mobile) {
  return /^1\d+$/.test(mobile)
}
复制代码

另外手机号码都是 11 个数字:

function isMobile (mobile) {
  return /^1\d{10}$/.test(mobile)
}
复制代码

手机号码的第二位是 3 至 9 的数字:

function isMobile (mobile) {
  return /^1[3-9]\d{9}$/.test(mobile)
}
复制代码

完结,撒花。

JavaScript 手机号正则表达式写法

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Effective Modern C++

Effective Modern C++

Scott Meyers / O'Reilly Media / 2014-12 / USD 49.99

Learn how to program expertly with C++ with this practical book from Scott Meyers, one of the world's foremost authorities on this systems programming language. Scott Meyers takes some of the most dif......一起来看看 《Effective Modern C++》 这本书的介绍吧!

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

在线进制转换器
在线进制转换器

各进制数互转换器

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试