<a class="rsswidget" href="http:/domain.com/feed/" title="RSS">
<img style="border:0" width="14" height="14" src="http://domain.com/images/rss.png" alt="RSS">
</a>
我需要什么正则表达式来摆脱整个锚点,包括里面的图像? 不幸的是,我是一个正则表达式的菜鸟,所以我需要你的帮助。非常感谢你。
return preg_replace('#<a+class="rsswidget"[^>]*>.*?</a>#is', '', $content);
答案 0 :(得分:3)
这几乎是正确的。但+
仅量化a
。您想在该位置使用[^>]+
:
preg_replace('#<a[^>]+class="rsswidget"[^>]*>.*?</a>#is',
为了避免任何正则表达式为html-whatever-down-downvoting,这将是QueryPath替代方案:
return qp($html)->find("a.rsswidget")->remove()->writeHTML();