【问题标题】:How to get string before last slash and after second last slash in URL [duplicate]如何在最后一个斜杠之前和 URL 中的倒数第二个斜杠之后获取字符串 [重复]
【发布时间】:2013-12-29 09:25:54
【问题描述】:

如果我有一个如下所示的 URL:

http://wwww.example/test1/test2/test3/

如何从上面的 url 中检索字符串 test3

【问题讨论】:

标签: php regex


【解决方案1】:
$str = explode("/","http://wwww.example/test1/test2/test3/");
echo $str[count($str)-2];

演示:https://eval.in/83914

【讨论】:

    【解决方案2】:

    正则表达式解决方案。

    $url = 'http://wwww.example/test1/test2/test3/';
    
    preg_match('#.*/(.*)/$#', $url, $matches);
    echo $matches[1];
    

    Demo

    【讨论】:

      【解决方案3】:

      使用捕获组,$:

      preg_match('!/([^/]+)/[^/]*$!', 'http://wwww.example/test1/test2/test3/', $matches);
      echo $matches[1];
      

      演示:http://ideone.com/7EVfZa

      【讨论】:

        【解决方案4】:

        所以basename() 正是这样做的。

        $url = 'http://www.example/test1/test2/test3/';
        echo basename($url); // returns : test3;
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2016-10-20
          • 2015-06-18
          • 2023-01-07
          • 2016-07-10
          • 2020-05-04
          • 1970-01-01
          • 2020-09-02
          • 2016-09-05
          相关资源
          最近更新 更多