[javascript] 获取正则子表达式里的内容

js中进行测试捕获正则小括号中的子表达式,可以用下面这个捕获组来实现


捕获组的定义:
捕获组简单来说就是把正则表达式中用括号匹配的内容,保存到内存中,方便调用。
js中每一个括号匹配的内容可以被RegExp对象捕获到(最多匹配九个,可以通过返回一个数组索引来取得所有的括号匹配项.),存储在RegExp.$1…中。
需要说明的是正则表达式中()不能匹配到内容的,就不是捕获组

 

比如测试下面这个正则是否起作用

console.log(/^\/mail\/.*\/skins\/.*\/(\d+)\/(.*)$/.test("/mail/sinamail66/skins/151118/35/writeReceive.png?v=12041814"))

获取这个地址中的最后两项内容 /mail/sinamail66/skins/151118/35/writeReceive.png?v=12041814

RegExp.$1是第一项

RegExp.$2是第二项

 

posted @ 2020-06-16 16:41  唯一客服系统开发笔记  阅读(1176)  评论(0编辑  收藏  举报