- Регистрация
- 5 Июл 2007
- Сообщения
- 218
- Реакции
- 488
- Автор темы
- Заблокирован
- #1
Всем привет. Прошу помочь составить регулярное выражение, чтобы его смысл не изменился. У самого не получается, уже испробовал разные варианты. Ещё не понимаю что значит конструкция (?: )
Вот код для отладки:
Раньше работало, сейчас не работает, т.к. код маркета изменился. Нужно сделать так чтобы структура вывода оставалась прежней...
Вот код для отладки:
PHP:
<?php
$str=file_get_contents('http://market.yandex.ru/guru.xml?hid=294661&CMD=-RR=0,0,0,0-PF=1801946%2BEQ%2Bsel%2B6715129-VIS=201E2-CAT_ID=971072-BPOS=10-EXC=1-PG=10&greed_mode=false');
$pattern = '/<h3 class="b-offers__title"><a [a-zA-Z0-9\-\=\"]{0,} class="b-offers__name" href="(.*)">(.*)<\/a>(?:<sup class="b-offers__new">новинка<\/sup>|)(?:<span class="b-rating b-rating_type_10 b-rating_type_model">.*<\/span>|)<\/h3><div class="b-offers__price">(.*)<\/div><p class="b-offers__spec">(.*)<\/p>/sU';
preg_match_all($pattern,$str,$test);
print_R($test);
?>
Раньше работало, сейчас не работает, т.к. код маркета изменился. Нужно сделать так чтобы структура вывода оставалась прежней...