淺談JavaScript正則表達(dá)式分組匹配
語法
元字符:(pattern) 作用:用于反復(fù)匹配的分組
屬性$1~$9 如果它(們)存在,用于得到對應(yīng)分組中匹配到的子串
\1或$1 用于匹配第一個分組中的內(nèi)容
\2或$2 用于匹配第一個分組中的內(nèi)容
...
\9或$9 用于匹配第一個分組中的內(nèi)容
用法示例
var reg = /(A+)((B|C|D)+)(E+)/gi;//該正則表達(dá)式有4個分組 //對應(yīng)關(guān)系 //RegExp.$1 <-> (A+) //RegExp.$2 <-> ((B|C|D)+) //RegExp.$3 <-> (B|C|D) //RegExp.$4 <-> (E+)
以上的代碼也同時給出了$1~$9的用法
$1~$9是正則表達(dá)式預(yù)定義的靜態(tài)屬性,通過RegExp.$1引用
分組嵌套關(guān)系說明
上述代碼也可以說明分組的嵌套關(guān)系
//測試環(huán)境 Chrome瀏覽器 var str = "ABCDE"; var reg = /(A+)((B|C|D)+)(E+)/gi; str.match(reg);//輸出:["ABCDE"] reg.exec(str,'i');//輸出:["ABCDE", "A", "BCD", "D", "E"] RegExp.$1;//輸出:"A" RegExp.$2;//輸出:"BCD" RegExp.$3;//輸出:"D" RegExp.$4;//輸出:"E"
這樣就可以很明白的看出分組的嵌套關(guān)系了
總結(jié)來說:大的分組中存在小的分組時,小的分組是排在該大分組后面的分組,以此類推
以上所述就是本文的全部內(nèi)容了,希望大家能夠喜歡。
相關(guān)文章
js剪切板應(yīng)用clipboardData實例解析
這篇文章主要為大家詳細(xì)介紹了js剪切板應(yīng)用clipboardData實例,并分享了四種實現(xiàn)方法,感興趣的小伙伴們可以參考一下2016-05-05JavaScript如何利用Promise控制并發(fā)請求個數(shù)
大家都知道js是單線程,并不存在真正的并發(fā),但是由于JavaScript的Event Loop機(jī)制,使得異步函數(shù)調(diào)用有了“并發(fā)”這樣的假象。這篇文章主要給大家介紹了關(guān)于JavaScript如何利用Promise控制并發(fā)請求個數(shù)的相關(guān)資料,需要的朋友可以參考下2021-05-05css值轉(zhuǎn)換成數(shù)值請拋棄parseInt
絕大多數(shù)人喜歡用parseInt()把css中的字符串值轉(zhuǎn)換成數(shù)值2011-10-10JS判斷鼠標(biāo)進(jìn)入容器的方向與window.open新窗口被攔截的問題
這篇文章主要給大家介紹了利用Javascript判斷鼠標(biāo)進(jìn)入容器方向的方法,以及window.open新窗口被攔截的問題分析,文中給出了詳細(xì)圖文介紹和示例代碼,相信對大家的理解和學(xué)習(xí)具有一定的參考借鑒價值,下面來一起看看吧。2016-12-12