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


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 相关文章推荐
ASP.NET jQuery 实例9  通过控件hyperlink实现返回顶部效果
Feb 03 Javascript
基于jQuery的360图片展示实现代码
Jun 14 Javascript
解决ExtJS在chrome或火狐中正常显示在ie中不显示的浏览器兼容问题
Jan 11 Javascript
使用jquery局部刷新(jquery.load)从数据库取出数据
Jan 22 Javascript
JavaScript实现找出字符串中第一个不重复的字符
Sep 03 Javascript
jquery实现点击弹出可放大居中及关闭的对话框(附demo源码下载)
May 10 Javascript
Javascript设计模式之装饰者模式详解篇
Jan 17 Javascript
layui select动态添加option的实例
Mar 07 Javascript
使用webpack搭建react开发环境的方法
May 15 Javascript
详解vue-cli中模拟数据的两种方法
Jul 03 Javascript
vue中实现上传文件给后台实例详解
Aug 22 Javascript
关于vue 项目中浏览器跨域的配置问题
Nov 10 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
php实现过滤表单提交中html标签的方法
2014/10/17 PHP
PHP中strnatcmp()函数“自然排序算法”进行字符串比较用法分析(对比strcmp函数)
2016/01/07 PHP
PHP文件与目录操作示例
2016/12/24 PHP
javaScript - 如何引入js代码
2021/03/09 Javascript
漂亮的widgets,支持换肤和后期开发新皮肤
2007/04/23 Javascript
jQuery each()小议
2010/03/18 Javascript
BOM与DOM的区别分析
2010/10/26 Javascript
nodejs教程之环境安装及运行
2014/11/21 NodeJs
Javascript 是你的高阶函数(高级应用)
2015/06/15 Javascript
JavaScript用select实现日期控件
2015/07/17 Javascript
深入理解angularjs过滤器
2016/05/25 Javascript
js实现文字列表无缝滚动效果
2017/06/23 Javascript
浅析JavaScript中的平稳退化(graceful degradation)
2017/07/24 Javascript
详解vue-cli项目中的proxyTable跨域问题小结
2018/02/09 Javascript
JavaScript学习笔记之DOM基础操作实例小结
2019/01/09 Javascript
微信小程序获取公众号文章列表及显示文章的示例代码
2020/03/10 Javascript
vue-cli单页面预渲染seo-prerender-spa-plugin操作
2020/08/10 Javascript
Vue如何循环提取对象数组中的值
2020/11/18 Vue.js
[48:45]Ti4 循环赛第二日 NEWBEE vs EG
2014/07/11 DOTA
windows下python之mysqldb模块安装方法
2017/09/07 Python
bluepy 一款python封装的BLE利器简单介绍
2019/06/25 Python
python实现批量nii文件转换为png图像
2019/07/18 Python
基于spring boot 日志(logback)报错的解决方式
2020/02/20 Python
Keras中 ImageDataGenerator函数的参数用法
2020/07/03 Python
英国香水店:The Perfume Shop
2017/03/27 全球购物
阿根廷票务网站:StubHub阿根廷
2018/04/13 全球购物
体验完美剃须:The Art of Shaving
2018/08/06 全球购物
改变生活的男士内衣:SAXX Underwear
2019/08/28 全球购物
美国在线面料商店:Fashion Fabrics Club
2020/01/31 全球购物
Michael Kors澳大利亚官网:世界知名的奢侈饰品和成衣设计师
2020/02/13 全球购物
PHP如何对用户密码进行加密
2014/07/31 面试题
《两只鸟蛋》教学反思
2014/02/10 职场文书
施工工地安全标语
2014/06/07 职场文书
查摆问题自我剖析材料
2014/08/18 职场文书
2016公司年会主持词
2015/07/01 职场文书
Python中的变量与常量
2021/11/11 Python