删除div php - 字符串的一部分

时间:2013-09-11 07:44:25

标签: php html

我想删除两个html标签之间的部分字符串。我有这样的事情:

$variable = "This is something that I don't want to delete<blockquote>This is I want to delete </blockquote>";

问题是blockquote标签之间的字符串正在发生变化,无论它是什么,都需要删除它。现在有人如何?

3 个答案:

答案 0 :(得分:2)

正则表达式不是解析html字符串的最佳选择,你应该看一下Simple HTML dom parser或php DOMDocument class

如果你仍想在这种情况下使用正则表达式,那将是例如:

$variable = preg_replace('/<blockquote>.+<\/blockquote>/siU', '', $variable);

Test it there.

答案 1 :(得分:1)

您可以使用正则表达式,但这绝不是故障安全的,只应在琐碎的情况下使用。更好的方法是使用完整的HTML解析器。

<?php
$str = preg_replace('#<blockquote>.*</blockquote>#siU', '', $str);
?>

答案 2 :(得分:0)

请尝试以这种方式使用正则表达式

<?php
$variable = "This is something that I don't want to delete<blockquote>This is I want to delete </blockquote>";
$str = preg_replace('#(<blockquote>).*?(</blockquote>)#', '$1$2', $variable);
print($str);
?>