Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Помогите с регулярным выражением
Форумы портала PHP.SU » PHP » Регулярные выражения » Помогите с регулярным выражением

Страниц (1): [1]
 

1. Delovoy - 31 Мая, 2011 - 11:38:32 - перейти к сообщению
Добрый день, уважаемый знатоки

Получаю страницу с помощью Curl и из полученной страницы нужно получить ссылку на изображение

ссылка имеет вид
http://адрес сайта/captcha/38b0ce89c37bc13d5b d705865abac40a.png

я попробовал составить регулярное выражение

PHP:
скопировать код в буфер обмена
  1. preg_match_all("/(^http.*captcha.*png$)/iu", $slando_page, $out_arr);


рассуждения были такие:
ссылка должна начинаться с http : ^http
после http может быть произвольное количество разных символов: .*
внутри этого произвольного количества должно быть слово captcha
после слова captcha тоже может быть произвольное количество символов: .*
ссылка должна заканчиваться png : png$

и два модификатора:
i - регистронезависимость (ну на всякий случай)
u - UTF-8, так как страницу я получаю в utf-8
по крайней мере надеюсь на это, так как при получении страницы в заголовке передаю
Accept-Charset: utf-8;

результат - НИ ОДНОЙ ССЫЛКИ НЕ НАЙДЕНО!

подскажите как правильно? хочу разобраться!
2. Toxa - 31 Мая, 2011 - 11:41:57 - перейти к сообщению
попробуй
PHP:
скопировать код в буфер обмена
  1. preg_match_all("/captcha\/\w+\.png/iu", $slando_page, $out_arr);
3. Delovoy - 31 Мая, 2011 - 12:04:45 - перейти к сообщению
уже заработало, вот в таком варианте

PHP:
скопировать код в буфер обмена
  1. preg_match_all("/http.*captcha.*png/iu", $slando_page, $out_arr);
4. DlTA - 02 Июня, 2011 - 04:15:46 - перейти к сообщению
Delovoy пишет:
уже заработало, вот в таком варианте

больше на костыль похоже))
хотя если не предвидится изменение каталога расположения изображений то бут работать.

 

Powered by ExBB FM 1.0 RC1