[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: регулярка, не пойму ошибки
Guest
$url = http://site1.ru/page.php?t=5&s=rand
preg_match("/page\.php(?!s\=rand)/i", $url) ;


Почему регулярка возвращает true?

Как сделать чтобы она при наличии s=rand вернула false ?



Спустя 2 минуты, 13 секунд (27.08.2011 - 17:09) Guest написал(а):
извиняюсь за повтор темы, просто страница не загрузилась, я подумал сообщение не отправилось =)

Спустя 58 минут, 7 секунд (27.08.2011 - 18:07) Guest написал(а):
тема все еще актуальна, замучался уже.. =)

Спустя 40 минут, 48 секунд (27.08.2011 - 18:48) walerus написал(а):
Может сделать от обратного ?

if ( preg_match( "/s=rand/iUs", $url ) )
return false;
else
return
true;

Спустя 29 минут, 11 секунд (27.08.2011 - 19:17) inpost написал(а):
walerus
зачем тебе 2 модификатора: Us ?
Хотя идея правильная, можно сделать от обратного, а не через исключения.

Спустя 23 минуты, 59 секунд (27.08.2011 - 19:41) neadekvat написал(а):
А почему здесь не подходит stripos?

Спустя 4 минуты, 25 секунд (27.08.2011 - 19:45) Guest написал(а):
walerus

нельзя сделать от обратного ( получится лишняя регулярка), так как отсеять лишнее - это второстепенная задача здесь, а основная это левая часть.

в итоге вот так получилось всего-то навсего
preg_match("/page\.php(?!(.)*s\=rand)/i", $url) ;


всем спс

Спустя 7 минут, 16 секунд (27.08.2011 - 19:53) neadekvat написал(а):
Ага, всего-то навсего. Первоклашка поймет.

Спустя 39 минут, 51 секунда (27.08.2011 - 20:32) Invis1ble написал(а):
Guest
зачем "=" экранируешь?
#page\.php(?!.*s=rand)#i

Спустя 4 часа, 1 минута, 9 секунд (28.08.2011 - 00:34) walerus написал(а):
Цитата
walerus
зачем тебе 2 модификатора: Us ?
Хотя идея правильная, можно сделать от обратного, а не через исключения.

inpost - на автомате написал biggrin.gif

Цитата
Ага, всего-то навсего. Первоклашка поймет.

neadekvat +1 cool.gif

Спустя 8 минут, 47 секунд (28.08.2011 - 00:42) Invis1ble написал(а):
что тут непонятного, ?! - опережающая негативная проверка или негативный просмотр вперед еще называют
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.