正则表达式预查(?:)使用心得

最近在做个模版替换的功能,使用到不少的正则方面的知识,一般的都还好理解,就稍稍说明一下预查(?:)的使用(自己的心得,大家参考下就行):
比如现在有一个字符串:
<img src="a.gif" alt="a" />
要求把src和alt属性的值替换掉,我们用replace来实现。
var str='<img src="a.gif" alt="a" />';
var re=/<img([^>]*)src=[/'/"](.*?)[/'/"](.*?)>/i;
如果我们用当前的re来做匹配的话,那么$0-$3都会有返回值,不方便我们做替换操作。这里用预查就可以了。
现在改写正则如下:
var re=/<img (?:[^>]*)src=[/'/"](.*?)[/'/"] (?:.*?)>/i;
这样该正则就返回$0-$1三个匹配了 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值