Wyrażenie regularne JavaScript do sprawdzania poprawności nazw plików
Mam wyrażenie regularne do sprawdzania nazw plików. Tutaj jest to:
/[0-9a-zA-Z\^\&\'\@\{\}\[\]\,\$\=\!\-\#\(\)\.\%\+\~\_ ]+$/
Powinien zezwalać na takie nazwy plików:
aaa
aaa.ext
a#
A9#.ext
Następujące znaki są niedozwolone\ / : * ? \" < > |
Problem polega na tym, że nazwy plików takie jak*.txt
lub/\kk
przechodzi walidację. Robię sprawdzanie poprawności za pomocą zdarzenia keyup. Więc kiedy położyłem jeden dodatkowy znak po niedozwolonym, to pokazuje, że wszystko jest w porządku.