Ich habe einen regulären Ausdruck, um Dateinamen zu validieren. Hier ist es:
%Vor%Es sollte Dateinamen wie folgt zulassen:
%Vor% Die folgenden Zeichen sind nicht erlaubt \ / : * ? \" < > |
Das Problem ist, dass Dateinamen wie *.txt
oder /\kk
die Validierung bestehen. Ich mache Validierung mit Keyup-Ereignis. Wenn ich also ein zusätzliches Zeichen nach einem nicht erlaubten Zeichen setze, zeigt das, dass alles korrekt ist.
Sie müssen einen Startanker hinzufügen:
%Vor%Dies weist die Engine an, vom Anfang der Eingabe bis zum Ende der Eingabe zu passen, während sie für den ursprünglichen Ausdruck nur am Ende der Eingabe übereinstimmen muss.
Ich würde etwas mit diesem Regex versuchen (Sie können sogar ein Validierungsattribut für ASP.NET MVC damit erstellen!):
%Vor%Wenn es mit der Eingabe übereinstimmt, ist es ein gültiger Dateiname (zumindest unter Windows).
Tags und Links javascript regex