2014-06-18 60 views
-1

我正在創建一個網絡商店,我需要使用JavaScript驗證輸入,因此用戶不必提交表單以提供PHP錯誤(儘管我也在使用PHP驗證表單)。什麼是最好的正則表達式來驗證名稱?

我來到得到的是下面的正則表達式:

/^[a-zA-Z]+$/ 

但上述正則表達式將只允許字母字符,而我也希望允許的字符,如'-因爲明顯的名稱也可能包含這兩個字符。我的問題是,如何使正則表達式允許alpha字符和上面的兩個字符。

除此之外,我還有一個問題剛剛出現在我的腦海裏,ă等字符會通過上面的驗證?

+8

驗證名最好的正則表達式是''/^.*$/除非你很酷與恨中國人,日本人和韓國人,任何其他人的名字是用非拉丁字母書寫的。 –

+0

我會建議不要驗證名稱。何必? –

+0

你真的需要限制他們的名字輸入到「正確的」名字嗎?讓他們擔心他們爲什麼要在他們的名字中加一個數字,這不會破壞你的應用程序。 – ajp15243

回答

0

將它們添加到您的字符組,像這樣

/^[a-zA-Z'-]+$/ 
+1

應該注意的是''''一般應該在'[]'字符類的末尾或開頭,如果它被當作文字'-'來處理,以避免無意的字符範圍。 – ajp15243

+0

你是對的.. – nozzleman

+2

我會接受這個,因爲它回答了最初的問題,但我明白它沒有必要驗證名稱。 –