Löschen von Zeilen mit RegEx

Löschen von Zeilen mit RegEx

Ich habe die unten beschriebene Situation. Ich muss die Sätze/Zeilen behalten, die mit {digits} beginnen, und den Rest der Zeilen löschen. Ich habe das versucht, aber es hat nicht funktioniert. Suchen: [^({\d{1,2}}.+?\r)] Ersetzen:$1 Die Listennummern sind in geschweifte Klammern eingeschlossen

  1. Der schnelle braune Fuchs springt über den faulen Hund
  2. Dies ist eine weitere Zeile.
  3. Diese Linie ist mit Punkt 2 verbunden.

Einige Sätze in diesem Absatz.

  1. Dies ist Punkt Nummer eins
  2. Dies ist eine weitere Zeile
  3. Dies ist eine weitere Zeile.

Ich möchte alle Sätze und Absätze außer den nummerierten Listen löschen.

Ich habe Text in Notepad++ eingefügt

Antwort1

  • Ctrl+H
  • Finde was:^\h+\d+.+\R(*SKIP)(*F)|.+\R
  • Ersetzen mit:LEAVE EMPTY
  • ÜBERPRÜFEN Umwickeln
  • ÜBERPRÜFEN Regulären Ausdruck
  • DEAKTIVIEREN . matches newline
  • Replace all

Erläuterung:

^               # beginning of line
    \h+             # 1 or more horizontal spaces
    \d+             # 1 or more digits
    .+              # 1 or more any character
    \R              # any kind of linebreak (i.e. \r, \n, \r\n)
    (*SKIP)(*F)     # skip previous match and declare a fail
  |               # OR
    .+              # 1 or more any character
    \R              # any kind of linebreak (i.e. \r, \n, \r\n)

Ersatz:

Screenshot (vorher):

Bildbeschreibung hier eingeben

Screenshot (nachher):

Bildbeschreibung hier eingeben

verwandte Informationen