2012-05-30 112 views
1

我想在我的mod_rewrite中允許'&'。 目前我使用在mod_rewrite中允許&符號

RewriteRule ^([-a-zA-Z0-9_'_-]+)$ 

我嘗試添加:

RewriteRule ^([-a-zA-Z0-9_'_-_&]+)$ 

允許符號,但我知道這是最LIKEY錯誤的。任何人都可以指引我正確地使用正確的正則表達式佈局。

+1

難道你試試'^([a-zA-Z0-9'&] +)$'? – inhan

+0

就像一個魅力!非常感謝!這總讓我困惑。 – user1228140

+0

看來我忘了下劃線和連字符。將這些添加到字符組之外的某些地方(group1:'a-z',group2:'A-Z',group3:'0-9'),但放在方括號內,如果你還想要的話。例如:'^([a-zA-Z0-9'&_-] +)$' – inhan

回答

1

您還必須轉義連字符,因爲它表示在方括號內進行匹配的範圍(它不會因爲您最後包含它而失敗,但在其他情況下它將在OP中有)。

連字符的正確轉義: ^([a-zA-Z0-9'&_\-]+)$

這會失敗:^([a-zA-Z0-9'_-&]+)$

這不會:

(我會評論,但我的代表處是不夠高)