Regex, чтобы взять строку до дефиса - PullRequest
0 голосов
/ 03 мая 2011

Я думаю, что у меня проблема, так как я использую два ключевых значения регулярных выражений в этом выражении.

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

Я это поймаю, когда кто-то наберет

domain.com / Мичиган-1999-футбол-график

. В настоящее время он не распознает эту строку с этой строкой htaccess, и я на 99% это связано с частью регулярного выражения. Я думаю, что это потому, что [^ -] часть строки. Я надеюсь, что это захватывает данные до дефиса, но я думаю, что есть проблема, так как оба являются ключевыми символами в регулярном выражении.

Ответы [ 2 ]

1 голос
/ 03 мая 2011

Это работает для меня как есть. У вас есть другие правила, которые вы используете?

Убедитесь, что у вас есть следующее:

RewriteEngine on
RewriteBase / 
0 голосов
/ 03 мая 2011

Я бы посоветовал вам использовать + вместо *, если некоторые поля будут пустыми:

RewriteRule ^([^-]+)-([^-]+)-((foot|basket)(ball))-schedule$ /schedule.php?sport=$3&school=$1&year=$2&schedule=true [NC,L]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...