最新最全的手机号验证正则表达式


Posted in Javascript onFebruary 24, 2022

前言

一般表单页面都需要填写手机号,校验用户输入的手机号码是否正确,就要用到正则表达式,用正则表达式来匹配手机号段,如在运营商号段内,则号码正确。因此,需要知道运营商最新的号段,如下所示:

各大运营商手机号码段(新)

中国电信号段

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(3[0-9]|4[01456879]|5[0-35-9]|6[2567]|7[0-8]|8[0-9]|9[0-35-9])\d{8}$/

这是把所有运营商号段写在一起的,包括虚拟运营商、物联网等,大家也可以根据项目需求来写。

表单字段验证常用正则表达式

1、姓名

/^[\u4e00-\u9fa5]{2,4}$/    //2-4个中文字符正则

2、手机号码

/^(13[0-9]|14[01456879]|15[0-35-9]|16[2567]|17[0-8]|18[0-9]|19[0-35-9])\d{8}$/

3、座机号码

/^(0\d{2,3})-?(\d{7,8})$/

4、电子邮箱

/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/

5、身份证号码

(1)普通校验

/(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/

(2)精准校验

18位

/^[1-9]\d{5}(19|20)\d{2}((0[1-9])|(1[0-2]))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/

15位

/^[1-9]\d{5}\d{2}((0[1-9])|(1[0-2]))(([0-2][1-9])|10|20|30|31)\d{2}[0-9Xx]$/

后6位

/^(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/

6、QQ号码

/^[1-9][0-9]\d{4,9}$/

7、邮政编码

/^[1-9]\d{5}$/

8、注册账号

/^[a-zA-Z][a-zA-Z0-9_]{4,15}$/

总结

到此这篇关于最新最全的手机号验证正则表达式的文章就介绍到这了,更多相关手机号验证正则表达式内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
jquery 实现二级/三级/多级联动菜单的思路及代码
Apr 08 Javascript
深入理解javascript中defer的作用
Dec 11 Javascript
JavaScript获取Url里的参数
Dec 18 Javascript
用js判断是否为360浏览器的实现代码
Jan 15 Javascript
JS获取html元素的标记名实现方法
Oct 08 Javascript
Vue.js表单控件实践
Oct 27 Javascript
Bootstrap导航条的使用和理解3
Dec 14 Javascript
javascript 闭包详解及简单实例应用
Dec 31 Javascript
详解webpack的配置文件entry与output
Aug 21 Javascript
Canvas实现微信红包照片效果
Aug 21 Javascript
微信小程序位置授权处理方法
Jun 13 Javascript
js生成1到100的随机数最简单的实现方法
Feb 07 Javascript
前端实现滑动按钮AJAX与后端交互的示例代码
Feb 24 #Javascript
AudioContext 实现音频可视化(web技术分享)
Feb 24 #Javascript
WebRTC记录音视频流(web技术分享)
Feb 24 #Javascript
Vue3如何理解ref toRef和toRefs的区别
Feb 18 #Vue.js
JavaScript实现酷炫的鼠标拖尾特效
Vue h函数的使用详解
Feb 18 #Vue.js
详解Vue中$props、$attrs和$listeners的使用方法
Feb 18 #Vue.js
You might like
Ubuntu中支持PHP5与PHP7双版本的简单实现
2018/08/19 PHP
Smarty模板变量与调节器实例详解
2019/07/20 PHP
TP5框架实现一次选择多张图片并预览的方法示例
2020/04/04 PHP
javascript cookies 设置、读取、删除实例代码
2010/04/12 Javascript
javascript 函数参数限制说明
2010/11/19 Javascript
Javascript在IE下设置innerHTML时出现未知的运行时错误的解决方法
2011/01/12 Javascript
动态加载外部javascript文件的函数代码分享
2011/07/28 Javascript
使用原生js写的一个简单slider
2014/04/29 Javascript
jQuery队列操作方法实例
2014/06/11 Javascript
JavaScript代码应该放在HTML代码哪个位置比较好?
2014/10/16 Javascript
javascript实现全角与半角字符的转换
2015/01/07 Javascript
jquery判断单选按钮radio是否选中的方法
2015/05/05 Javascript
全面介绍javascript实用技巧及单竖杠
2016/07/18 Javascript
微信小程序 switch组件详解及简单实例
2017/01/10 Javascript
requirejs + vue 项目搭建详解
2017/06/16 Javascript
vue 计时器组件的实现代码
2017/09/14 Javascript
在vue中使用css modules替代scroped的方法
2018/03/10 Javascript
Jquery Datatables的使用详解
2020/01/30 jQuery
Node.js中文件系统fs模块的使用及常用接口
2020/03/06 Javascript
[01:24]DOTA2上海特锦赛OG战队抵达 专车接机入驻总统套房
2016/02/23 DOTA
Python探索之创建二叉树
2017/10/25 Python
火车票抢票python代码公开揭秘!
2018/03/08 Python
python中多层嵌套列表的拆分方法
2018/07/02 Python
django2.2安装错误最全的解决方案(小结)
2019/09/24 Python
Python底层封装实现方法详解
2020/01/22 Python
浅谈ROC曲线的最佳阈值如何选取
2020/02/28 Python
Python中的__init__作用是什么
2020/06/09 Python
Python基于opencv的简单图像轮廓形状识别(全网最简单最少代码)
2021/01/28 Python
京东全球售:直邮香港,澳门,台湾,美国,澳大利亚等地区
2017/09/24 全球购物
清洁工岗位职责
2014/01/29 职场文书
教师批评与自我批评范文
2014/10/15 职场文书
经典导游欢迎词
2015/01/26 职场文书
2015年三八妇女节活动总结
2015/02/06 职场文书
同学聚会致辞集锦
2015/07/28 职场文书
2016入党积极分子党课培训心得体会
2016/01/06 职场文书
Spring Security使用单点登录的权限功能
2022/04/03 Java/Android