За последние 24 часа нас посетили 22511 программистов и 1202 робота. Сейчас ищут 746 программистов ...

Двойной выбор

Тема в разделе "Регулярные выражения", создана пользователем A41524567, 30 май 2018.

  1. A41524567

    A41524567 Активный пользователь

    С нами с:
    31 янв 2013
    Сообщения:
    74
    Симпатии:
    0
    Help

    есть текст:

    *************
    <div>какой-то текст произвольный ля-дя<span>ИСКОМЫЙ ТЕКСТ1</span>какой-то произвольный текст</div>
    <div>чето есть</div>
    <span>есть текст231</span>
    <div>какой-то текст произвольный <span>ИСКОМЫЙ ТЕКСТ2</span>ля-ля, тополя какой-то произвольный текст</div>
    <div>чето есть</div>
    <span>есть текст</span>
    *************

    какой одной регуляркой получить только ИСКОМЫЙ ТЕКСТ1 и ИСКОМЫЙ ТЕКСТ2
     
  2. Deonis

    Deonis Старожил

    С нами с:
    15 фев 2013
    Сообщения:
    1.521
    Симпатии:
    504
    Вы мазохист?
    Пример в песочнице
    PHP:
    1. <?php
    2. $doc = new \DOMDocument;
    3. $doc->loadHTML('<?xml encoding="UTF-8">' .$str);
    4. $xpath = new \DOMXpath($doc);
    5. $elems = $xpath->query("//div/span");
    6. foreach($elems as $span) {
    7.     echo $span->nodeValue . PHP_EOL;
    8. }
     
  3. A41524567

    A41524567 Активный пользователь

    С нами с:
    31 янв 2013
    Сообщения:
    74
    Симпатии:
    0

    конечно нет, спасибо за реальный ответ!!!!!!!!!!!!!
     
  4. username

    username Новичок

    С нами с:
    6 июл 2017
    Сообщения:
    225
    Симпатии:
    17
    PHP:
    1. <?php
    2. $str = <<<EOL
    3. <div>какой-то текст произвольный ля-дя<span>ИСКОМЫЙ ТЕКСТ1</span>какой-то произвольный текст</div>
    4. <div>чето есть</div>
    5. <span>есть текст231</span>
    6. <div>какой-то текст произвольный <span>ИСКОМЫЙ ТЕКСТ2</span>ля-ля, тополя какой-то произвольный текст</div>
    7. <div>чето есть</div>
    8. <span>есть текст</span>
    9. EOL;
    10.  
    11. preg_match_all("/ИСКОМЫЙ\sТЕКСТ\d/ismU",$str,$mas);
    12. var_dump($mas[0]);
    \s в примере - пробел
    \d - любая цифра
     
  5. Deonis

    Deonis Старожил

    С нами с:
    15 фев 2013
    Сообщения:
    1.521
    Симпатии:
    504
    @username, подняли настроение. Уже не плохо ;)