在开始之前,我只想说我对正则表达式完全陌生,所以请对我温柔一点。任何有关正则表达式的评论将不胜感激。
我写了下面的代码
var str = "<blah blah more <b>test</b>>";
var reg1 = "<(?!b>)(?!/b>)";
str = str.replace(new RegExp(reg1), "<");
var reg2 = ">(?<!b>)(?<!/b>)";
str = str.replace(new RegExp(reg2), ">");
alert(str);
我已经使用 http://regexr.com?2toe2 检查了正则表达式它按照我想要的方式匹配任何 < 或 > 但前提是它们不是 html 标签。 “我现在只介绍了。
现在,如果您运行此代码,http://jsfiddle.net/ashburlaczenko/JdATY/9/警报永远不会被执行。我在第一次替换后放置了一个警报,该警报显示,因此错误位于第二阶段。
有人可以帮助我吗?请记住这些正则表达式是我的第一次尝试。
提前谢谢您。
编辑:
<blah blah more <b>test</b>><another <b>blah</b> blah <b>test</b>>
应该变成
<blah blah more <b>test</b>><another <b>blah</b> blah <b>test</b>>
希望这更清楚。
最佳答案
JavaScript 不支持正则表达式中的后向断言。您可以在 this blog post 的帮助下模仿它。 ,但仍然不是那么好。
关于Javascript:正则表达式代码将不会执行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5983463/