加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

关于正则表达式——捕获型括号和非捕获型括号

发布时间:2020-12-14 01:33:21 所属栏目:百科 来源:网络整理
导读:对于括号中的子表达式,正则表达式会将匹配的子表达式进行存储。 pre class="javascript" name="code"var regular = /^Subject:(d)/var str = "Subject:1 as something";var result = regular.exec(str);alert(reslt[0]) //Subject:1alert(result[1]) //1

对于括号中的子表达式,正则表达式会将匹配的子表达式进行存储。

<pre class="javascript" name="code">var regular = /^Subject:(d)/
var str = "Subject:1 as something";
var result = regular.exec(str);
alert(reslt[0])  //Subject:1	
alert(result[1]) //1

 
 
 
 

上面的例子中,声明了一个正则表达式,然后调用方法exec()执行正则的匹配,返回匹配结果的字符数组。

由结果我们可以看见,整个表达式的匹配结果作为数组的第一项,子表达式(d)的匹配结果也进行了保存操作,通过匹配结果可以获取到。


有些时候我们只需要测试表达是否可以匹配,而并不需要进行存储,可以通过非捕获型括号"(?:)"

var regular = /^Subject:(?:d)/
var str = "Subject:1 as something";
var result = regular.exec(str);
alert(reslt[0])  //Subject:1	
alert(result[1]) //null
子表达式(?:d)并没有进行存储

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读