Veröffentlicht 3. Februar 200916 j Moin Moin, möchte einen kompletten String escapen, also ich möchte die replaceALL funktion benutzen und zB kekse+frankund durch klausund (also nur das kekse+frank) ersetzen das problem ist, java sieht das + als steuerzeichen an... er können sich alelrdings auch mehrere steuerzeichen im string befinden gibt es möglichkeiten den ganzen string zu escapen ?
3. Februar 200916 j Nicht "Java selbst" sieht das + als Steuerzeichen an, sondern die Implentierung von regulären Ausdrücken in Java tut dies, welche eben in ReplaceAll, split und noch so einige andere Methoden benutzt werden. Schaue dazu am besten mal in die Java Doku: Pattern. Ich hab allerdings noch nicht ganz genau verstanden was du wirklich möchtest. Vielleicht kannst du ein etwas anschaulicheres/ausführlicheres Beispiel wählen.
4. Februar 200916 j Ok Also nochmal: ich benutze die replaceALL funktion einfacher String: ich habe einen String z.B. 7+7+8+9 nun möchte ich 7+7 ersetzen oder ausschneiden oder wie auch immer im beispiel nehmen wir mal replaceALL also möchte ich mit hilfe von replaceALL den String 7+7 ersetzen durch z.B.111 jetzt hätte ich nach dem replace, wenn es funktionieren würde 111+8+9 allerdings muss das + escaped werden das meinte ich mit kompletten string escapen, so, dass alle + schon escaped sind
4. Februar 200916 j so KWASI String sDaten="7+7+5+5"; String sZuErsetzen="7+7"; sDaten = sDaten.replaceALL(sZuErsetzen, "111"); so beide Variablen können Variieren, so dass ich nicht von vorneherein sZuErsetzen = "7\\+7" sagen könnte... hoffe nun ist es verständlicher
4. Februar 200916 j Da es sich hier, wie bereits gesagt, um reguläre Ausdrücke handelt und, wie du richtig erkannt hast, du entsprechende Sonderzeichen escapen musst, fällt mir persönlich jetzt kein besserer Weg ein als: private String replaceThis(String source, String expr, String rplmnt){ expr.replaceAll("\\+", "\\+"); source.replaceAll(expr, rplmnt); return source; } Ich habs jetzt nicht getestet aber ich denke du verstehst was ich meine. Zugegeben es ist etwas unglücklich aber so spontan wüsste ich keine bessere Lösung. Hast du mal geschaut was Google dazu sagt?
Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.