omportamento estranho em expressões regular
Havia uma pergunta sobre regex e, tentando responder, encontrei outras coisas estranha
String x = "X";
System.out.println(x.replaceAll("X*", "Y"));
Isso imprime YY. porque?
String x = "X";
System.out.println(x.replaceAll("X*?", "Y"));
E isso imprime YXY
Por que o regex relutante não corresponde ao caractere 'X'? Há sim"noting"X"nothing"
mas por que primeiro não corresponde a três símbolos e corresponde a dois e depois a um em vez de três? e o segundo regex corresponde apenas a"nothing"
s e nãoX
?