正则表达式从此网址中查找图像名称和扩展名

时间:2013-02-27 15:49:11

标签: php regex

我有这个自动生成的网址。

uploads/1/0/1/7/10178123/4320885_orig.png

我需要从此网址获取图片的名称和扩展名,在本例中为4320885_orig.png

我无法编写正则表达式来查找名称和扩展名。

3 个答案:

答案 0 :(得分:4)

我建议您检查php的Basename函数,而不是使用正则表达式

echo basename("uploads/1/0/1/7/10178123/4320885_orig.png");

//result: 4320885_orig.png

答案 1 :(得分:2)

请勿使用正则表达式,请使用pathinfo ...

echo pathinfo('uploads/1/0/1/7/10178123/4320885_orig.png', PATHINFO_BASENAME);

答案 2 :(得分:0)

尝试pathinfo()

$path = 'uploads/1/0/1/7/10178123/4320885_orig.png';

echo pathinfo($path, PATHINFO_BASENAME); //png

您也可以获得路径的其他组件:

$path_parts = pathinfo($path);

echo $path_parts['extension'], "\n"; //png
echo $path_parts['dirname'],   "\n"; //uploads/1/0/1/7/10178123
echo $path_parts['basename'],  "\n"; //4320885_orig.png
echo $path_parts['filename'],  "\n"; //4320885_orig

有关详细信息,请参阅PHP documentation on pathinfo()