2
我有一個文件名驗證的正則表達式。那就是:正則表達式不以「。」開始
/^[0-9a-zA-Z\^\&\'\@\{\}\[\]\,\$\=\!\-\#\(\)\.\%\+\~\_; ]+$/
如何更改它來檢查文件名不下手.
符號。感謝幫助。
我有一個文件名驗證的正則表達式。那就是:正則表達式不以「。」開始
/^[0-9a-zA-Z\^\&\'\@\{\}\[\]\,\$\=\!\-\#\(\)\.\%\+\~\_; ]+$/
如何更改它來檢查文件名不下手.
符號。感謝幫助。
一個negative lookahead將是最簡單的解決方案:
/^(?!\.)[0-9a-zA-Z^&'@{}[\],$=!\-#().%+~_; ]+$/
或者,你可以第一個字符用一個多餘的字符類匹配:
/^[0-9a-zA-Z^&'@{}[\],$=!\-#()%+~_; ][0-9a-zA-Z^&'@{}[\],$=!\-#().%+~_; ]*$/
^^ no dot here
順便說一句,裏面character class幾乎所有特殊字符鬆他們的功能並不需要被轉義。
+1 lookahead是正確的解決方案。 – Kaii 2012-08-06 12:09:57
感謝您提供這樣的信息答案。我會接受它。 – 2012-08-06 12:16:42