it-swarm.com.de

Finden Sie Zeilen, die nicht mit "in Notepad ++" beginnen

Ich versuche, eine CSV-Datei zu überprüfen, bei der wir Probleme mit Zeilenumbrüchen hatten.

Ich möchte alle Zeilen finden, die nicht mit einem " beginnen.

Ich versuche es mit /!^"/gim, aber die !-Negation funktioniert nicht.

Wie kann ich /^"/gim richtig negieren?

28
DanFromGermany

In Regex bedeutet der ! keine Negation; Stattdessen möchten Sie einen Zeichensatz mit [^"] negieren. Die Klammern [] bezeichnen einen Zeichensatz und wenn er mit einem ^ beginnt, bedeutet dies "nicht dieser Zeichensatz".

Wenn Sie also Dinge zuordnen möchten, die keine Anführungszeichen sind, würden Sie [^"] verwenden. Wenn Sie keine Anführungszeichen verwenden möchten, können Sie [^"'] usw. verwenden.

Mit Notepad ++ sollten Sie mit den folgenden Elementen suchen können, um Zeilen zu finden, die nicht mit dem Zeichen " beginnen:

^[^"]

Wenn Sie die vollständige Zeile markieren möchten, verwenden Sie:

^[^"].*
46
newfurniturey

In Notepad ++ können Sie das sehr nützliche negative Lookahead verwenden.

In Ihrem Fall können Sie Folgendes versuchen:

^(?!")

Wenn Sie ganze Zeilen anpassen möchten, fügen Sie .+ oder .{1,7} oder irgendetwas hinzu, z.

^(?!").*

stimmt auch mit leeren Zeilen überein.

Erklärungsteil

^ Zeilenanfang

(?!regexp) negativer Lookahead-Part: Dies bedeutet, dass das Ergebnis nicht angezeigt wird, wenn regexp mit übereinstimmt

19
Boop

Schritt 1 - Passen Sie die Linien an. Find dialog> Mark Tab können Sie Zeilen, die übereinstimmen, mit Lesezeichen versehen.

Schritt 2 - Entfernen von markierten Zeilen OR Entfernen von nicht markierten Zeilen. Suchen> Lesezeichen> Nicht markierte Zeilen entfernen oder Markierte Zeilen entfernen

1
Gaurav