我有这样的html字符串
<input alt="" src="/global/admin/plugins/fileman/Uploads/Images/Mail_1.jpg" style="width: 600px; height: 600px;" type="image" />
并想使用 preg_replace
进行两项更改1-将标签更改为输入==> img
2-将网站链接添加到src路径
我正在尝试使用此代码,但我的工作正常,但结果有如下双引号,这断开了链接,我想添加网站URL而无需附加引号
<img width="600" src="http://mywebsite.com/"/global/admin/plugins/fileman/Uploads/Images/Mail_1.jpg">
这是php代码
$pattern = "/(<input\s+).*?src=((\".*?\")|(\'.*?\')|([^\s]*)).*>/is";
$base = 'http://mywebsite.com/';
$replacement = "<img width=600 src=$base$2>";
echo preg_replace($pattern, $replacement, $html);
答案 0 :(得分:1)
您的第二个捕获组也捕获了引号。将引号移出捕获组,例如,将模式更改为
/(<input\s+).*?src="([^"]*)".*?>/is