任何人都可以找到此错误的解决方案,
$str= trim(strip_tags($str));
$str = preg_replace("'<style[^>]*>.*</style>'siU",'',$str);
$patterns = array();
$patterns[0] = ' ';
$patterns[1] = ' ';
$patterns[2] = ' ';
$replacements = array();
$replacements[0] = '';
$replacements[1] = '';
$replacements[2] = ' ';
$str = preg_replace($patterns, $replacements, $str);
显示此错误。
消息:preg_replace()[function.preg-replace]:无结尾分隔符'&amp;'结果
-Arun
答案 0 :(得分:0)
你有错误代码的答案,正则表达式需要分隔符才能工作。
你应该使用str_replace
。
答案 1 :(得分:0)
模式中的第一个字符被解释为分隔符,现在PHP认为您要使用&amp;作为分隔符。在你的第一个正则表达式中,分隔符为'
,BTW。我猜你真正想要的不是' '
,而是'/ /'
(例如对于模式2),现在/
是分隔符(它不是正则表达式本身的一部分)。顺便说一句,你的第一个正则表达式看起来也不正确,应该是
'<style[^>]*>[^<]*</style>'
否则正则表达式可以匹配整个文档的第一个标记和最后一个标记。