将多个preg_replace组合成一个

时间:2015-01-19 07:11:33

标签: php regex preg-replace

我想删除之后的每个class="imgbrd lazy" 删除任何scr="",然后 data-original更改为{{1} }}

单独看起来像这样

scr

假设$ input是这个

$input = preg_replace('#class="imgbrd lazy"#s', '' ,$input); $input = preg_replace('#src=".*?"#s', '' ,$input); $input = preg_replace('#data-original=#s', 'src=' ,$input);

问题是<img class="imgbrd lazy" src="/something/iage.png" data-original="/albums/uploadedpics/small1/017246.jpg" border="0">即使找不到scr也会被删除

2 个答案:

答案 0 :(得分:2)

class="imgbrd lazy"([\s\S]*?)src=".*?"

使用此。替换$1。请参阅演示。

https://regex101.com/r/tX2bH4/40

答案 1 :(得分:1)

好像你想要这样的东西,

class="imgbrd lazy"\s+src=".*?"\s+data-original=

使用上述正则表达式,然后将匹配的字符替换为src=

DEMO