Ersetzen Sie alle Instanzen in einer Zeichenfolge durch eindeutige Ersetzungen

Ich versuche, alle Instanzen einer bestimmten Zeichenfolge durch eine eindeutige Ersetzung zu ersetzen.

Was ich gerne hätte:

Wenn ich diesen String habe:

String testScript = "while(true) { } while   (10 < 7) { } while((10 < 7)) { }";

Ich möchte diese Ausgabe:

while(arg0 < 5000 && true) { } while(arg1 < 5000 && 10 < 7) { } while(arg2 < 5000 && (10 < 7)) { }

Was ich habe:

Die Zeichenfolge wurde jedoch an übergebenreplaceAll wird nicht mehr abgefragt (klar, jetzt denke ich darüber nach).

while(arg0 < 5000 && true) { } while(arg0 < 5000 && 10 < 7) { } while(arg0 < 5000 && (10 < 7)){ }

Alle Antworten oder Kommentare werden wie immer sehr geschätzt.

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);
}

Antworten auf die Frage(1)

Ihre Antwort auf die Frage