du532861657 2014-05-24 19:46
浏览 111
已采纳

如何在正斜杠之后获取文本(直到下一个正斜杠或字符串结尾)?

I have a URL cleaned up to look like this:

/foo/bar

I tried this:

preg_match('#([a-zA-z0-9]+)#', $path, $matches);

But $matches is output as:

Array
(
    [0] => /foo
    [1] => foo
)

What regex can be used (i.e. with preg_match()) to get foo and bar?

  • 写回答

2条回答 默认 最新

  • dongle7882 2014-05-24 19:55
    关注

    You can best use explode for this:

    print_r(explode('/',ltrim('/foo/bar','/')));
    

    But if you want to do it with regex (for this very bad) just use preg_match_all():

    preg_match_all('/([a-zA-Z0-9]+)/','/foo/bar', $matches);
    echo '<pre>';
    print_r($matches[0]);
    

    For more information look at: http://nl3.php.net/manual/en/function.preg-match-all.php Both result in:

    Array
    (
        [0] => foo
        [1] => bar
    )
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?