In Notepad ++ abgleichen und löschen


16

Ich habe den folgenden Text in Notepad ++ .

192.168.0.1 37 ms N / A
192.168.0.2 Dead N / S
192.168.0.3 Dead N / S
192.168.0.100 37 ms N / A

Wie mache ich ein Suchen und Ersetzen, das mit "Dead" übereinstimmt und die Zeile mit der folgenden Ausgabe entfernt?

192.168.0.1 37 ms N / A
192.168.0.100 37 ms N / A

Ich habe versucht, den regulären Ausdruck zu ^.*Dead.*$ verwenden, der die Zeilen entfernt, aber die Leerzeichen nicht löscht.


Leider ist es nicht die Zeile mit Dead, die das Problem darstellt, sondern die Endzeile am Ende der vorherigen Zeile vor Dead. Ich bin mir nicht sicher, ob Sie einen regulären Ausdruck verwenden können, um eine Zeile und die Endzeile davor zu finden.
SC Ghost

Antworten:


17

Gehen Sie zur Suche und dann zur Registerkarte Markieren, geben Sie "Dead" ein, markieren Sie "Mark line" und klicken Sie auf "Find all". Es werden Lesezeichen für alle diese Zeilen erstellt.

Im Suchmenü gibt es einen Punkt "Lesezeichenzeilen löschen"


1
Ich mag diese Antwort!
vsync

In der 7.7.1 Version. Nach Drücken von Strg + F finden Sie die 4. Registerkarte Mark. Wählen Sie die Option Lesezeichenzeile, geben Sie die gewünschte Zeichenfolge ein und klicken Sie auf Alle markieren. Jetzt in Dokument F2 kann verwendet werden, um Lesezeichen für vorwärts und Umschalt + F2 für rückwärts zu navigieren. Strg + F2, um die Lesezeichen umzuschalten. Finden Sie jetzt das dritte Suchmenü oben links. Suchen Sie die Option Lesezeichen unten. Verwenden Sie die Remove Bookmarked LinesOption, um alle Zeilen zu entfernen.
Ramaprakasha

16

Sie können zwei Schritte ausführen:

Verwenden Sie Regex, um Übereinstimmungen ^.*Dead.*$mit zu ersetzenmarkedfordel

Dann im erweiterten Modus, um Übereinstimmungen markedfordel\r\ndurch leere zu ersetzen

Bildschirmfoto:

Bildbeschreibung hier eingeben


Gut, dass du hier warst, ich hätte blind geantwortet, dass es nur mit einem Regex möglich ist, bevor ich darüber nachdenke.
MBraedley


0

Versuchen Sie einen Regex-Ersatz in Notepad ++ durch:

(.*)Dead(.*)

Das wird die Zeilen für Sie entfernen.


0

Sie können Ihren ersten Schritt verwenden, um die Zeilen zu löschen, die "Dead" enthalten. Normalerweise verwende ich dann eines der in Notepad ++ normalerweise enthaltenen Plugins, um leere Zeilen zu entfernen. Dazu drücke ich Strg + A, um das gesamte Dokument zu markieren, gehe dann zum TextFX-Menü (für das TextFX-Plugin), gehe zu TextFX-Bearbeitung und wähle dann Leerzeilen löschen (ungefähr in der Mitte des Menüs). Dadurch werden, wie gesagt, alle Leerzeilen im markierten Bereich entfernt.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.