正则表达式匹配连续相同字符

位置:首页>文章>详情   分类: 教程分享 > Java教程   阅读(1859)   2023-03-28 11:29:14

1. ([0-9])\1{5} 或 ([\d])\1{5} 连续相同的6位数字 如:333333

([0-9a-zA-Z])\1{5}   连续相同的6位数字或字母 如:222222 cccccc ZZZZZZ
([\d])\1{2}([a-z])\2{2} 连续相同3位数字后根连续相同的三位小写字母 如:222www
([\d])\1{2}([a-z])\2{2}|([a-z])\3{2}([\d])\4{2} 同上,但是能匹配数字+字母或字母+数字 如:222www 或 www222
这么多的例子自己可以扩展,要注意的就是 \1 \2代表位置,从左到右递增

import java.util.regex.*;

public class demo {
    public static void main (String[] args) {
    Pattern pattern = Pattern.compile("([\\d])\\1{5}");
        Matcher matcher = pattern.matcher("666666");
   System.out.println(matcher.matches()); //true
    }
}

2.判断字符串是否是连续字母或者是连续的数字可以用截取字符串然后比较ascii码的值判断连续的次数

public static void main(String[] args) {
    	 String str = "ab1234567ab";
    	 boolean ll = hasLH(str, 5);
    	 System.out.println(ll);
        
    }
    
	private static boolean hasLH(String str,int count) {
		int pre = 0;
		int len = 1;
		for (int i = 0; i < str.length(); i++) {
			String s = str.substring(i, i + 1);
			char c = s.charAt(0);
			if (i == 0) {
				pre = c;
			}
			if (c - 1 == pre) {
				len++;
				if(len>=count){
					return true;
				}
			}else {
				len = 1;
			}
			pre = c;
		}
		return false;
	}
地址:https://www.leftso.com/article/507.html

相关阅读

正则表达式忽略大小写js中使用正则表达式来校验文件格式例如,匹配以下格式支持:doc,docx,xls,xlsx,ppt,pptx,pdf,jpg,jpeg,png,txt,wmv,mp4js语...
正则表达式验证邮箱也可以不填写内容,就是可选项邮箱验证得正则表达式为@Pattern(regexp = "^$|^([0-9A-Za-z\\-_\\.]+)@([0-9a-z]+\\.[a-z]...
Java正则表达式多行(换行)匹配说明,默认情况下Java正则表达式匹配内容必须是一行得,如果匹配得内容区间存在换行就无法匹配,需要通过一个配置来搞定。Java正则表达式默认匹配内容中含多行示例...
java编程中正则表达式'并且'的写法,详细讲解在Java编程语言中正则表达式并且的写法以及Java语言与其他语言写正则有啥区别。
正则表达式匹配连续相同字符
正则语法参考表:​​​​​​​元字符描述\将下一个字符标记符、或一个向后引用、或一个八进制转义符
问题描述在使用正则表达式匹配空格字符得时候发现总是匹配失败,后面仔细研究发现空格中包含中文得空格,导致\s无法匹配
hibernate validator 正则表达式报错HV000030: No validator could be found for constraint 'javax.validation...
Java正则表达式appendReplacement和appendTail替换HTML标签属性值演示HTML数据&lt;!DOCTYPE html&gtl; &lt;html lang="en...
Java正则表达式基础使用packageorg.xqlee.utils.regular;importjava.util.regex.Matcher;importjava.util.regex.P...