您当前的位置:首页 > 互联网教程

正则怎么匹配连续数字

发布时间:2025-05-19 11:32:51    发布人:远客网络

正则怎么匹配连续数字

一、正则怎么匹配连续数字

这次给大家带来正则怎么匹配连续数字,正则匹配连续数字的注意事项有哪些,下面就是实战案例,一起来看一下。

000234#错误:第3位与第4位不连续

111235#错误:第5位和第6位不连续1、匹配三位相同数字

匹配连续数字可以通过零宽断言来匹配,当然也没什么好办法,只能通过列举,如下两行都可以匹配3位连续数字

(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)\1{2}((?<=(0(?=1)|1(?=2)|2(?=3)|3(?=4)|4(?=5)|5(?=6)|6(?=7)|7(?=8)|8(?=9)))\d){2,4}$

^(\d)\1{2}((?<=0)1|(?<=1)2|(?<=2)3|(?<=3)4|(?<=4)5|(?<=5)6|(?<=6)7|(?<=7)8|(?<=8)9){2,4}$

相信看了本文案例你已经掌握了方法,更多精彩请关注Gxl网其它相关文章!

使用正则表达式提取字符串详解(附代码)

二、正则表达式“或“的使用

正则表达式,又称规则表达式。是计算机科学的一个概念。

正则表达式通常被用来检索、替换那些符合某个模式(规则)的文本。许多程序设计语言都支持利用正则表达式进行字符串操作。例如,在Perl中就内建了一个功能强大的正则表达式引擎。正则表达式这个概念最初是由Unix中的工具软件(例如sed和grep)普及开的。

正则表达式通常缩写成“regex”,单数有regexp、regex,复数有regexps、regexes、regexen。

检查字符串是否符合正则表达式中的规则,有一次不匹配,则返回false。如:

String reg="[a-zA-Z]\\d?";//次表达式表示字符串的第一位只能是字母,第二位只能是数字或没有boolean flag=str.matches(reg);//返回结果为true。

所谓切割,即是按一定的规则将字符串分割成多个子字符串,如:

String str="zhangsan,lishi,wangwu"。

String reg=",";//表示以逗号作为切割符。

String[] arr=str.split(reg);//返回结果为{“zhangsan”,"lisi","wangwu}。

即将字符串中符合规则的字符替换成指定字符,如:

String str="sfhjhfh136hjasdf73466247fsjha8437482jfjsfh746376"。

str.replaceAll("\\d{3,}","#");//表示将连续出现三个或三个以上的数字替换成“#”。

参考资料来源:百度百科-正则表达式

三、帮写固定电话靓号正则表达式(一共12位数)

以下是根据您提供的尾数规则编写的正则表达式:

后七位数位相同的六位数和一个别的数字,如“1111112”、“3333335”等。

^[^(1|4)]\d*(\d)\1{5}(.\d)$

后七位数为三连号加四连号,如“3335555”等。

^[^(1|4)]\d*(\d)\1{2}(\d)\1{3}$

后八为数为“12121212”、“53535353”这样的。

^[^(1|4)]\d*(\d)\1{4}$

后四位数为6666、8888、9999,如“XXXXXXXX7777”。

^[^(1|4)]\d*(\d)\1{3}(6|8|9)$

后五位数为相同的四位数和一个别的数字,如“11112”、“66665”等。

^[^(1|4)]\d*(\d)\1{3}(.\d)$

6. AAAA(4连号,0/1/2/3/4/5/7结尾)

后四位数为0000、1111、2222、3333、4444、5555、7777,如“XXXXXXXX5555”。

^[^(1|4)]\d*(\d)\1{3}(0|1|2|3|4|5|7)$

后五位数为相同的两连号加三连号,如“11222”、“77444”等。

^[^(1|4)]\d*(\d)\1{2}(\d)\1{2}$