淺談JavaScript正則表達式分組匹配
語法
元字符:(pattern) 作用:用于反復匹配的分組
屬性$1~$9 如果它(們)存在,用于得到對應分組中匹配到的子串
\1或$1 用于匹配第一個分組中的內容
\2或$2 用于匹配第一個分組中的內容
...
\9或$9 用于匹配第一個分組中的內容
用法示例
var reg = /(A+)((B|C|D)+)(E+)/gi;//該正則表達式有4個分組 //對應關系 //RegExp.$1 <-> (A+) //RegExp.$2 <-> ((B|C|D)+) //RegExp.$3 <-> (B|C|D) //RegExp.$4 <-> (E+)
以上的代碼也同時給出了$1~$9的用法
$1~$9是正則表達式預定義的靜態(tài)屬性,通過RegExp.$1引用
分組嵌套關系說明
上述代碼也可以說明分組的嵌套關系
//測試環(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"
這樣就可以很明白的看出分組的嵌套關系了
總結來說:大的分組中存在小的分組時,小的分組是排在該大分組后面的分組,以此類推
以上所述就是本文的全部內容了,希望大家能夠喜歡。
相關文章
JavaScript如何利用Promise控制并發(fā)請求個數
大家都知道js是單線程,并不存在真正的并發(fā),但是由于JavaScript的Event Loop機制,使得異步函數調用有了“并發(fā)”這樣的假象。這篇文章主要給大家介紹了關于JavaScript如何利用Promise控制并發(fā)請求個數的相關資料,需要的朋友可以參考下2021-05-05JS判斷鼠標進入容器的方向與window.open新窗口被攔截的問題
這篇文章主要給大家介紹了利用Javascript判斷鼠標進入容器方向的方法,以及window.open新窗口被攔截的問題分析,文中給出了詳細圖文介紹和示例代碼,相信對大家的理解和學習具有一定的參考借鑒價值,下面來一起看看吧。2016-12-12