[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是第二项

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM