Здравствуйте! Прошу помощи для правильного составления регекса. Шаблон такой:
1. строка начинается на novosti
2. После novosti/page/ могут быть цифры, тогда и заканчиваться на цифры. Пример novosti/page/26
3. Еще строка может принимать вид novosti/page/allnews
Все остальное игнорить, типа novosti/auto
RewriteRule ^novosti/page/([0-9]+)|(allnews)$ ваш скрипт [L]
Реальный путь к скрипту как выглядит?
Может, сюда лучше два правила написать?
alex12060
10.03.2011 - 14:34
Молодец Елена)
Елена, спасибо, но не выходит((. Надо типа этого
<?php if(ereg("регекс", $this->uri->string())) : ?>
выводим новость, если страница novosti
<?php endif; ?>
Ну вы бы с самого начала сказали, что вам не в htaccess правило...
ereg с какой-то там версии deprecated, я ее уже не использую.
$pattern = "|^novosti/page/([0-9]+)|(allnews)|";
<?php if(preg_match($pattern, $this->uri->string())) : ?>
Лучше бы привели пример, как у вас выглядит $this->uri->string()
alex12060
10.03.2011 - 14:59
С версии 5.3 убран ereg
Используй preg()
$this->uri->string() выглядит как novosti, или novosti/page/тут_числа, или novosti/page/allnews
Trianon
10.03.2011 - 15:33
$pattern = "!^novosti(/page/([0-9]+|allnews))?$!";
Trianon, спасибо ,попробовал, но все равно отказывается. Но не все так плохо для меня! Заказчик решил отказаться от задумки, короче, проблема испарилась...
Выражаю всем огромную благодарность за оперативную поддержку! Отдельный поклон
Лена
serega262
27.01.2013 - 17:38
Всем доброго времени суток.
Помогите решить проблему.
1. Есть регекс /([^\s]{50})/
2. Надо сделать так чтобы он не срабатывал в случае если исходная строка начинается на
http:\\www.kinopoisk.org.
или
http:\\kinopoisk.org
P.S. По ссылкам заходить не обязательно.
Спасибо.
Быстрый ответ:
Powered by dgreen
Здесь расположена полная версия этой страницы.