正則表達式:
判斷特殊字符
1 var re=new RegExp("a","i")
2 var re=/a/i? //匹配含有a字母的字符串,i表示不區(qū)分大小寫
3 var re=/\*/i //匹配*字符
4 匹配特殊符號需要用\轉義(! $ ^ + = | / \ () { })[o t n v f r xnn uxxx cX]
5?
? ? \w 匹配任何ASCII單字符[a-z A-Z 0-9]??
? ? \W 匹配任何ASCII單字符之外的字符??
? ? \s 匹配任何Unicode的空白符??
? ? \S 匹配任何Unicode空白符之外的字符??
? ? \d 匹配任何數(shù)字[0-9]??
? ? \D 匹配任何數(shù)字之外的字符??
? ? [...] 匹配方括號中所有的字符??
? ? [^...] 匹配非方括號中所有的字符
6 重復類??
? ? {n} 匹配前一項n次??
? ? {n,} 匹配前一項至少一次,至多次數(shù)不限??
? ? {n,m} 匹配前一項至少n次,最多m次??
? ? {?}匹配前一項0次或者一次??
? ? {+} 匹配前一項至少1次??
? ? {*} 匹配前一項0次或者多次? eg: var re=/a{3}/i //表示有三個連續(xù)a字符的字符串
7 選擇符??
? ? | 分割符可用來選擇文字??
? ? ^ 匹配字符串的開頭??
? ? $ 匹配字符串的結尾??
? ? \b 匹配一個單詞的邊界??
? ? \B 與\b相反,匹配一個非單詞邊界
8 分組??
? ? (…) 將幾個項目組合成一個單元??
? ? (?…)與(…)類似,只是不記憶與該組合所匹配的內(nèi)容??
標志
? ? i 匹配時不區(qū)分大小寫
? ? g 匹配時執(zhí)行全局匹配
? ? m 匹配時執(zhí)行多行匹配 ? eg: var re=/a/ig //匹配a字符開始的會繼續(xù)向后匹配
9 正則表達式對象的方法??
? ? exec() 執(zhí)行正則表達式的匹配,返回一個數(shù)組??
? ? test() 測試正則表達式的匹配,返回布爾值 ?
? ? toSource() 返回RegExp對象的源代碼 ?
? ? oString() 將RegExp對象轉換成字符串
10 unicode \u4e00-\u9fa5—表示所有中文字符
11 var re=/[^\w\ue400-\u9fa5]/g;//匹配所有的非法字符予以警告
12 交互行為用戶名?
? ?oName.onfocus={
? ? ? ? ? ? ? ? name_msg.style.display="block"; ?
? ? ? ? ? ? ? ? name_msg.innerHTML='5-25 個字符,一個漢字為兩個字符。推薦使用中文會員名'?
? ? ? ? ? ? ? ? } ??
? ? ? ? ? ? ? oName.onkeyup