Ich habe folgenden Beispieltext in Notepad++
:
params=id=ABC-12345|layout=1|external=true|project=12345_ABC|revision=1093180
params=id=ABC-12345|layout=1|external=true|revision=213121
params=id=ABC-12345|layout=1|external=true|project=12345_ABC|revision=3242342
project=12345_ABC|revision=3242342
Unter Berücksichtigung aller Zeilen, einschließlichbeideDer Parameter id=ABC-12345
und der Parameter project=12345_ABC
verursachen Probleme in einer Anwendung, die diese Daten anfordert, ich möchte sie project=12345_ABC
jedoch nur aus den Zeilen entfernen, die sie auch enthalten id=ABC-12345
.
Bisher habe ich den folgenden regulären Ausdruck verwendet, um die Zeilen mit Parametern und Werten zu erhalten:
id=ABC-12345.*project=12345_ABC
und ich habe manuell entfernt
project=12345_ABC
aus diesen Zeilen (Im obigen Beispiel müssen zwei Zeilen bearbeitet werden).
Gibt es einen effizienteren Weg, zum Beispiel mit der Ersetzungsfunktion von Notepad++
? Was müsste ich da einfügen?
Antwort1
So geht's mit Notepad++ und dem Dialogfeld „Ersetzen“:
Suchen nach: id=ABC-12345(.*)project=12345_ABC
Ersetzen durch:id=ABC-12345\1
Wobei \1
steht für den Text, der mit der ersten (und einzigen) Gruppe in Klammern übereinstimmt. Reguläre Ausdrücke müssen aktiviert sein, jedoch ohne „stimmt mit Zeilenumbruch überein“.
Auf Ihre Daten angewendet: