【问题标题】:regex to find the image name and extension from this url正则表达式从此 url 查找图像名称和扩展名
【发布时间】:2013-02-27 15:49:10
【问题描述】:

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

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

我需要从这个 url 获取图像的名称和扩展名,在这种情况下是 4320885_orig.png

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

【问题讨论】:

    标签: php regex


    【解决方案1】:

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

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

    【讨论】:

      【解决方案2】:

      不要使用正则表达式,使用pathinfo...

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

      【讨论】:

        【解决方案3】:

        试试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() 了解更多信息。

        【讨论】:

          猜你喜欢
          • 2017-12-17
          • 1970-01-01
          • 1970-01-01
          • 2012-05-15
          • 1970-01-01
          • 2020-12-21
          • 1970-01-01
          • 2017-02-20
          • 2013-01-31
          相关资源
          最近更新 更多