我有一个Perl
RegExp问题。鉴于此HTML代码:
<a href="#"><img src="..." alt="..." title="..."></a>
<a href="#"><img src="..." alt="..." style="display: none;" title="..."></a>
<a href="#"><img src="..." alt="..." title="..." style="display: none;"></a>
<a href="#"><img src="..." style="display: none;" alt="..." title="..."></a>
<a href="#"><img style="display: none;" src="..." alt="..." title="..."></a>
如果img包含此字符串,如何删除所有img
代码及其父代a
?
style="display: none;"
答案 0 :(得分:1)
$html =~ s|<a\s+href[^>]*>\s*<img[^>]*style="display: none;"[^>]*>\s*</a>||g
这是检查img
标记内的a
标记。并检查给定的style
属性是否位于img
内。
答案 1 :(得分:1)
像这样......:
if ($html =~ /(<a href="#"><img style="display:\s*none;".*?<\/a>)/g) {
remove($1);
}