正則表達(dá)式是一個(gè)描述字符模式的對(duì)象甘改。
1.創(chuàng)建RegExp對(duì)象:
構(gòu)造函數(shù)方法:
var pattern=new RegExp(“s$”);匹配以s結(jié)尾的所有字符串。
2.直接量方式創(chuàng)建:
var pattern=/s$/;
注:
EMS3規(guī)定同一段代碼所表示的正則表達(dá)式直接量的每次運(yùn)算都返回同一個(gè)對(duì)象宾符。
EMS5規(guī)定正好相反。
3.常用轉(zhuǎn)義字符:
\n換行符
\t制表符
4.字符類:
將直接量字符單獨(dú)放在方括號(hào)內(nèi)就組成了字符類蒸绩。字符類可以使用連字符表示字符范圍祭钉,如/[a-z]/,匹配拉丁字母表中的小寫字母。
^作為左方括號(hào)內(nèi)的第一個(gè)字符它改,定義否定字符類疤孕。如:/[^abc]/表示匹配a、b央拖、c之外的所有字符祭阀。
正則表達(dá)式中的常用字符類:
\w等價(jià)于[a-zA-Z0-9]
\W等價(jià)于[^a-Za-z0-9]
\d等價(jià)于[0-9]
\D等價(jià)于[^0-9]
5.重復(fù)
{n,m}匹配前一項(xiàng)至少n次,最多m次
{n,}匹配前一項(xiàng)n次或者更多次
{n}匹配前一項(xiàng)n次
鲜戒?{0,1}
+{1专控,}
*{0,}
6.非貪婪模式:
5中列舉的的重復(fù)字符語法都是貪婪模式遏餐,即為盡可能多的匹配伦腐。
未避免貪婪模式的影響,在待匹配的字符后跟隨一個(gè)問號(hào)即可失都“啬ⅲ“?粹庞?”咳焚,“+?”庞溜,“*革半?”,“{1,2}强缘?”督惰。
7.選擇:
字符“|”用于分隔供選擇的字符。選擇項(xiàng)的嘗試匹配次序是從左到右旅掂,直到發(fā)現(xiàn)了匹配項(xiàng)赏胚。如果左邊的選擇項(xiàng)匹配,就忽略右邊的匹配項(xiàng)商虐。
8.圓括號(hào)的作用:
一個(gè)是把單獨(dú)的項(xiàng)組合成子表達(dá)式觉阅。
另一個(gè)是在完整的模式中定義子模式崖疤。允許在同一正則表達(dá)式的后部引用前面的子表達(dá)式,通過在字符“\”后加一位或多位數(shù)字實(shí)現(xiàn)的典勇。
9.錨元素:
^用來匹配字符串的開始劫哼。$用于匹配字符串的結(jié)束。
10.修飾符:
i執(zhí)行不區(qū)分大小寫的匹配
g執(zhí)行一個(gè)全局匹配
m多行匹配模式