Reemplace todas las instancias en cadena con un reemplazo único
Estoy tratando de reemplazar todas las instancias de una Cadena particular con un reemplazo único.
Lo que me gustaría:
Si tengo esta cadena:
String testScript = "while(true) { } while (10 < 7) { } while((10 < 7)) { }";
Me gustaría esta salida:
while(arg0 < 5000 && true) { } while(arg1 < 5000 && 10 < 7) { } while(arg2 < 5000 && (10 < 7)) { }
Lo que tengo:
Sin embargo, la cadena pasó areplaceAll
no vuelve a ser consultado (obvio ahora lo pienso).
while(arg0 < 5000 && true) { } while(arg0 < 5000 && 10 < 7) { } while(arg0 < 5000 && (10 < 7)){ }
Cualquier respuesta o comentario, como siempre, es muy apreciado.
SSCCE:
public static void main(String[] args) {
int counter = 0;
String testScript = "while(true) { } while (10 < 7) { } while((10 < 7)) { }";
String out = testScript.replaceAll("while\\s*\\(", "while(arg" + (counter++) + " < 5000 && ");
System.out.println(out);
}