Распарсить сервис

Тема в разделе "Регулярные выражения", создана пользователем dig555, 9 сен 2009.

Статус темы:
Закрыта.
Модераторы: xpert13
  1. dig555

    dig555

    Регистр.:
    22 июн 2007
    Сообщения:
    363
    Симпатии:
    148
    Есть в рунете достаточно полезный в некоторых случаех сервис - сеумка.
    Проблема в том, что данные он отдаёт не совсем в нужной мне форме.
    Но кое-что можно вытащить из их таблиц.
    В таблице куча tr следующего вида:
    HTML:
    <tr class="sectiontableentry1 groupid-1" id="t1r11" height="28"><td class="left-border"><div align="center"><input name="PhraseIDs[]" value="6 цифр" class="cbboxes" id="cb11" type="checkbox"></div></td><td><div style="position: relative; font-size: 9px; padding-right: 5px; color: rgb(102, 115, 140); width: 62px;" class="rright" id="yamastatd-6 цифр"></div><div class="clearl lpadding-5">НУЖНЫЙ МНЕ КЕЙ</div><div class="clearl graytext lpadding-5"><a id="aurl6 цифр" href="НУЖНЫЙ МНЕ УРЛ" title="что-угодно" class="graytext">обрезанный урл</a></div></td></tr>
    Нужно получить массив $arr[], где $arr[][0] - НУЖНЫЙ МНЕ КЕЙ, a $arr[][1] - НУЖНЫЙ МНЕ УРЛ.
     
  2. andrnag

    andrnag

    Регистр.:
    26 мар 2008
    Сообщения:
    350
    Симпатии:
    124
    PHP:
    preg_match_all('|<div class="clearl lpadding-5">(.*?)</div>.*?<a id="aurl\d{6}" href="(.*?)"|U'$string$arrPREG_SET_ORDER);
     
  3. dig555

    dig555

    Регистр.:
    22 июн 2007
    Сообщения:
    363
    Симпатии:
    148
    :nezn: Что-то print_r ничего не отдаёт на строке-примере. А на самом файле отдаёт, но совсем не то, что требовалось.



    UPD: Впрочем, уже неактуально. Распарсил сам в несколько приёмов. Прошу закрыть.
     
  4. pori

    pori Постоялец

    Регистр.:
    30 авг 2009
    Сообщения:
    114
    Симпатии:
    18
    Все правильно отдает по тестовой строке. Только нужный кей в $arr[][1], нужный урл - $arr[][2]

    В тестовой строке не забудь заменить
    PHP:
    id="aurl6 цифр"
    на 6 цифр ;)
     
Статус темы:
Закрыта.