有人可以帮我删除html内容中的修剪/删除纯文本吗?
例如;来自这个HTML:
lorem ipsum xxx lorem ipsum
orem ipsum yyy
lorem ipsum lorem ipsum zzz
<img src=ijustwantthisline.jpg>
<br/>
<img src=ijustwantthisline.jpg>
我只想获得html行;如:
<img src=ijustwantthisline.jpg>
<br/>
<img src=ijustwantthisline.jpg>
就像strip_tags;我需要strip_text等......
答案 0 :(得分:0)
这将找到所有标签,然后将它们添加到$ tag。因为它只查找标签,所以它与纯文本不匹配。 $ string是你提供的字符串,$ tags是你想要的html行。
preg_match_all('/(<.*?>)/', $string, $matches);
$tags = implode($matches[0]);
答案 1 :(得分:0)
你的问题很不清楚。但是,有很多方法可以删除html页面上的元素。
<?php
$html = "abc<p></p><p>dd</p><b>non-empty</b>";
$pattern = "/<p[^>]*><\\/p[^>]*>/";
//$pattern = "/<[^\/>]*>([\s]?)*<\/[^>]*>/"; use this pattern to remove any empty tag
echo preg_replace($pattern, '', $html);
// output
//abc<p>dd</p><b>non-empty</b>
?>
如果您可以绝对保证HTML中没有尖括号,而不是用于打开和关闭标签的尖括号,这应该有效:
s%(>|\G)([^<]*?)($key)%$1$2<b>$3</b>%g