Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php] ułożenie regexpa
Balon
post
Post #1





Grupa: Zarejestrowani
Postów: 422
Pomógł: 0
Dołączył: 14.12.2005
Skąd: Wałbrzych

Ostrzeżenie: (0%)
-----


Kod
<a href="/dj+ivy+o-party+pirate-mp3-334554.html">
                    <font class="toplinks">

                        DJ Ivy O - Party Pirate                    </font>

i mam np takich 10 na stronie linkow i potrzebuje wyciagac z tego link, ale nie chce to dzialac... moze dlatego ze sa tabulatory i te entery ?

prosze o pomoc
Go to the top of the page
+Quote Post
Kicok
post
Post #2





Grupa: Zarejestrowani
Postów: 1 033
Pomógł: 125
Dołączył: 17.09.2005
Skąd: Żywiec

Ostrzeżenie: (0%)
-----


  1. <?php
  2. preg_match_all('#href="([^"]*)"#i', $txt, $array);
  3.  
  4. print_r($array[1]);
  5. ?>



Lub jeśli nie wiesz czy link będzie w apostrofach, czy w cudzysłowiu, czy też w ogóle niczym nie będzie ograniczony, to:
  1. <?php
  2. preg_match_all('#href=(?:'|")?([^s"']*)(?:'|")?#i', $txt, $array);
  3.  
  4. print_r($array[1]);
  5. ?>
Go to the top of the page
+Quote Post
Balon
post
Post #3





Grupa: Zarejestrowani
Postów: 422
Pomógł: 0
Dołączył: 14.12.2005
Skąd: Wałbrzych

Ostrzeżenie: (0%)
-----


takie rzeczy to i ja wiem.... ale co jak na stronie sa tez inne linki ? ....
Go to the top of the page
+Quote Post
Kicok
post
Post #4





Grupa: Zarejestrowani
Postów: 1 033
Pomógł: 125
Dołączył: 17.09.2005
Skąd: Żywiec

Ostrzeżenie: (0%)
-----


Cytat
ale co jak na stronie sa tez inne linki ?


A co, to ja mam wiedzieć jakie linki cie interesują, a jakie nie? Możesz przeczesać jakąś pętlą tą tablicę, i odrzucić linki które cie nie interesują.
Albo znajdź na stronie jakieś charakterystyczne elementy, znajdujący się bezpośrednio przed i bezpośrednio za tymi linkami, odszukaj ich pozycję przez strpos" title="Zobacz w manualu php" target="_manual i strrpos" title="Zobacz w manualu php" target="_manual i obetnij kod strony do interesującej cie części, np:

Strona:
  1. <a href="jakis_nieinteresujacy_link.html">sdsd</a>
  2. <br>
  3.  
  4. <div id="tytul">Linki</div>
  5. <p>
  6. <a href="blabla.html">Bla Bla</a>
  7. <a href="bleble.html">BleBle</a>
  8. </p>
  9. <div id="info">Dodano: wczoraj</div>
  10.  
  11. <br>
  12. <a href="jakis_inny_nieinteresujacy_link.html">sdsadsad</a>



Kod php:
  1. <?php
  2. $begin = strpos($kod_html_strony, '<div id="tytul">');
  3. $end = strrpos($kod_html_strony, '<div id="info">');
  4.  
  5. $interesujaca_czesc = substr($kod_html_strony, $begin, -$end);
  6.  
  7.  
  8. preg_match_all('#href="([^"]*)"#i', $interesujaca_czesc, $array);
  9. print_r($array[1]);
  10. ?>
Go to the top of the page
+Quote Post
Balon
post
Post #5





Grupa: Zarejestrowani
Postów: 422
Pomógł: 0
Dołączył: 14.12.2005
Skąd: Wałbrzych

Ostrzeżenie: (0%)
-----


ok poradzilem sobie, wyeliminowalem inne linki bo np niektore mialy w href czes Site/aa albo Site/aaa.php a reszte latwo juz bylo bo nie mialy dopisku mp3 wiec poszlo latwo (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)

dzieki za pomoc,

pozdrawiam
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 23.08.2025 - 04:01