正则表达式判断号码靓号类型
靓号检测:主要可以检测连号(正连 12345、倒连65432)、AABB号、手机号码、日期号(生日号、年度号)、ABBCABB号,3位以上重复号。
更多类型号码检测可以根据以下表达式改造。
1.匹配6位顺增 (?:0(?=1)|1(?=2)|2(?=3)|3(?=4)|4(?=5)|5(?=6)|6(?=7)|7(?=8)|8(?=9)){5}\d
2.匹配6位顺降 (?:9(?=8)|8(?=7)|7(?=6)|6(?=5)|5(?=4)|4(?=3)|3(?=2)|2(?=1)|1(?=0)){5}\d
3.匹配6位顺增或顺降 (?:(?:0(?=1)|1(?=2)|2(?=3)|3(?=4)|4(?=5)|5(?=6)|6(?=7)|7(?=8)|8(?=9)){5}|(?:9(?=8)|8(?=7)|7(?=6)|6(?=5)|5(?=4)|4(?=3)|3(?=2)|2(?=1)|1(?=0)){5})\d
4.匹配4-9位连续的数字 (?:(?:0(?=1)|1(?=2)|2(?=3)|3(?=4)|4(?=5)|5(?=6)|6(?=7)|7(?=8)|8(?=9)){3,}|(?:9(?=8)|8(?=7)|7(?=6)|6(?=5)|5(?=4)|4(?=3)|3(?=2)|2(?=1)|1(?=0)){3,})\d
5.匹配3位以上的重复数字 ([\d])\1{2,}
6.匹配日期类型的数字 (19|20)[\d]{2}(1[0-2]|0?[1-9])(31|2[0-9]|1[0-9]|0?[0-9])
7.手机号码类 (13[0-9]|15[0-9]|18[0-9])([\d]{2,4}){2}
8.匹配33111类型的 ([\d])\1{1,}([\d])\2{2,}
9.匹配5331533类型的 (([\d]){1,}([\d]){1,})\1{1,}
10,匹配22334,123355类型的 ([\d])\1{1,}([\d])\2{1,}
11.末位匹配$
//aabb,允许aaaa
(\d)\1(\d)\2$
//abab,允许aaaa
(\d)(\d)\1\2$
//aaab,允许aaaa
(\d)\1\1\d$
//同时允许
(?:(\d)\1(\d)\2|(\d)(\d)\3\4|(\d)\5\5\d)$
//以上如果不允许aaaa,第二个(\d)改为((?!\1)\d)
//如aabb,不允许aaaa
(\d)\1((?!\1)\d)\2$
var reg = new RegExp("(?:0(?=1)|1(?=2)|2(?=3)|3(?=4)|4(?=5)|5(?=6)|6(?=7)|7(?=8)|8(?=9)){5}\\d", "g");if (phone.match(reg) != null) {code +=',ABCDEF';}var reg = new RegExp("(?:0(?=1)|1(?=2)|2(?=3)|3(?=4)|4(?=5)|5(?=6)|6(?=7)|7(?=8)|8(?=9)){2}\\d", "g");if (phone.match(reg) != null) {code += ',ABC';}var reg = new RegExp("^(?:0(?=1)|1(?=2)|2(?=3)|3(?=4)|4(?=5)|5(?=6)|6(?=7)|7(?=8)|8(?=9)){2}\\d[\\d][\\d](?:0(?=1)|1(?=2)|2(?=3)|3(?=4)|4(?=5)|5(?=6)|6(?=7)|7(?=8)|8(?=9)){2}\\d", "g");if (phone.match(reg) != null) {var result = phone.match(reg).toString();if (result.substring(0, 3) == result.substring(5,8)) {code += ',ABC**ABC';}}var reg = new RegExp("[\\d](?:0(?=1)|1(?=2)|2(?=3)|3(?=4)|4(?=5)|5(?=6)|6(?=7)|7(?=8)|8(?=9)){2}\\d[\\d](?:0(?=1)|1(?=2)|2(?=3)|3(?=4)|4(?=5)|5(?=6)|6(?=7)|7(?=8)|8(?=9)){2}\\d$", "g");if (phone.match(reg) != null) {var result = phone.match(reg).toString();if (result.substring(1, 4) == result.substring(5, 8)) {code += ',*ABC*ABC';}}var reg = new RegExp("(\\d)((?!\\1)\\d)\\2[\\d]", "g");if (phone.match(reg) != null) {var result = phone.match(reg).toString();if (result.substring(0, 1) == result.substring(3, 4)) {code += ',ABBA';}}var reg = new RegExp("(?:0(?=1)|1(?=2)|2(?=3)|3(?=4)|4(?=5)|5(?=6)|6(?=7)|7(?=8)|8(?=9)){2}\\d{4}", "g");if (phone.match(reg) != null) {var result = phone.match(reg).toString();if (result.substring(0, 3) == result.substring(3, 6)) {code += ',ABCABC';}}var reg = new RegExp("^(?:0(?=1)|1(?=2)|2(?=3)|3(?=4)|4(?=5)|5(?=6)|6(?=7)|7(?=8)|8(?=9)){2}\\d{4}", "g");if (phone.match(reg) != null) {var result = phone.match(reg).toString();if (result.substring(0, 3) == result.substring(3, 6)) {code += ',ABCABC*';}}var reg = new RegExp("(?:0(?=1)|1(?=2)|2(?=3)|3(?=4)|4(?=5)|5(?=6)|6(?=7)|7(?=8)|8(?=9)){2}\\d{3}", "g");if (phone.match(reg) != null) {var result = phone.match(reg).toString();if (result.substring(0, 2) == result.substring(3, 5)) {code += ',ABCAB';}}var reg = new RegExp("(?:0(?=1)|1(?=2)|2(?=3)|3(?=4)|4(?=5)|5(?=6)|6(?=7)|7(?=8)|8(?=9)){3}\\d", "g");if (phone.match(reg) != null) {code += ',ABCD';}var reg = new RegExp("(?:0(?=1)|1(?=2)|2(?=3)|3(?=4)|4(?=5)|5(?=6)|6(?=7)|7(?=8)|8(?=9)){3}\\d{5}", "g");if (phone.match(reg) != null) {var result = phone.match(reg).toString();if (result.substring(0, 4) == result.substring(4, 8)) {code += ',ABCDABCD';}}var reg = new RegExp("(\\d)((?!\\1)\\d)\\1\\2\\1\\2", "g");if (phone.match(reg) != null) {code += ',ABABAB';}var reg = new RegExp("^(\\d)((?!\\1)\\d)\\1\\2\\1\\2", "g");if (phone.match(reg) != null) {code += ',ABABAB*';}var reg = new RegExp("(\\d)((?!\\1)\\d)\\1\\2", "g");if (phone.match(reg) != null) {code += ',ABAB';}var reg = new RegExp("^(\\d)((?!\\1)\\d)[\\d][\\d](\\d)((?!\\1)\\d)[\\d][\\d]", "g");if (phone.match(reg) != null) {var result = phone.match(reg).toString();if (result.substring(0, 2) == result.substring(4, 6)) {code += ',AB**AB**';}}var reg = new RegExp("[\\d][\\d](\\d)((?!\\1)\\d)[\\d][\\d](\\d)((?!\\1)\\d)$", "g");if (phone.match(reg) != null) {var result = phone.match(reg).toString();if (result.substring(2, 4) == result.substring(6, 8)) {code += ',**AB**AB';}}var reg = new RegExp('([\\d])\\1{4,}', "g");if (phone.match(reg) != null) {code +=',AAAAA';}var reg = new RegExp('(.)\\1{3}', "g");if (phone.match(reg) != null) {code +=',AAAA';}var reg = new RegExp('(\\d)\\1\\1((?!\\1)\\d)', "g");if (phone.match(reg) != null) {code += ',AAAB';}var reg = new RegExp('(.)\\1{2}', "g");if (phone.match(reg) != null) {code +=',AAA';}var reg = new RegExp('(.)\\1{1}', "g");if (phone.match(reg) != null) {code +=',AA';}//AABBBvar reg = new RegExp("(\\d)\1((?!\\1)\\d)\\2\\2", "g");if (phone.match(reg) != null) {code +=',AABBB';}//AABBvar reg = new RegExp("(\\d)\\1((?!\\1)\\d)\\2", "g");if (phone.match(reg) != null) {code +=',AABB';}//AABCCvar reg = new RegExp("(\\d)\\1((?!\\1)\\d)((?!\\1)\\d)\\3", "g");if (phone.match(reg) != null) {var result = phone.match(reg).toString();if (result.substring(2, 3) != result.substring(0, 1) && result.substring(2, 3) != result.substring(3, 4)) {code += ',AABCC';}}var reg = new RegExp("(\\d)\\1((?!\\1)\\d)\\2((?!\\1)\\d)\\3", "g");if (phone.match(reg) != null) {var result = phone.match(reg).toString();if (result.substring(2, 4) != result.substring(0, 2) && result.substring(2, 4) != result.substring(4, 6)) {code += ',AABBCC';}}var reg = new RegExp("^(\\d)\\1((?!\\1)\\d)\\2((?!\\1)\\d)\\3", "g");if (phone.match(reg) != null) {var result = phone.match(reg).toString();if (result.substring(2, 4) != result.substring(0, 2) && result.substring(2, 4) != result.substring(4, 6)) {code += ',AABBCC*';}}
转载于:https://www.cnblogs.com/diulela/archive/2012/09/05/2672372.html
正则表达式判断号码靓号类型相关推荐
- php 正则 靓号,正则表达式号码靓号类型判断代码
很多网站需要将好的会员号留着,或用于日后的盈利.实现方法不是本文讨论范围,本文仅列出博主用于检测靓号类型的一些正则,下面跟随爱站技术小编一起来看下正则表达式号码靓号类型判断代码. 靓号检测:主要可以检 ...
- oracle匹配靓号的正则表达式_正则表达式号码靓号类型判断代码
正则表达式号码靓号类型判断代码 更新时间:2010年05月09日 13:56:59 作者: 很多网站需要将好的会员号留着,或用于日后的盈利.实现方法不是本文讨论范围,本文仅列出博主用于检测靓号类型 ...
- oracle匹配靓号的正则表达式_手机靓号计算规则的正则表达式
手机靓号规则很多如连号.尾号重复等等, 但很少有完整说明的材料.因工作需要,我也做过一些学习,查了不少资料. 现在整理下规则,供大家学习使用. "*AAA*" 正则表达式:&quo ...
- javascript学习之利用DOM和正则表达式判断主流浏览器的类型
火狐浏览器测试结果: 谷歌浏览器测试结果 IE8测试结果: IE11测试结果:
- PHP 手机靓号规则、正则匹配、号码查询
最近有个项目关于手机靓号及用户搜索想要关键数字的手机号 1. 手机靓号规则匹配 - PHP正则匹配 2. 关键字位搜索 - MYSQL LIKE 使用 靓号规则如下 AAAB.AAA.ABC.ABCD ...
- Django 04 :靓号管理【 靓号的增删改 + 搜索 + 分页 + 时间插件 + ModelForm与BootStrap】
文章目录 1.用户管理:编辑与删除 1.1.编辑用户 (1)前端基础效果 (2)提交 (3)补充知识 1.2.删除用户 2.靓号管理 2.1.数据库的表结构 2.2.靓号列表 2.3.靓号:新建.编辑 ...
- oracle匹配靓号的正则表达式_正则表达式(靓号过滤)
一般公司在开发一类对的号码时,会预留一些号码给以后升级的会员使用,比如旺旺靓号,QQ号等,采用正则表达式实现较好,通过规则引擎的后台页面做成实时可配置的也是不错的选择. 一. 一般会有如下的正则需求 ...
- [转载]JAVA号码工具类:实现手机固话号码判断与区号截取
工具类说明 该工具类主要是用于判断号码的类型,如果是手机类型,则返回号码前7位,便于后面继续判断号码归属地:如果是固话类型,则截取固话的区号,同样也是为了后面判断号码的归属地. 在获取到这些信息之后, ...
- 靓号正则表达式(前后向查找等) 和 apache正则包使用
开源应用 正则表达式ApacheQQJDK 一般公司在开发一类对的号码时,会预留一些号码给以后升级的会员使用,比如旺旺靓号,QQ号等,采用正则表达式实现较好,通过规则引擎的后台页面做成实时可配 ...
最新文章
- LoadRunner之二“集合点”
- ATSS : 目标检测的自适应正负anchor选择,很扎实的trick | CVPR 2020
- 百度大脑发布企业服务解决方案,将 AI 技术落实到细分领域
- 如何遍历字符串中的单词?
- name 'false' is not defined
- 关于两台路由器之间的OSPF邻居关系问题!
- Spring Data Solr教程:分页
- HTML中直接写js 函数
- mesh渲染到ui_在Unity中使用UGUI修改Mesh绘制几何图形
- 从 Poisson 分布到服务器的访问
- Quartz使用总结(转)
- (2)python_enumerate
- Redis之Pipeline使用注意事项
- apache 禁用rc4_如何在Apache中禁用过时的TLS和SSL版本
- java编写一个汽车类,有属性:品牌、型号、排量、速度,有方法:启动、加速、转弯、刹车、息火...
- c语言结构体的流程图怎么画,结构流程图不会画?手把手教你学会!
- 桌面计算机快捷打不开,桌面快捷方式打不开,小编教你桌面快捷方式打不开怎么解决...
- 问界M7开启交付 邹市明成精英车主
- su必备插件_建模必备逆天Sketchup插件I
- React的受控组件和非受控组件
热门文章
- ASP.NET AJAX示例程序:实现IDragSource和IDropTarget接口将商品拖放至购物车中
- php用户鉴权,app开发之鉴权 PHP版
- Ubuntu16.04中WPS不能输入中文
- Linux + Nginx + Uwsgi + Django 搭建单服务器
- Django用来作为爬虫框架浅谈
- 关于Android 隐藏 API 和内部 API的查看与使用
- ansible代码发布系统
- http2-stream-optima-prioritation
- PIG 中COGROUP中的空值验证
- [转]图解APP的商业模式