我正在尝试匹配html Anchor标记,为非现场链接注入Target =“_ top”属性。这是处理在不支持设置Target属性的工具中创建的网站的工具集的一部分。
<a.*?>
适用于匹配开始和自闭的Anchor标记。
我想只匹配包含以下内容的Anchor标签:href =“http
我想要排除包含以下内容的Anchor标签:Target =“
由于这些是html文件,因此多个Anchor标记将在一行上,因此像<a.*?href="http.*?>
这样的模式将从第一个开始
我确实找到了一个像regex这样的网站的简洁jsfiddle,这就是我正在做的事情: http://regexr.com/394mf
HTML:
<a href="/absolute_url/whatever">1</a>
<a class="test" href="test.html">a link</a><a class="test" target="_top" href="http://www.domain.com/">off site</a>
<a href="http://www.domain.com/" class="test">off site</a>
<a class="navbar-link" href="https://www.domain.com/signup">Sign-up</a><a class="navbar-link" href="https://www.domain.com/shop">
<a href="page4.html" />