我有一个简报,其中包含一个名为nieuwsbrief-tekst
的div中的一些图片。我想找到这些图像并添加内联css代码。我可以找到preg_match
的div,我也可以找到图像标记本身,但是将style=""
添加到图片标记到目前为止还没有用。
还有一个nieuwsbief-tekst
div,这些div是不同的内容块,因此有3个或4个。我尝试了preg_replace
,但这没有效果。
有关如何处理此问题的任何提示或建议?
所以html看起来像这样,我只想将样式属性添加到div中的图像。
HTM代码:
<div class="nieuwsbrief-tekst">lorum ipmsum</div>
<div class="nieuwsbrief-tekst"><img src="#"></div>
<div class="nieuwsbrief-tekst">lorum ipmsum</div>
<div class="nieuwsbrief-tekst"><img src="#"></div>
PHP代码:
if(preg_match_all('/<div class="nieuwsbrief-tekst">(.*?)<\/div>/is', $var, $matches)) {
foreach($matches[0] as $match) {
if(preg_match('/<img[^>]+>/is', $match, $match_img)) {
echo 'image found';
$pattern = '/<img[^>]+>/is';
$replacement = '<img style="float:left; margin:0 10px 10px 0;';
$test = preg_replace($pattern, $replacement, $match_img);
}
}
echo '<pre>';
print($test);
echo '</pre>';
}
谢谢:)
答案 0 :(得分:0)
这应该可以实现你想要的目标
$pattern = "/<div class=\"tmp\">(\\w+)?<img ([^>]+)>(\\w+)?<\/div>/is";
$replacement = "<div class=\"tmp\">\\1 <img style=\"float:left; margin:0 10px 10px 0; \\2 /> \\3</div>";
$str = preg_replace($pattern, $replacement, $str);
echo $str;
只需更改tmp以满足您的需求:)