Patrón p = Pattern.compile("((.)\\2*)");¿Qué significan los corchetes?
Llego tarde, déjame explicarte en detalle
Antes que nada hay que entender el concepto de "Grupo" en expresiones regulares
Para En pocas palabras, "La coincidencia en ()" es un grupo con números de serie que van del 1 al n. Se puede hacer referencia a él en expresiones. Aunque puede haber grupos ilimitados, las referencias solo pueden ser del 1 al 9 *** 9.
Números de serie También es normal que cada vez que se encuentre un grupo "(", el número de serie +1 significa que \\2 representa la referencia de este grupo.
. representa cualquier carácter (excepto "salto de línea")* Representa 0-infinito, por lo que el significado de esta expresión es
Haga coincidir uno o varios caracteres consecutivos para darle un ejemplo
Patrón p = Pattern.compile("( (.)\\2*)");
String s="122aa,,,, s09";
Matcher m=p.matcher (s);
while(m.find()){
System.out.println("{"+m.group()+"}"); p>
}