2012-07-30 106 views
1

我使用正則表達式的路由我的應用程序,這是我使用的正則表達式:PHP URL路由正則表達式

@/users/([a-zA-Z0-9\-\_]+)/[email protected] 

但不幸的是它針對這些這些URL也很相配:

/users/:uid/posts/:pid 
/users/:uid/posts/:pid/comment/:cid 

但它不應該,應該精確匹配相同的URL,這樣只:

/users/:uid/posts 

我應該在正則表達式改變讓它匹配完全相同的字符串?

感謝您的幫助

回答

3

您應該包括anchors對字符串的開頭(^)和結束($):

@^/users/([a-zA-Z0-9\-\_]+)/posts/[email protected] 

我也允許可選/在網址的結尾。