看到网上很多代码都很复杂,还包括以中文开头的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}$/;
相关推荐
2020年最新的手机号码和固话号码验证的正则表达式
【全球手机号码正则表达式】 1.格式:JSON 2.例示:{"86":{"regex":"^(86){0,1}1\d{10}$","sn":"CN"}} 3.通过短号例如:86,从json的key中获取正则表达式(regex),国家代码(sn)
jq非空验证,为空的时候input后面加红色字体的用户名不能为空。 js正则表达式验证邮箱和手机号码,验证邮箱必须含有@符,手机号码必须1开头并且固定11个字符
java 使用正则表达式验证电话号码的格式 java 使用正则表达式验证电话号码的格式
java 验证手机号码 身份证 email url 以及其他常用的正则表达式的验证方法。
c#使用正则表达式验证身份证号码,工程完全可以运行,方便大家参考和学习
最完善的身份证号码合法性校验Java算法,适合Android平台,可以直接拿来在项目中使用,正则表达式。
ASP代码,可以验证身份证号码的正则表达式
Delphi平台下非常好用的正则表达式控件源码。TRegExpr库实现正则表达式。 正则表达式易于使用,功能强大,可用于复杂的搜索和替换以及基于模板的文本检查。这对于输入形式的用户输入验证特别有用-验证电子邮件地址等...
正则表达式验证身份证号码 共两个验证 一个是简单的 只判断是不是15位或者18位, 另外一个方法是复杂的校验,严格判断身份证号码是否合理
js表单输入正则表达式验证代码
用js正则表达式验证手机号,座机号和email格式.txt
概念 正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一...前端的正则表达式验证往往是最繁多最复杂的,所以整理了一些最近自己常用的正则表达式,希望能对大家
正则表达式大全邮箱和手机的验证.txt正则表达式大全邮箱和手机的验证.txt正则表达式大全邮箱和手机的验证.txt
写一个简单的正则表达式,用来校验11位手机号码,开头允许是13、15、18,我一开始这样写: var reg = /^(13[0-9]{9})|(15[0-9]{9})...以上所述是小编给大家介绍的 一个容易犯错的js手机号码验证正则表达式(推荐),希望
JAVA正则表达式JAVA正则表达式JAVA正则表达式
正则表达式的合集,包括电话号码,邮箱验证,手机号码验证等等...开发时候拿来用非常方便!
一则简单的正则表达式,可实现准确的验证手机号- 码,包含移动,电信,联通所有现有格式,功能很简单,却也很实用,送给大家,就当减少重复的工作量了。
JavaScript正则表达式验证身份证号码是否合法(两种方法)分析.docx
正则表达式语法 一个正则表达式就是由普通字符(例如字符 a 到 z)以及特殊字符(称为元字符)组成的文字模式。该模式描述在查找文字主体时待匹配的一个或多个字符串。正则表达式作为一个模板,将某个字符模式与所...