[Регулярные выражения.]

Discussion in 'PHP' started by Deathdreams, 15 Nov 2009.

  1. Deathdreams

    Deathdreams Elder - Старейшина

    Joined:
    8 Nov 2008
    Messages:
    342
    Likes Received:
    116
    Reputations:
    5
    Есть текст наподобие этого:

    Code:
    
        <ul class="category-list category-list-wide">
          <li  class="unread" >
      <span><nobr>10 ноября</nobr>, 04:18</span>
      <h3><a href="#">12111 </a></h3>
      <p>Inbox MSG</p>
    </li>
        </ul>
    
    
    Как регуляркой выдрать всё, что находится между
    Code:
    <ul class="category-list category-list-wide"> 
    и

    Code:
    </ul>
    Обязательное условие, чтобы в
    Code:
    <li  class="unread" >
    класс был именно "unread" (class="unread")
     
    1 person likes this.
  2. eLWAux

    eLWAux Elder - Старейшина

    Joined:
    15 Jun 2008
    Messages:
    860
    Likes Received:
    616
    Reputations:
    211
    /<ul\s+class="category\-list category\-list\-wide">(.+?<li\s+class="unread".+?)<\/ul>/is;
     
    1 person likes this.
  3. REBUUS

    REBUUS Active Member

    Joined:
    6 Apr 2009
    Messages:
    314
    Likes Received:
    111
    Reputations:
    9
    preg_match('#<ul class="category-list category-list-wide">(.*)?</ul>#', 'твой текст', $aaa);
    echo $aaa[0] ;

    как то так
     
    #3 REBUUS, 15 Nov 2009
    Last edited: 15 Nov 2009
  4. Deathdreams

    Deathdreams Elder - Старейшина

    Joined:
    8 Nov 2008
    Messages:
    342
    Likes Received:
    116
    Reputations:
    5
    eLWAux Спасибо большое)

    Тему дел
     
  5. Deathdreams

    Deathdreams Elder - Старейшина

    Joined:
    8 Nov 2008
    Messages:
    342
    Likes Received:
    116
    Reputations:
    5
    Я так пытался, не хотел выдирать