php替换img标签但保留类

时间:2015-07-23 17:42:52

标签: php regex preg-replace preg-match

你好,我有以下代码:
$img= '<img src="image.png" class="image-rounded" width="100" height="100">';
这是我的代码:

preg_replace("~<img\s(.|\n)*?>~i",'<img src="imageafterreplace.png" width="140" height="160">', $img);

但我想要的是获得class =&#34; image-rounded&#34;图像也是替换它所以我的网址将如下所示:

<img src="imageafterreplace.png" width="140" height="160" class="image-rounded">

更新:我从网站上获取网址并更改网址,但保持同一级别,以便等级=&#34;&#34;可以从一个网址更改为另一个网址。 我已经找到了答案:

preg_replace('~<img\s*.*?\s*class\s*=\s*"([^"]*)"\s*.*?>~i','<img src="imageafterreplace.png" width="140" height="160" class="$1">', $img);

但是我的代码仍有问题,如果img标签具有class属性,那么它会被替换,如果不被忽略的话。 我想要的是我的正则表达式代码中的一些修改,告诉它如果类已经在img中然后它被替换,如果不是只是让它空白

0 个答案:

没有答案