2011-05-03 129 views
0

我想我有一個問題,因爲我在這個表達式中使用了兩個關鍵的正則表達式值。正則表達式來連接字符串直到連字符

RewriteRule ^([^-]*)-([^-]*)-((foot|basket)(ball))-schedule$ /schedule.php?sport=$3&school=$1&year=$2&schedule=true [NC,L] 

我這個被抓,當有人類型

domain.com/michigan-1999-football-schedule

。它目前不認識這個字符串與這個htaccess線,我99%它與正則表達式部分。我認爲這是因爲該線的[^ - ]部分。我希望這個抓取數據直到連字符,但我認爲這是一個問題,因爲兩者都是正則表達式中的關鍵字符。

+0

'(腳|籃)(球)'可以寫成'(足球)球'。 – Amber 2011-05-03 00:14:10

回答

1

這是爲我工作。你有其他規則,你正在使用?

請確保您具備以下條件:

RewriteEngine on 
RewriteBase/
+0

長話短說,項目中的另一位開發人員將.htaccess中的所有內容都移至了apache,但我確信其他具有相同問題的人員需要考慮此選項,因此我會對其進行+1並標記爲正確答案。 – 2011-05-03 02:53:07

0

我會建議你使用+而不是*,在情況下,一些領域將是空的:

RewriteRule ^([^-]+)-([^-]+)-((foot|basket)(ball))-schedule$ /schedule.php?sport=$3&school=$1&year=$2&schedule=true [NC,L] 
相關問題