[Регулярки & Mod_Rewrite] Задай вопрос, получи ответ.

Discussion in 'PHP' started by .:EnoT:., 19 Nov 2008.

Thread Status:
Not open for further replies.
  1. Go0o$E

    Go0o$E Members of Antichat

    Joined:
    27 Jan 2006
    Messages:
    304
    Likes Received:
    228
    Reputations:
    419
    PHP:
    <?php
    $txt
    ='<div class="popup-box" id="DirectLinks"> <div class="popup-box-btm"> <i>Ваши ссылки <br>для скачивания:</i> <div class="butonz"> <span class="size" title="Размер файла"><b>1 407 Мб</b></span> <a href="#" class="copy" id="1314675559" title="нажмите, чтобы скопировать эту ссылку в буфер обмена">скопировать</a> <a href="http://78.140.178.88/download50/let2309/3836.37e657aaec1bf459bec537349136_1/Let.the.Bullets.Fly.HDRip.avi" class="dwnld" title="нажмите, чтобы начать скачивание в браузере">скачать</a> </div> <span>http://78.140.178.88/download50/let2309/3836.37e657aaec1bf459bec537349136_1/Let.the.Bullets.Fly.HDRip.avi</span> </div> <img src="images/pop-awr.gif" alt="" /> </div>';

    $reg='(<b>)(.*?)(<\\/b>).*?(href)(=")((?:http|https)(?::\\/{2}[\\w]+)(?:[\\/|\\.]?)(?:[^\\s"]*))(")';    

    preg_match_all ("/".$reg."/is"$txt$matches);
    echo 
    "Url: ".$matches[6][0]."<br>";
    echo 
    "Размер: ".$matches[2][0];
    ?>
     
  2. warlock000

    warlock000 New Member

    Joined:
    6 Sep 2009
    Messages:
    36
    Likes Received:
    0
    Reputations:
    0
    $par =~ s/"Размер файла"><b>(.*)<\/b><\/span>(?:.*)скопировать</a> <a href=(.*)" class="dwnld"/$1$2/g
     
  3. Edward

    Edward Banned

    Joined:
    11 Feb 2010
    Messages:
    329
    Likes Received:
    21
    Reputations:
    -1
    Есть ответ сервера:
    Code:
    HTTP/1.1 302 Found Server: nginx/0.7.67 Date: 
    Sun, 25 Sep 2011 18:39:04 GMT Content-Type: text/html; 
    charset=iso-8859-1 Transfer-Encoding: chunked 
    Connection: keep-alive [B]Location: http://register.h18.ru/cgi-
    bin/reg_balancer.cgi[/B]
    Нужна регулярка, с помощью которой можно вытащить url, на который идет редирект:
    Code:
    http://register.h18.ru/cgi- 
    bin/reg_balancer.cgi
    Учесть, что в ответе от сервера после location может быть еще текст. Заранее спасибо.
     
  4. Skofield

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

    Joined:
    27 Aug 2008
    Messages:
    960
    Likes Received:
    392
    Reputations:
    58
    Извиняюсь. Не учел ведь, что после location что-то еще может быть. Тогда с учетом того, что в конце каждой строки стоит пробел, можно так:
    PHP:
    preg_match("#Location:\s(http://[\w[:graph:]\r\n]+)#"$str$match);
    print_r($match);
     
    #1584 Skofield, 25 Sep 2011
    Last edited: 26 Sep 2011
    1 person likes this.
  5. cardons

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

    Joined:
    19 Jul 2005
    Messages:
    778
    Likes Received:
    324
    Reputations:
    83
    PHP:
    <tr><td bgcolor="#DBDCDD">ljandrew@mail.ru</td><td bgcolor="#DBDCDD">c0d52a54850052b73bbd86758eb94fa2</td><td bgcolor="#DBDCDD">xOx</td></tr>
    Надо спарсить значение данных между <td bgcolor="#DBDCDD"> и </td>
     
  6. krypt3r

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

    Joined:
    27 Apr 2007
    Messages:
    1,507
    Likes Received:
    389
    Reputations:
    101
    Code:
    |<td bgcolor="#DBDCDD">(.*?)</td>|i
    
     
  7. Rastamanka

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

    Joined:
    26 Nov 2008
    Messages:
    429
    Likes Received:
    11
    Reputations:
    7
    Есть страница на которой есть вот такого вида текст
    HTML:
    <tr class="trd"><td><a href=/subdomain/edit.php?edit_domain_id=714908>cymacs.com</a><br><span> (4 hosts in use) <a target=_blank rel="nofollow" href=http://www.cymacs.com/>website</a></span></td><td>public</td><td><a href=/tools/contact.php?user_id=801165&subject=cymacs.com>cymacs</a></td><td>11 days ago (09/01/2011)</td></tr> 
    <tr class="trl"><td><a href=/subdomain/edit.php?edit_domain_id=250427>cyprusbank.ru</a><br><span> (4 hosts in use) <a target=_blank rel="nofollow" href=http://www.cyprusbank.ru/>website</a></span></td><td>private</td><td><a href=/tools/contact.php?user_id=149359&subject=cyprusbank.ru>bsvc</a></td><td>1189 days ago (06/10/2008)</td></tr> 
    <tr class="trd"><td><a href=/subdomain/edit.php?edit_domain_id=362255>cyt-aid.org</a><br><span> (4 hosts in use) <a target=_blank rel="nofollow" href=http://www.cyt-aid.org/>website</a></span></td><td>private</td><td><a href=/tools/contact.php?user_id=361578&subject=cyt-aid.org>kestel</a></td><td>651 days ago (11/30/2009)</td></tr> 
    <tr class="trl"><td><a href=/subdomain/edit.php?edit_domain_id=355167>cywong.ws</a><br><span> (4 hosts in use) <a target=_blank rel="nofollow" href=http://www.cywong.ws/>website</a></span></td><td>public</td><td><a href=/tools/contact.php?user_id=529077&subject=cywong.ws>cywong</a></td><td>686 days ago (10/26/2009)</td></tr> 
    <tr class="trd"><td><a href=/subdomain/edit.php?edit_domain_id=246600>d5a.net</a><br><span> (4 hosts in use) <a target=_blank rel="nofollow" href=http://www.d5a.net/>website</a></span></td><td>private</td><td><a href=/tools/contact.php?user_id=392982&subject=d5a.net>davantalus2</a></td><td>1206 days ago (05/24/2008)</td></tr>
    
    Из данного текста необходимо спарсить все значения edit_domain_id= так же следующий за ним название сайта и еще одно значение которое равно или public или private
     
  8. Melfis

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

    Joined:
    25 Apr 2011
    Messages:
    505
    Likes Received:
    105
    Reputations:
    53
    PHP:
    preg_match_all('/domain_id=(\d+)>([\w\.]+).*?<\/span><\/td><td>(\w+)<\/td>/ms'$content$match);
    print_r($match);
     
  9. BAGA4

    BAGA4 New Member

    Joined:
    17 Nov 2010
    Messages:
    26
    Likes Received:
    1
    Reputations:
    0
    Есть строка надо спарсить цыфру 1
    Вот полный код страницы

    http://upwap.ru/1762199 здесь в .txt
     
  10. Melfis

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

    Joined:
    25 Apr 2011
    Messages:
    505
    Likes Received:
    105
    Reputations:
    53
    /"><b>(\d+)/m - php
     
  11. chexec

    chexec Member

    Joined:
    19 Nov 2010
    Messages:
    67
    Likes Received:
    11
    Reputations:
    3
    /<b>(\d) <img/
     
  12. BAGA4

    BAGA4 New Member

    Joined:
    17 Nov 2010
    Messages:
    26
    Likes Received:
    1
    Reputations:
    0
    Можна полностью код с Прег матч!?
     
  13. #Wolf#

    #Wolf# Elder - Старейшина

    Joined:
    26 Mar 2008
    Messages:
    375
    Likes Received:
    166
    Reputations:
    16
    PHP:
    preg_match('/<b>(\d) <img/'$in$out);
    print_r($out);
    Алсо, если цифра там будет от 1 до 9, то норм, если больше(11 итд) то /<b>(\d+) <img/
     
    1 person likes this.
  14. AnGeI

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

    Joined:
    8 Dec 2008
    Messages:
    395
    Likes Received:
    79
    Reputations:
    16
    регулярка: ^(<a href=)(<br/>)$
    Нужно спарсить от <a href= (включительно) до <div class="bline"> (включительно), вся проблема в многострочности.
     
  15. Melfis

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

    Joined:
    25 Apr 2011
    Messages:
    505
    Likes Received:
    105
    Reputations:
    53
    Нихрена не понял, что надо выцепить Х_х. Добавь в пост куски текста, которые должны получится после регулярки.
     
  16. AnGeI

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

    Joined:
    8 Dec 2008
    Messages:
    395
    Likes Received:
    79
    Reputations:
    16
    http://pastebin.com/PMU8TDFG

    Выцепить нужно сообщения (они подряд идут), вида:
     
    #1596 AnGeI, 12 Oct 2011
    Last edited: 12 Oct 2011
  17. Melfis

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

    Joined:
    25 Apr 2011
    Messages:
    505
    Likes Received:
    105
    Reputations:
    53
    PHP:
    preg_match_all('/<a\shref="\/id.+?<div class="bline">/ms'$text$match);
    print_r($match);
     
    1 person likes this.
  18. FaVi

    FaVi New Member

    Joined:
    24 Jul 2011
    Messages:
    0
    Likes Received:
    0
    Reputations:
    0

    Надо спарсить значение данных между <input name="authenticity_token" type="hidden" value="
    и " /></div>
     
  19. krypt3r

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

    Joined:
    27 Apr 2007
    Messages:
    1,507
    Likes Received:
    389
    Reputations:
    101
    FaVi
    Code:
    |<input.+?name="authenticity_token".+?value="(.*?)"|
    
     
  20. FaVi

    FaVi New Member

    Joined:
    24 Jul 2011
    Messages:
    0
    Likes Received:
    0
    Reputations:
    0
    krypt3r , вот так?

     
Thread Status:
Not open for further replies.