我该怎么做preg_replace?

时间:2019-10-18 18:06:45

标签: php preg-replace

我正在尝试从站点获取数据,但是存在一些问题。 我想更改以<div class="phraserec"开头和以</div></div>结尾的表达式 我该怎么办?

$source = "<div class="gwblock" id="1936036"><div class="phraserec"bla bla...</div></div>"
$output = preg_replace('/'. preg_quote('<div class="phraserec" '.'(.*?)'.'</div></div>','/') .'/', '</div>' , $ll);

我想要输出;

<div class="gwblock" id="1936036"><div class="phraserec"bla bla...</div>

1 个答案:

答案 0 :(得分:0)

没有理由调用preg_quote(),并且可以防止(.*?)被当作模式。而且,您可以将捕获组放置在第二个.*?之前的所有内容上,而不必将捕获组放置在</div>周围。

$output = preg_replace('#(<div class="phraserec".*?</div>)</div>#', '$1', $source);
如果要将动态输入转换为正则表达式中的文字值,则需要

preg_quote()