|
|
|
| Пол часа уже сижу, запутался в "трех деревьях"... ;)
$server_name = mail.ru;
$match = "#^http://{$server_name}|http://www\.{$server_name}[\S]+$#i";
|
Сторка "http://mail.ru" нормлаьно проходит, а "http://www.mail.ru" не проходит... :(
в чем касяк? | |
|
|
|
|
|
|
|
для: tAleks
(06.07.2008 в 13:00)
| | Интересно, точку после www Вы экранируете. А точку между mail и ru экранировать не нужно?
Кстати , что это за выражение такое mail.ru?
ps. Советую использовать preg_quote() . Иначе нарветесь когда-нибудь... | |
|
|
|
|
|
|
|
для: tAleks
(06.07.2008 в 13:00)
| | Символ | лучше использовать совместно с круглыми скобками явно указывая альтернативы
<?php
$server_name = mail.ru;
$match = "#^(http://{".preg_quote($server_name)."}|http://www\.{".preg_quote($server_name)."})[\S]+$#i";
?>
|
| |
|
|
|
|
|
|
|
для: cheops
(06.07.2008 в 18:55)
| | > $server_name = mail.ru;
при отрубленной диагностике трактуется как
$server_name = "mail"."ru";
| которое само по себе окажется эквивалентным
| |
|
|
|
|
|
|
|
для: Trianon
(06.07.2008 в 20:53)
| | Конечно же имелось в виду
<?php
$server_name = "mail.ru";
?>
|
| |
|
|
|
|
|
|
|
для: tAleks
(06.07.2008 в 13:00)
| | Что-то не понятно, вам поиск всех url нужен, или проверка на допустимость url?
Я сужу по вашему паттерну
^http://{$server_name}|http://www\.{$server_name}[\S]+$
|
насчет начала строки ^ и конец строки $. | |
|
|
|