Wie kann ich mit regex ein Zeichen ersetzen?

2 Antworten

In der Sprache Perl würde der Befehl wie folgt lauten:

s/\./ /g;

Das ersetzt alle Punkte im String $_ durch Leerzeichen.


Kasupke 
Beitragsersteller
 04.11.2022, 07:12

Vielen Dank, aber das hilft mir leider nicht weiter. Wenn ich das bei regex101.com prüfe, erhalte ich die Meldung Pattern Error.
Leider bin ich mit regex nicht vertraut.

0
ultrarunner  04.11.2022, 12:59
@Kasupke

Ja, weil das Obige nicht nur ein Pattern ist, sondern eine ganze Perl-Anweisung, die auch gleich die Ersetzung jedes Auftretens des Patterns durch ein Leerzeichen erledigt.

Das Pattern allein wäre:

\.

Wenn du dieses auf regex101.com eingibst und dort auch die Option "g" aktivierst, dann tut das genau das von dir Gewünschte.

0

Ich vermute mal, die Programmiersprache ist Java.

Am einfachsten mit string.replaceAll

Ansonsten könntest du eine while-Schleife verwenden mit der Bedingung, dass die RegEx beim aktuellen string einen Treffer verzeichnet. Lohnt sich aber nur, wenn es unbedingt string.replace statt string.replaceAll sein muss.