我正在尝试匹配一系列字符在任何位置包含三个或更多相同字符的情况,如下面的代码所示:
class TRY {
public static void main(String[] args) {
String a = "aaaam";
String b = "aacccccccc";
String c = "aaffffkb";
if (b.matches("([a-zA-Z0-9])\\1+"))
System.out.println("Matches!"); // Display the string.
}
}
网上有很多其他问题建议使用像([a-zA-Z0-9])\\1+
这样的正则表达式; "([a-z\\d])\\1{3,}"
;或"([a-z\\d])\\1\\1"
。 [a-zA-Z0-9]
应匹配任何字符,\\1
应引用匹配的字符。然而,这些都不符合我的任何字符串,我不明白为什么。