嗨,我正在尋找正則表達式來允許在javascript/jquery中使用字母數字, - ,_或空格。我厭倦了谷歌搜索,但沒能找到,允許字母數字, - ,_和空格的正則表達式
任何人都可以幫助我與此。
在此先感謝。
嗨,我正在尋找正則表達式來允許在javascript/jquery中使用字母數字, - ,_或空格。我厭倦了谷歌搜索,但沒能找到,允許字母數字, - ,_和空格的正則表達式
任何人都可以幫助我與此。
在此先感謝。
試試這個正則表達式:
/^[a-z\d\-_\s]+$/i
@rahul:這個方法可行,但是要檢查Nevir的答案,因爲它也可以工作,而且有點短。基本上'\ w'表示alpha +下劃線,它只是一個類似'\ d'的快捷方式''[0-9]'。 – elclanrs
var string = 'test- _ 0Test';
string.match(/^[-_ a-zA-Z0-9]+$/)
Character sets會在這裏幫上忙。你想創建一個匹配的,你要驗證的人物設定:
\w
,這是相同的JavaScript [A-Za-z0-9_]
(其它語言可以不同)。-
和空格,它們可以組合成匹配集合,例如[\w\- ]
。但是,您可能只想要空格字符的考慮使用\s
代替(\s
也匹配的標籤,及其他形式的空格)
-
爲\-
,使得正則表達式引擎不用字符範圍混淆像A-Z
^
和$
你可能尋找的全正則表達式是:
/^[\w\-\s]+$/
(注意the +
indicates必須有至少爲它匹配一個字符;使用*
代替,如果一個零長度的字符串也行)
最後,http://www.regular-expressions.info/是一個真棒參考
積分:此正則表達式不匹配非ASCII阿爾法。不幸的是,大多數瀏覽器中的正則表達式引擎不支持命名字符集,but there are some libraries to help with that。
對於語言/平臺,做命名的字符集的支持,您可以使用/^[\p{Letter}\d\_\-\s]+$/
這比我的答案更好,因爲'[az [0-9] _]/i'與'\ w'相同 – elclanrs
/^[-\w\s]+$/
\ W比賽字母,數字,和下劃線
\ S比賽空間,標籤和換行符
-的連字符匹配(如果你有連字符的字符集,例如[AZ],一定要放置連字符在像這樣[-az]開始)
var regex = new RegExp("^[A-Za-z0-9? ,_-]+$");
var key = String.fromCharCode(event.charCode ? event.which : event.charCode);
if (!regex.test(key)) {
event.preventDefault();
return false;
}
在正規表達式[A-Za-z0-9?spaceHere,_-]
有我這是問號'?'後的字面空格。這匹配空間。其他人喜歡/^[-\w\s]+$/
和/^[a-z\d\-_\s]+$/i
不適合我。
這允許基本需要特殊字符「」,?,:,....並阻止其他人。謝謝 – Rigin
嘗試'/ [a-z \ d \ -_ \ s] +/i'。但你可能想要_learn_正則表達式。你不能在網上找到他們,特別是如果它不常見。 – elclanrs
是的,我很虛弱 – rahul
@elclanrs不適合我 – rahul