0

我想使用我的文本编辑器来查找标签或属性&中未编码的 & 符号 ( ) ,以便我可以对这些 & 符号进行编码。正则表达式不应该脚本标签、HTML 注释(条件注释)或任何已经编码的 & 符号中找到任何 & 符号。<a>href

到目前为止,我有:

&(?!amp;)

虽然它不匹配已经编码的 & 符号,但它确实匹配内部注释和脚本标签。以下是我正在使用的文本条件:

<!--[if (gte IE 6)&(lte IE 8)]-->

<a href="blog.html?id=1&amp;height=471&flexible=0&post_limit=1">

<script>
if something && another
 { do stuff; }
</script>

&在脚本和注释中,如何防止正则表达式匹配?

4

1 回答 1

1

您可以尝试使用捕获括号和反向引用:

搜索:(<a.*)&(?!amp;)(.*)替换:\1&amp;\2

在我的测试(Aptana Studio)中,如果一行有多个未编码的&符号,则需要多次搜索/替换(但如果我按住 Alt+d 进行替换/查找,整个文件会很快更新)。

于 2013-06-14T18:23:56.120 回答