Kredov long

Проблема с регуляркой

Тема в разделе "PHP", создана пользователем partizzzzzan, 18 сен 2013.

  1. partizzzzzan

    partizzzzzan

    Регистрация:
    21 июн 2012
    Сообщения:
    20
    Симпатии:
    1
    есть такой текст
    HTML:
    <a href="javascript:void(0);" class="tooltip" title="Blue" onclick="$('.jqzoom').attr('onclick', 'turnOn(0)'); $('#alt_gallery').remove(); $('<div id=\'alt_gallery\'>Blue <span><a href=\'/img/manufacture/1/5/34221.jpeg\' target=\'blank\'>Скачать изображение</a></span></div>').appendTo('#imgdiv');" rel="{gallery: 'gallery', smallimage: '/img/manufacture/1/5/34222.jpeg', largeimage: '/img/manufacture/1/5/34221.jpeg'}"><img title="Blue" src="/img/manufacture/1/5/34224.jpeg" alt="Коляска Jetem Twist" /><span class="classic">Blue</span></a><a href="javascript:void(0);" class="tooltip" title="Grey" onclick="$('.jqzoom').attr('onclick', 'turnOn(1)'); $('#alt_gallery').remove(); $('<div id=\'alt_gallery\'>Grey <span><a href=\'/img/manufacture/1/5/34231.jpeg\' target=\'blank\'>Скачать изображение</a></span></div>').appendTo('#imgdiv');" rel="{gallery: 'gallery', smallimage: '/img/manufacture/1/5/34232.jpeg', largeimage: '/img/manufacture/1/5/34231.jpeg'}"><img title="Grey" src="/img/manufacture/1/5/34234.jpeg" alt="Коляска Jetem Twist" /><span class="classic">Grey</span></a><a href="javascript:void(0);" class="tooltip" title="Orange/Grey" onclick="$('.jqzoom').attr('onclick', 'turnOn(2)'); $('#alt_gallery').remove(); $('<div id=\'alt_gallery\'>Orange/Grey <span><a href=\'/img/manufacture/1/5/34241.jpeg\' target=\'blank\'>Скачать изображение</a></span></div>').appendTo('#imgdiv');" rel="{gallery: 'gallery', smallimage: '/img/manufacture/1/5/34242.jpeg', largeimage: '/img/manufacture/1/5/34241.jpeg'}"><img title="Orange/Grey" src="/img/manufacture/1/5/34244.jpeg" alt="Коляска Jetem Twist" /><span class="classic">Orange/Grey</span></a><a href="javascript:void(0);" class="tooltip" title="Pistacio" onclick="$('.jqzoom').attr('onclick', 'turnOn(3)'); $('#alt_gallery').remove(); $('<div id=\'alt_gallery\'>Pistacio <span><a href=\'/img/manufacture/1/5/34251.jpeg\' target=\'blank\'>Скачать изображение</a></span></div>').appendTo('#imgdiv');" rel="{gallery: 'gallery', smallimage: '/img/manufacture/1/5/34252.jpeg', largeimage: '/img/manufacture/1/5/34251.jpeg'}"><img title="Pistacio" src="/img/manufacture/1/5/34254.jpeg" alt="Коляска Jetem Twist" /><span class="classic">Pistacio</span></a><a href="javascript:void(0);" class="tooltip" title="Violet" onclick="$('.jqzoom').attr('onclick', 'turnOn(4)'); $('#alt_gallery').remove(); $('<div id=\'alt_gallery\'>Violet <span><a href=\'/img/manufacture/1/5/34261.jpeg\' target=\'blank\'>Скачать изображение</a></span></div>').appendTo('#imgdiv');" rel="{gallery: 'gallery', smallimage: '/img/manufacture/1/5/34262.jpeg', largeimage: '/img/manufacture/1/5/34261.jpeg'}"><img title="Violet" src="/img/manufacture/1/5/34264.jpeg" alt="Коляска Jetem Twist" /><span class="classic">Violet</span></a><a href="javascript:void(0);" class="tooltip" title="Blue" onclick="$('.jqzoom').attr('onclick', 'turnOn(5)'); $('#alt_gallery').remove(); $('<div id=\'alt_gallery\'>Blue <span><a href=\'/img/manufacture/1/5/34281.jpeg\' target=\'blank\'>Скачать изображение</a></span></div>').appendTo('#imgdiv');" rel="{gallery: 'gallery', smallimage: '/img/manufacture/1/5/34282.jpeg', largeimage: '/img/manufacture/1/5/34281.jpeg'}"><img title="Blue" src="/img/manufacture/1/5/34284.jpeg" alt="Коляска Jetem Twist" /><span class="classic">Blue</span></a>
    нужно найти:
    largeimage: '/img/manufacture/1/5/34221.jpeg'
    largeimage: '/img/manufacture/1/5/34231.jpeg'
    largeimage: '/img/manufacture/1/5/34241.jpeg'
    largeimage: '/img/manufacture/1/5/34251.jpeg'
    largeimage: '/img/manufacture/1/5/34261.jpeg'
    largeimage: '/img/manufacture/1/5/34281.jpeg'

    применяю регулярку:
    /largeimage: [\S]+\.(?:jpeg|jpg|gif)\'/
    В онлайн-конструкторах регулярок это срабатывает,
    но функция
    PHP:
    preg_match_all("/largeimage: [\S]+\.(?:jpeg|jpg|gif)\'/"$str$img)
    возвращает только первое вхождения. остальные не удается получить... не знаю в чем проблема.
     
  2. LDSP

    LDSP

    Регистрация:
    5 сен 2013
    Сообщения:
    30
    Симпатии:
    10
    Вконце добавьте глобальный поиск (/g)
    |jpg|gif)\'/g", $str, $img
     
    partizzzzzan нравится это.
  3. partizzzzzan

    partizzzzzan

    Регистрация:
    21 июн 2012
    Сообщения:
    20
    Симпатии:
    1
    Все работает, спасибо!