为了账号安全,请及时绑定邮箱和手机立即绑定

各位大侠,请教一下:Javascript不支持负向后瞻(?<!),用什么方法可以实现后瞻的效果呢?

各位大侠,请教一下:Javascript不支持负向后瞻(?<!),用什么方法可以实现后瞻的效果呢?

料青山看我应如是 2019-04-07 09:38:04
举个例子:需要检索到文章的关键字后做修改,关键字为:“B”,“AB”,检索B的时候要排除它前一位是A的情况,正则表达式应该是(?但是JS不支持(?
查看完整描述

2 回答

?
www说

TA贡献1775条经验 获得超8个赞

((?!A).|^)(B)
((?!XYZ).{3}|^)(B)
varr=/((?!A).|^)(B)/;
//如果只是想替换B,就用$1保留前面不小心匹配到的内容
'XB'.replace(r,"$113");
//X13
                            
查看完整回答
反对 回复 2019-04-07
?
大话西游666

TA贡献1817条经验 获得超14个赞

前瞻后瞻一般都能转换成分组加反向引用。
"ABB".replace(/([^A])B/,"$1C")
分组1匹配到B前非A的字符,替换的时候用反向引用$1保留这个字符
                            
查看完整回答
反对 回复 2019-04-07
  • 2 回答
  • 0 关注
  • 544 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信