浅谈JavaScript正则表达式分组匹配

前端技术 2023/09/01 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是正则表达式预定义的静态属性,通过RegExp.$1引用

分组嵌套关系说明

上述代码也可以说明分组的嵌套关系

//测试环境  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\"

这样就可以很明白的看出分组的嵌套关系了

总结来说:大的分组中存在小的分组时,小的分组是排在该大分组后面的分组,以此类推

以上所述就是本文的全部内容了,希望大家能够喜欢。

本文地址:https://www.stayed.cn/item/2403

转载请注明出处。

本站部分内容来源于网络,如侵犯到您的权益,请 联系我

我的博客

人生若只如初见,何事秋风悲画扇。