2016-06-24 76 views
0

我需要驗證全名應避免數字和特殊字符,但允許單詞之間的空格。看到我的JavaScript代碼在這裏:正則表達式避免數字和特殊字符,並允許單詞之間的空格

function jsPreventNumeric(obj) { 
    obj.value = obj.value.replace(/[^a-z]/gmi, '').replace(/\s+/g, ''); 
} 

它工作正常,但它不允許單詞之間的空間。我沒有太多的知識來編輯該正則表達式。任何人都可以幫助我調整這個正則表達式以允許空間嗎?

+1

刪除'.replace(/ \ s + /克, 「」)' –

+0

,請複製粘貼代碼,而不是將其作爲圖像鏈接。 – AUsr19532

+0

你知道你會刪除字符串中的所有空格,並且只會留下字母,所以你會得到像'IsankaThalagalaHadBreakfastThisMorning'的東西? – Azamantes

回答

0

我看不到圖片。試試這個:^ [\\ p {L} .'-] + $

1

\s是空格的轉義序列。所以你的第二個替換明確地刪除所有whitepspaces。 /[^a-z]/表示來自a-z的所有字符是而不是個字符。添加\s所以它不僅能消除那些不AZ或空白字符

function jsPreventNumeric(obj){ 
    obj.value.replace(/[^a-z\s]/gmi,""); 
} 
+2

'/ m'是多餘的這裏。 –

0

問題解決了:

obj.value = obj.value.replace(/[^a-z\s]/gmi, ""); 
相關問題