Reguläre Ausdrücke: String-Ersetzung

EEx

Mitglied
Hallo Leute,

ich verzweifle gerade daran, die replaceAll-Methode auf kompliziertere reguläre Ausdrücke anzuwenden.

Ich habe eine Code-Zeile gefunden, die mein Problem löst:

Code:
text = text.replaceAll("(?=[]\\[+&|!(){}^\"~*?:\\\\-])", "\\\\");

Das Problem war: Alle Sonderzeichen im String text sollen escaped werden. Hintergrund: Das Programm ersetzt mathematische Formelausdrücke wie z.B.

Code:
{2+(4*10)}

durch deren Wert

Code:
42

________________________

Das Problem ist jetzt folgendes: Ich hab ewig gesucht nach der Funktionsweise von regulären Ausdrücken, aber ich verstehe einfach nicht, was der obige Befehl genau macht. Meine Vermutung ist, dass auch dort drin wild herumeascaped wird...

Kann es mir jemand erklären?
 

Zurück
Oben