Was wäre der Regex, um einen möglichen Speicherplatz am Ende von Dateien mit Notepad ++ zu finden?


4

Ich habe Hunderte von Dateien, in denen nachgesehen werden kann, ob es keine zusätzliche Zeile mit einem Leerzeichen gibt, die dazu führt, dass meine PHP-Anwendung Hunderte von Warnungen in die Protokolle wirft.

Ich kann nicht finden, dass die Regex einem Leerzeichen (oder Tabulator) am Ende einer Datei entspricht.

Antworten:


6

Bitte beachten Sie, dass dies nur in Notepad ++ 6.0 (oder höher) zu funktionieren scheint.
Version 6.0 enthalten Unterstützung für PCRE , was für diese Funktion erforderlich ist.

Suchen nach \z (Das ist ein Leerzeichen, gefolgt von einem Backslash, gefolgt von dem Buchstaben z ). Das sollte reichen :)

\z markiert das Ende der Datei .

enter image description here

Wenn Sie Leerzeichen am Ende der Datei finden möchten, verwenden Sie \s+\z. \s meint jeder Whitespace-Charakter :

enter image description here


Ich habe Ihre Lösung ausprobiert, funktioniert aber nicht mit meinem Notepad ++ unter Windows 7. Haben Sie es selbst probiert?
— Gueno

@Gueno: Ja. Arbeitete wie ein Zauber (auch unter Windows 7). Ich habe sogar mit möglichen Fehlalarmen getestet. Vielleicht ist es eigentlich kein Platz.
— Der Hochstapler

Ich habe möglicherweise irgendwo die falschen Parameter ... Regex-Modus oder erweiterter Modus? Ich habe ein Leerzeichen beim Testen in einer Dummy-Datei, ich habe sogar mit dem Buchstaben 'k' anstelle eines Leerzeichens als letzte Zeile getestet, aber k\z passt nicht dazu :(
— Gueno

@Gueno: Vielleicht handelt es sich um ein Versionsproblem. Ich habe Notepad ++ 6.1.2 (gerade aktualisiert), aber es funktionierte auch mit 6.0 (vor dem Update). Der Modus ist "Regulärer Ausdruck" (wie im Screenshot).
— Der Hochstapler

vielleicht, ich verwende 5.9.1, werde versuchen, es zu aktualisieren und zurück zu kommen, um ein Feedback zu geben
— Gueno
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.