Regex在html内容中替换图像的宽度和高度


Regex to replace image width and height in html content

你能告诉我正则表达式来获得图像的宽度和高度,并将其替换为自定义宽度和高度吗?

例如,它应该可以这样修改:

<img src="test.jpg" style="width:1024px; height:600px;" title="test" alt="test">

:

<img src="test.jpg" style="width:600px; height:400px;" title="test" alt="test">

使用PHP DOM模型获取HTML属性比使用正则表达式更容易、更安全。

您应该使用如上所述的PHP DOM。但是如果你需要一个正则表达式…这只在<img> style属性完全按照您报告的方式编写时才有效。不同的输入会导致意想不到的结果!!

$width = '320px';
$height = '240px';
$pattern = '/(<img [^>]*style="[^"]*)width:([0-9 ]+px)([^"]*)height:([0-9 ]+px)([^"]*)"/i';
$replace = '$1width:' . $width . '$3height:' . $height . '$5';
$outhtml = preg_replace($pattern, $replace, $yourhtml);