//7连以上
private static Pattern pattern1 = Pattern.compile("([\\d])\\1{6,}");
//aaabbbccc
private static Pattern pattern2 = Pattern.compile("([\\d])\\1{2}([\\d])\\2{2}([\\d])\\3{2}");
//连续6位以上递增
private static Pattern pattern3 = Pattern.compile("(?:0(?=1)|1(?=2)|2(?=3)|3(?=4)|4(?=5)|5(?=6)|6(?=7)|7(?=8)|8(?=9)){5,}\\d");
//连续6位以上递减
private static Pattern pattern4 = Pattern.compile("(?:9(?=8)|8(?=7)|7(?=6)|6(?=5)|5(?=4)|4(?=3)|3(?=2)|2(?=1)|1(?=0)){5,}\\d");
//abc abc abc
private static Pattern pattern5 = Pattern.compile("(\\d{3})\\1{2}");
//ab ab ab ab
private static Pattern pattern6 = Pattern.compile("(\\d{2})\\1{3}");
//aa bb cc dd
private static Pattern pattern7 = Pattern.compile("([\\d])\\1([\\d])\\2([\\d])\\3([\\d])\\4");
(\d{2,4})\1{3,}
解释:
2~4位数字,重复4次以上,如下会被命中:
abababab, abcabcabcabc