如何从字符串中删除HTML标记?

时间:2013-09-09 18:37:55

标签: php string html-parsing

我希望动态地从字符串中删除一个块,从一个字符<的出现到另一个2个字符/>的出现。以下是可输出内容的示例:

<img src='blah.png' width="300" height="225" />There are many variations of passages of Lorem Ipsum available, but the majority have suffered alteration in some form, by injected humour, or randomised words which don't look even slight...

它可能不是img标记,它可能是锚标记内的img,或根本没有标记。我所追求的是标签后面的字符串(如果有的话),更具体地说是前50个单词。但是,我已经解雇了50个单词的工作,我只需要将标签撕掉。我不能欺骗并使用img {display:none;}因为字符被计算在内。

这可以使用PHP吗?

1 个答案:

答案 0 :(得分:2)

怎么样:

$string = "<img src='blah.png' width="300" height="225" />There are many variations of passages of Lorem Ipsum available, but the majority have suffered alteration in some form, by injected humour, or randomised words which don't look even slight...";
$new_string = preg_replace('/<.*?\/>/','',$string);

但是,如果你只是在解析html标签,那么regexp可能不是最好的方法。但如果它只是删除一些字符串,那么它可能有所帮助。