这篇文章将为大家详细讲解有关如何实现手机号码、电话号码验证的正则表达式,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
前言
一般表单页面都需要填写手机号,校验用户输入的手机号码是否正确,就要用到正则表达式,用正则表达式来匹配手机号段,如在运营商号段内,则号码正确。因此,需要知道运营商最新的号段,如下所示:
各大运营商手机号码段(新)
中国电信号段
133、153、173、177、180、181、189、190、191、193、199
中国联通号段
130、131、132、145、155、156、166、167、171、175、176、185、186、196
中国移动号段
134(0-8)、135、136、137、138、139、1440、147、148、150、151、152、157、158、159、172、178、182、183、184、187、188、195、197、198
中国广电号段
192
其他号段
14号段部分为上网卡专属号段:中国联通145,中国移动147,中国电信149
虚拟运营商:
电信:1700、1701、1702、162
移动:1703、1705、1706、165
联通:1704、1707、1708、1709、171、167
卫星通信:1349、174
物联网:140、141、144、146、148
通过以上号段可以看出,手机号码起始1,第二位是3456789中的任意一个,第三位有的是0-9全段,有的只是部分,如下:
13和18开头的手机号是全段
13开头的手机号是全段:13 [0123456789] 比如130,131,132…139
18开头的手机号是全段:18[0123456789] 比如180,181,182…189
15和19开头的手机号后面除4外都有,无154和194
15 [012356789] 比如150,151,152,153,155…159
19 [012356789] 比如190,191,192,193,195…159
17开头的手机号后面除9外都有
17 [01235678] 比如170,171,172,173…178
14开头的手机号除2,3外都有,无142和143
14[01456879] 比如140,141,144,145…149
16开头的手机号后面只有2567
16[2567] 比如:162,165,166,167
了解了运营商的最新号段,下面就写出手机号验证的最新正则表达式:
/^(13[0-9]|14[01456879]|15[0-35-9]|16[2567]|17[0-8]|18[0-9]|19[0-35-9])\d{8}$/
在javascript中的示例:
<script>
var
reg_user = /^[\u4e00-\u9fa5]{2,4}$/;
//2-4个中文字符正则
var
reg_tel = /^(13[0-9]|14[01456879]|15[0-35-9]|16[2567]|17[0-8]|18[0-9]|19[0-35-9])\d{8}$/;
//11位手机号码正则
function
checkSubmit() {
if
(document.form.user.value ==
""
) {
alert(
"姓名不能为空!"
);
document.form.user.focus();
return
false
;
}
else
if
(!reg_user.test(document.form.user.value)) {
alert(
"姓名只能为2-4中文!"
);
document.form.user.focus();
document.form.user.select();
return
false
;
}
if
(document.form.tel.value ==
""
) {
alert(
"请填写您的手机号码!"
);
document.form.tel.focus();
document.form.tel.select();
return
false
;
}
else
if
(!reg_tel.test(document.form.tel.value)) {
alert(
"请正确填写您的手机号码!"
);
document.form.tel.focus();
document.form.tel.select();
return
false
;
}
}
</script>
因为手机号都是以1开始的,所以也可以这样写:
1 |
|
这是把所有运营商号段写在一起的,包括虚拟运营商、物联网等,大家也可以根据项目需求来写。
表单字段验证常用正则表达式
1、姓名
1 |
|
2、手机号码
1 |
|
3、座机号码
1 |
|
4、电子邮箱
1 |
|
5、身份证号码
(1)普通校验
1 |
|
(2)精准校验
18位
1 |
|
15位
1 |
|
后6位
1 |
|
6、QQ号码
1 |
|
7、邮政编码
1 |
|
8、注册账号
1 |
|
更多推荐
最新最全的手机号验证正则表达式
发布评论