Frage von sumpfbub, 102

Wie ergänze ich mit Notepad++ und Regex um ein Semikolon?

In einer Liste stehen PLZ und Städtename nur mit einem Leerzeichen getrennt. Dieses Leerzeichen hätte ich gerne durch ein Semikolon ersetzt. Allerdings sind in der gleichen Zeile jeweils vor und hinter PLZ und Stadt auch noch ein paar Leerzeichen. Außerdem kommt der Stadtname auch gelegentlich noch davor oder dahinter in einer Zeile vor.

Mein Ansatz wäre, nach fünfstelligen Zahlen, gefolgt von einem Leerzeichen zu suchen und dann nur das Leerzeichen zu ersetzen.

Wenn ich bei Notepad++ mit Regex den Suchbegriff\d\d\d\d\d\s[A-Z] eingebe, werden die PLZ mit Leerzeichen auch gefunden. Aber ich weiß nicht, mit was ich das ersetzen muß.

Wenn ich es mit \d\d\d\d\d\;[A-Z] versuche, bekomme ich ddddd [A-Z] statt der bisherigen PLZ, Semikolon und dem Ersten Großbuchstaben des Städtenamens.

Antwort
von regex9, 80

Allerdings sind in der gleichen Zeile jeweils vor und hinter PLZ und Stadt auch noch ein paar Leerzeichen

Mehrere hintereinander oder wie? Wenn ja, kannst du auch durch die Anzahl der Leerzeichen hintereinander deinen Regex begrenzen.

Zu deinem Lösungsversuch (ersetze den Unterstrich durch ein Leerzeichen):


[0-9]{5}_
Kommentar von sumpfbub ,

Danke für die Antwort; sie zielt aber an der Frage vorbei. Es wird ja richtig gefunden - nur eben nicht richtig ersetzt.

Kommentar von regex9 ,

Oh entschuldige. Für das Replacement kannst du capture groups nutzen. Dafür setzt du einen Ausdruck des Regex in Klammern und kannst später für das Replacement via $[index] wieder darauf zugreifen.

// regex
([0-9]{5})_

// replace
$1;

Keine passende Antwort gefunden?

Fragen Sie die Community

Weitere Fragen mit Antworten