2014-05-24 71 views
0

我有清理的URL看起來像這樣:如何在正斜槓之後獲得文本(直到下一個正斜槓或字符串結束)?

/foo/bar 

我嘗試這樣做:

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

但是$匹配輸出爲:

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

可使用哪些正則表達式(即用preg_match())得到foobar

+0

使用'爆炸()',沒有正則表達式需要 – Michael

+0

@邁克爾,這是一個真的* *好點,但我想弄清楚自從我被困了一段時間以後,如何讓這個工作成功。 – Nate

回答

2

您可以充分利用爆炸,對這樣的:

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

但是如果你想用正則表達式來做到這一點(對於這非常糟糕)只需使用preg_match_all()

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

更多信息看:http://nl3.php.net/manual/en/function.preg-match-all.php 兩種結果:

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

使用PHP爆炸():

$arr = explode('/', substr($str,1)); 

回報

Array(
    [0] = 'foo'; 
    [1] = 'bar' 
)