在PHP中替换字符串中相似但不同的部分?

时间:2012-07-27 22:46:46

标签: php string replace echo

所以我抓了一个字符串(通常是一个图像位置)。理想情况下,我希望它始终是

http://www.mydomain.com/images/cool-nifty-image.png

然而,有时候,并不总是这样。有时它是

http://www.mydomain.com/images/cool-lame-image-300x300.png

300x300与尺寸相关。在上面的例子中,我需要位于

的图像
http://www.mydomain.com/images/cool-lame-image.png

(是的,它总是存在。)

这很容易,它总是三位数。但是,有时候它也可能是

    http://www.mydomain.com/images/cool-lame-image-300x99.png

    http://www.mydomain.com/images/cool-lame-image-99x99.png

有没有办法找到“ - #x#”所以我可以找到-100x99和-875x200?

1 个答案:

答案 0 :(得分:2)

你需要一个正则表达式来完成这项任务

$img = preg_replace('/-\d+x\d+(\.png)$/', '\1', $img);