0

I'm trying to match cases where a sequence of characters contains three or more identical characters in any position, as shown in the following code:

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.
    }
}

There are many other questions online that suggest using a regular expression like ([a-zA-Z0-9])\\1+ ; "([a-z\\d])\\1{3,}" ; or "([a-z\\d])\\1\\1". The [a-zA-Z0-9] should match any character, and the \\1 should reference the matched character. However none of these match any of my strings, and I don't understand why.

Youcef LAIDANI
  • 55,661
  • 15
  • 90
  • 140
Alessandro
  • 4,000
  • 12
  • 63
  • 131

0 Answers0