如何php正则把图片地址 http://img04.taobaocdn.com/bao/uploaded/i4/TB1sCJ6NpXXXXbSapXXXXXXXXXX_!!0-item_pic.jpg_230x230.jpg 替换成 https://img.alicdn.com/bao/uploaded/i4/TB1sCJ6NpXXXXbSapXXXXXXXXXX_!!0-item_pic.jpg_230x230.jpg
img04 后面的04数字是会变的
也就是把 http://img0*.taobaocdn.com/ 替换成 https://img.alicdn.com/
试了一些方法,不是全部替换就是不能正常替换掉
<?=preg_replace('/[a-z]+://[a-z0-9_-/.%]+/i','https://img.alicdn.com',$img);?> 这个也不完整
你的问题是:
1.正则表达式中//没有被转转义,这个是问题
2.就是非贪婪匹配的问题,[^\/]要把/这个过滤掉,不然即使匹配出来也是会匹配替换掉整个字符串的