2010-01-10 52 views
3

我該如何制定這條規則,以便您可以使用或不使用斜線來訪問它?有無斜線

RewriteRule ^members/([^/]+)$ members.php?id=$1 [L] 

回答

11
RewriteRule ^members/([^/]+)/?$ members.php?id=$1 [L] 

剛添加「/?」最後要說的是尋找一個尾隨的斜線,但是?說它不必在那裏。

2

我不知道任何有關這個「mod-rewrite」你說話(也許Apache模塊?),但肯定看起來像一個regex,我知道這些。 :-)

試試這個:

RewriteRule ^members/([^/]+)(/|)$ members.php?id=$1 [L] 

因此,要打破成片的^手段 「開始」, 「members/」 的意思正是匹配,([^/]+)表示「1個或多個字符AREN '斜線,分配爲$1「,(/|)表示」斜槓或空字符串,分配給$2「,末尾的$部分表示」字符串必須在此結束「。

0

我只需要提取域名,所以我用這個:

^(?:https?:\/\/)?(?:www[0-9]*\.)?(.*?)(?:\/.*)?$ 

在我的電子表格,它看起來像這樣:

=REGEXEXTRACT(CELL_WITH_URL,"^(?:https?:\/\/)?(?:www[0-9]*\.)?(.*?)(?:\/.*)?$") 

希望,節省了某人一段時間!快樂的REGEXing!