Технологии

Решено

Регулярные выражения - вопрос №798131

Здравствуйте! У меня проблема с регулярными выражениями и функцией preg_match. есть страница, полученная через curl и обработанная функцией htmlspecialchars.

Вот кусуок кода:

__run ico-trade-status ico-trade-status-runs active"><i>●</i><span>Публикуется на доске</span></a><a href="/trade/hideOffer?id=180274&from=myoffers" class="__susp ico-trade-status ico-trade-status-suspended"><i>║</i><span>Не показывать на доске</span></a></div> </td> <td class=«td-admin»> <a href="/trade/shiftUp?id=180274" class=«ico ico-btn ico-shiftup» title=«Поднять»> <i>⇧</i> <span>Поднять</span> </a> <a href='/trade/editOffer?id=180274' class=«ico ico-edit» title=«Редактировать»> <i>✎</i> <span>Редактировать</span> </a> </td> </tr> <tr> <td class=«td-category»> <a class=«categorycategory-sale»> <strong>Продам</strong> </a> 

нужно вытащить шесть цифр, стоящих между 'shiftUp.id=' и '" class=«ico ico-b'
таких шестизначных чисел встречается во всем коде 5, все они различны. 

октябрь 20, 2013 г.

  • Всего ответов: 1

  • Дмитрий - аватарка

    Дмитрий

    156-й в Технологиях

    Шаблон для поиска искомой строки:

    $pattern = "'(shiftUp\?id=)[\d]+'";

    preg_match($pattern, $string, $matches);

     После preg_match, в массиве $matches будут все найденные строки вида "shiftUp?id=180274". Далее просто обрезаем строку и получаем id

    $shiftUpId = $matches[0];

    $id = str_replace(«shiftUp?id=»,"", $shiftUpId);

     

    октябрь 21, 2013 г.
    Ответ понравился автору
    Лучший ответ по мнению автора

Похожие вопросы

Привіт, маю проблему з JS

январь 3, 2024 г.

Технологии