Hilfe bei/Test von RegeEx für Dateipfad-Validierung
Hallo,
ich stehe vor dem Problem einen Pfad auf Gültigigkeit prüfen zu müssen, und Gültig bedeutet in diesem Fall der Pfad darf:
* nicht mit einem . oder einem / beginnen
* keine Steuerzeichen, und keine der folgenden Zeichen enthalten: \:*?'"<>|
* keine aufeinander folgenden Punkte enthalten
* keine Dateien oder Verzeichnisse beinhalten die nur aus Punkten und/oder Leerzeichen bestehen
* nicht mit einem Punkt oder einem Leerzeichen enden
Meine bisherige Lösung sieht wie folgt aus:
Und das scheint soweit auch ganz gut zu funktionieren, aber es fühlt sich einfach noch etwas schwammig an, sprich ich bin noch etwas unsicher ob ich damit wirklich alles korrekt abgedeckt habe.
Ich würde mich freuen wenn sich das mal jemand angucken könnte und seinen Senf dazu abgeben würde
Gruß
Olli
Hallo,
ich stehe vor dem Problem einen Pfad auf Gültigigkeit prüfen zu müssen, und Gültig bedeutet in diesem Fall der Pfad darf:
* nicht mit einem . oder einem / beginnen
* keine Steuerzeichen, und keine der folgenden Zeichen enthalten: \:*?'"<>|
* keine aufeinander folgenden Punkte enthalten
* keine Dateien oder Verzeichnisse beinhalten die nur aus Punkten und/oder Leerzeichen bestehen
* nicht mit einem Punkt oder einem Leerzeichen enden
Meine bisherige Lösung sieht wie folgt aus:
Code:
/^ (?![\\.\\s\/]) # Kein Punkt, Leerzeichen oder Slash am Anfang ( ([^\\x00-\\x1F\\\\:*?\"\'<>|]) # Verbot von Steuerzeichen, Backslash, Doppelpunkt, # Sternchen, Fragezeichen, doppelten und einfachen # Anführungszeichen, spitzen Klammern und senkrechten # Strichen (?!\\.\\.) # Keine aufeinander folgenden Punkte (?!\/(\\.|\\s+)\/) # Keine Verzeichnisse die nur aus Punkten oder # Leerzeichen bestehen )* (?<![\\.\\s]) # Kein Punkt oder Leerzeichen am Ende $/x
Ich würde mich freuen wenn sich das mal jemand angucken könnte und seinen Senf dazu abgeben würde
Gruß
Olli
Kommentar