ФорумПрограммированиеPHP для идиотов → Регулярки

Регулярки

  • drchen

    Сообщения: 12 Репутация: N Группа: Кто попало

    Spritz 3 марта 2012 г. 11:33

    Здравствуйте, пишу парсер.
    Есть конструкция типа
    <div id="tab_scene">
    <center>

    <img…>
    <img…>
    <img…>
    </center>
    </div>

    Цель - распарсить все имэйджи.
    Мои действия:
    $template = "/<div id=\"tab_scene\">.*?<img(.+?)>.*?<\/div>/s";
    preg_match_all($template, $content, $maches);

    В итоге получаю только содержание одного имэйджа из 3х.
    Как поправить ситуацию?
  • master

    Сообщения: 3236 Репутация: N Группа: Джедаи

    Spritz 3 марта 2012 г. 11:35, спустя 1 минуту 32 секунды

    использовать simplexml
    не всё полезно, что в swap полезло
  • drchen

    Сообщения: 12 Репутация: N Группа: Кто попало

    Spritz 3 марта 2012 г. 12:10, спустя 35 минут 5 секунд


    использовать simplexml
    только с помощью регулярки необходимо
  • master

    Сообщения: 3236 Репутация: N Группа: Джедаи

    Spritz 3 марта 2012 г. 12:29, спустя 19 минут 33 секунды

    drchen, ты знаешь, мне похуй какая у тебя проблема, что ты умеешь, а что нет. но ты либо используешь simplexml либо у тебя нихуя не получится
    не всё полезно, что в swap полезло
  • drchen

    Сообщения: 12 Репутация: N Группа: Кто попало

    Spritz 3 марта 2012 г. 12:38, спустя 8 минут 40 секунд


    drchen, ты знаешь, мне похуй какая у тебя проблема, что ты умеешь, а что нет. но ты либо используешь simplexml либо у тебя нихуя не получится
    не говори что мне делать и я не скажу куда тебе пойти.ок ок ок?
    Я знаю как это сделать в два шага. Хочу в один
  • phpdude

    Сообщения: 26624 Репутация: N Группа: в ухо

    Spritz 3 марта 2012 г. 12:39, спустя 39 секунд

    В итоге получаю только содержание одного имэйджа из 3х.
    Как поправить ситуацию?

    $template = "/<div id=\"tab_scene\">.*?<img(.+?)>.*?<img(.+?)>.*?<img(.+?)>.*?<\/div>/s";
    :D
    Сапожник без сапог
  • Sinkler

    Сообщения: 8096 Репутация: N Группа: в ухо

    Spritz 3 марта 2012 г. 12:41, спустя 2 минуты 51 секунду

    $template = "/<div id=\"tab_scene\">.*?<img(.+?)>.*?<img(.+?)>.*?<img(.+?)>.*?<\/div>/s";

    xDDD
  • drchen

    Сообщения: 12 Репутация: N Группа: Кто попало

    Spritz 3 марта 2012 г. 13:01, спустя 19 минут 48 секунд


    В итоге получаю только содержание одного имэйджа из 3х.
    Как поправить ситуацию?

    $template = "/<div id=\"tab_scene\">.*?<img(.+?)>.*?<img(.+?)>.*?<img(.+?)>.*?<\/div>/s";
    :D
    интересно) Но не универсально) Имейджев может быть не 3(
  • phpdude

    Сообщения: 26624 Репутация: N Группа: в ухо

    Spritz 3 марта 2012 г. 13:03, спустя 1 минуту 20 секунд

    drchen, каков вопрос, таков ответ. топик закрываю
    Сапожник без сапог
  • drchen

    Сообщения: 12 Репутация: N Группа: Кто попало

    Spritz 3 марта 2012 г. 13:08, спустя 5 минут 30 секунд


    drchen, каков вопрос, таков ответ. топик закрываю
    потому, что такого способа нет или потому, что ты такого способа не знаешь?
  • Sinkler

    Сообщения: 8096 Репутация: N Группа: в ухо

    Spritz 3 марта 2012 г. 13:09, спустя 1 минуту 22 секунды

    drchen, зря ты на местных авторитетов… :DDD
  • drchen

    Сообщения: 12 Репутация: N Группа: Кто попало

    Spritz 3 марта 2012 г. 13:10, спустя 59 секунд


    drchen, зря ты на местных авторитетов… :DDD
    я хочу уточнить, не более. Я ведь не знаю, существует ли вообще такой способ)
  • phpdude

    Сообщения: 26624 Репутация: N Группа: в ухо

    Spritz 3 марта 2012 г. 13:28, спустя 17 минут 52 секунды

    проще и логичнее всего - в 2 этапа. если даже сделаешь в 1, то поддерживать этот ГАВНОкод будет нереально. поддержка - главное.
    Спустя 18 сек.
    написать и арман обезьяна может
    Сапожник без сапог
  • drchen

    Сообщения: 12 Репутация: N Группа: Кто попало

    Spritz 3 марта 2012 г. 13:36, спустя 8 минут 5 секунд

    проще и логичнее всего - в 2 этапа
    я так и сделал. Но полезнее для себя было бы научиться это делать в один шаг)
  • phpdude

    Сообщения: 26624 Репутация: N Группа: в ухо

    Spritz 3 марта 2012 г. 13:38, спустя 2 минуты


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

    не пожрав не посрешь
    Сапожник без сапог

Пожалуйста, авторизуйтесь, чтобы написать комментарий!