(php) Поиск в переменной

Discussion in 'PHP' started by Fantom3D, 30 Jul 2010.

  1. Fantom3D

    Fantom3D New Member

    Joined:
    23 Aug 2009
    Messages:
    71
    Likes Received:
    2
    Reputations:
    -1
    Нужно произвести поиск в переменной, и вынуть оттуда конкретные значения.

    Переменная $getDetails содержит html вариант страницы, нужно вынуть оттуда несколько значений, например ссылку на постер. Выглядит вот так:

    PHP:
    (тут остальное содержимое)...<img src="http://i8.fastpic.ru/big/2010/0729/61/34e553f6e1c3a61ce7539713648cbf61.jpg" width=200 border=0></a></div><script>...(тут остальное содержимое)
    Где
    PHP:
    http://i8.fastpic.ru/big/2010/0729/61/34e553f6e1c3a61ce7539713648cbf61.jpg
    - искомая ссылка. Нужно каким-то образом получить эту ссылку, как я понимаю, вынуть то, что находится между:

    PHP:
    <img src="
    и

    PHP:
    " width=200 border=0></a></div><script>



    Помогите. :confused:
     
  2. nullik

    nullik Member

    Joined:
    26 Feb 2010
    Messages:
    116
    Likes Received:
    44
    Reputations:
    1
  3. Fantom3D

    Fantom3D New Member

    Joined:
    23 Aug 2009
    Messages:
    71
    Likes Received:
    2
    Reputations:
    -1
    Да, я это понял, но у меня с регулярками совсем плохо, пытался но не вышло((( Потому тут и написал... :confused:
     
  4. Compton

    Compton Member

    Joined:
    31 Jan 2010
    Messages:
    290
    Likes Received:
    25
    Reputations:
    0
    PHP:
    preg_match('/<img src="(.*)" width=200 border=0>/',$getDetails,$img);
     
  5. Fantom3D

    Fantom3D New Member

    Joined:
    23 Aug 2009
    Messages:
    71
    Likes Received:
    2
    Reputations:
    -1
    Спасибо, работает))
     
  6. Fantom3D

    Fantom3D New Member

    Joined:
    23 Aug 2009
    Messages:
    71
    Likes Received:
    2
    Reputations:
    -1
    Простите, но как тут:

    PHP:
    "><font color=blue>Амазония / Amazone / 2000 / ПМ / DVD-5</font></a></div><tr>
    Извлечь нужно:

    HTML:
    Амазония / Amazone / 2000 / ПМ / DVD-5

    Так как вы написали тут не хочет почему-то проходить..
     
  7. Compton

    Compton Member

    Joined:
    31 Jan 2010
    Messages:
    290
    Likes Received:
    25
    Reputations:
    0
    PHP:
    preg_match('/<font color=blue>(.*)<\/font>/',$getDetails,$text);
     
  8. |qbz|

    |qbz| Banned

    Joined:
    25 Dec 2009
    Messages:
    385
    Likes Received:
    169
    Reputations:
    65
    если не любишь регулярки как я, но надо выдирать что либо из текста, то тут полезна функция explode();
    вот код функции, которая принимает три параметра - это текст откуда выдирать, что стоит ПЕРЕД искомым и что ПОСЛЕ
    PHP:
    function vydiratel($text,$before,$after)
    {
             
    $text explode($before,$text);
             
    $text explode($after,$text[1]);
             
    $text $text[0];
             
    retrurn($text);
    }
    функция конечно далека от регулярок, но зная пхп можно все сделать на чистом експлоде
    пример для первого поста:

    PHP:
    $iskomoe vydiratel($getDetails,'src="','"');
     
    1 person likes this.