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


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 相关文章推荐
ArrayList类(增强版)
Apr 04 Javascript
Javascript typeof 用法
Dec 28 Javascript
JavaScript传递变量: 值传递?引用传递?
Feb 22 Javascript
JavaScript高级程序设计阅读笔记(五) ECMAScript中的运算符(一)
Feb 27 Javascript
javascript 文件的同步加载与异步加载实现原理
Dec 13 Javascript
JS下拉缓冲菜单示例代码
Aug 30 Javascript
Jquery EasyUI的添加,修改,删除,查询等基本操作介绍
Oct 11 Javascript
jquery的clone方法应用于textarea和select的bug修复
Jun 26 Javascript
js html css实现复选框全选与反选
Oct 09 Javascript
利用JS制作万年历的方法
Aug 16 Javascript
微信小程序图表插件wx-charts用法实例详解
May 20 Javascript
如何使用 vue-cli 创建模板项目
Nov 19 Vue.js
前端实现滑动按钮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
php绘制一个矩形的方法
2015/01/24 PHP
Js获取事件对象代码
2010/08/05 Javascript
基于JQuery的列表拖动排序实现代码
2013/10/01 Javascript
jQuery动态显示和隐藏datagrid中的某一列的方法
2013/12/11 Javascript
IE8中使用javascript动态加载CSS的解决方法
2014/06/17 Javascript
javascript新闻跑马灯实例代码
2020/07/29 Javascript
jquery操作select元素和option的实例代码
2016/02/03 Javascript
JavaScript必知必会(九)function 说起 闭包问题
2016/06/08 Javascript
js简单实现调整网页字体大小的方法
2016/07/23 Javascript
jQuery树形控件zTree使用小结
2016/08/02 Javascript
完美的js div拖拽实例代码
2016/09/24 Javascript
JavaScript实现图片懒加载(Lazyload)
2016/11/28 Javascript
JavaScript中EventLoop介绍
2018/01/22 Javascript
浅谈webpack4.x 入门(一篇足矣)
2018/09/05 Javascript
Flutter实现仿微信底部菜单栏功能
2019/09/18 Javascript
[01:04]DOTA2上海特锦赛现场采访 FreeAgain遭众解说围攻
2016/03/25 DOTA
Python3实现生成随机密码的方法
2014/08/23 Python
详细解析Python当中的数据类型和变量
2015/04/25 Python
Python中将字典转换为列表的方法
2016/09/21 Python
Windows安装Python、pip、easy_install的方法
2017/03/05 Python
特征脸(Eigenface)理论基础之PCA主成分分析法
2018/03/13 Python
Python实现字典排序、按照list中字典的某个key排序的方法示例
2018/12/18 Python
Python XML转Json之XML2Dict的使用方法
2019/01/15 Python
Python 装饰器原理、定义与用法详解
2019/12/07 Python
python tkinter之顶层菜单、弹出菜单实例
2020/03/04 Python
ansible-playbook实现自动部署KVM及安装python3的详细教程
2020/05/11 Python
基于django micro搭建网站实现加水印功能
2020/05/22 Python
英国最大的高品质珠宝和手表专家:Goldsmiths
2017/03/11 全球购物
远东集团网络工程师面试题
2014/10/20 面试题
机电一体化专业推荐信
2013/12/03 职场文书
植树造林的宣传标语
2014/06/23 职场文书
关键在于落实心得体会
2014/09/03 职场文书
个人租房协议书样本
2014/10/01 职场文书
公司委托书格式范文
2014/10/09 职场文书
Golang gRPC HTTP协议转换示例
2022/06/16 Golang
Spring boot实现上传文件到本地服务器
2022/08/14 Java/Android