php img src 绝对路径,PHP-修改字符串文本上图像的绝对路径/URL

我认为这个regex会做得更好:

#\b((?:https?://stackoverflow\.com/)?uploads/(.*?\.(?:jpg|png|gif)))\b#

我简化了你的一点(例如,替换

https:|http:

具有

https?:

[a-zA-Z0-9]+

新代码(注意,我添加了一个额外的图像参考用于测试):

$old = array();

$pattern = "#\b((?:https?://stackoverflow\.com/)?uploads/(.*?\.(?:jpg|png|gif)))\b#";

$text = "orem uploads/xyx.gif ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor image1.png rem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor image2.png";

// seatch and get old urls

preg_match_all($pattern, $text, $old);

print_r($old);

输出:

Array

(

[0] => Array

(

[0] => uploads/xyx.gif

[1] => https://stackoverflow.com/uploads/image1.png

[2] => https://stackoverflow.com/uploads/image2.png

)

[1] => Array

(

[0] => uploads/xyx.gif

[1] => https://stackoverflow.com/uploads/image1.png

[2] => https://stackoverflow.com/uploads/image2.png

)

[2] => Array

(

[0] => xyx.gif

[1] => image1.png

[2] => image2.png

)

)

如果要坚持图像名称只包含

[a-zA-Z0-9]

然后改变

.*?

$pattern = "#\b((?:https?://stackoverflow\.com/)?uploads/([a-zA-Z0-9]+\.(?:jpg|png|gif)))\b#";

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值