Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Pobieranie fragmentu strony
Forum PHP.pl > Forum > Przedszkole
Wyrażenie regularne
Witam!
Dopiero zaczynam się uczyć wyrażeń. Chcę pobrać tabelę z wynikami ze strony o piłce nożnej.
Póki co napisałem coś takiego: ale dostaję komunikat : Warning: preg_replace(): Unknown modifier 't' in line 9,
dziewiąta linia to ta z wyrażeniem.
Chcę wyciągnać z kodu strony samą tabelę a znajduje się ona w znacznikach:
  1. <table align="center" width="600" border="0" cellspacing="0" cellpadding="0" class="main2">
  2. tutaj dane


Póki co mam coś takiego:
  1. <?php
  2. $pobierz = file_get_contents('http://www.90minut.pl/liga.php?id=2566', $wynik);
  3. preg_replace ('/^(<table align="center" width="600" border="0" cellspacing="0" cellpadding="0" class="main2">)+(</table>)$',$pobierz,$r);
  4. print_r ($r);
  5. ?>


ale wogóle nie łapię tych wyrażeń, patrzyłem serie jakiś znaczków //\\w/s i nie wiem o co chodzi.
wydaje mi się że najlepiej byłoby gdybym zobaczył to na przykładzie tego kodu
i nie proszę tutaj o całość. W tej tabeli są również linki do innych strony, linki mnie nie interesują tylko sam tekst. Jakbym otrzymał jakieś instrukcje jak pobrać samą tabelę, to myślę że linków się już pozbędę.
biggrin.gif
Balon
po pierwsze to chyba nie preg_replace tylko preg_match" title="Zobacz w manualu php" target="_manual :] po drugie po co na znacznik otwierajacy i zamykajacy nawiasy kladziesz ?

Kod
!<table align="center" width="600" border="0" cellspacing="0" cellpadding="0" class="main2">(.*?)</table>!


i poczytaj co musisz zrobic w preg_match zeby Ci zwrocilo do tablicy to co trzeba ;]
chm
moze troche stary temat odswiezam ale jak szukalem odpowiedzi w googlu to trafilem tu:))
tez chce pobrac fragment strony
strona ma postac
  1. dla mnie nie wazne co tu jest</td></tr>
  2.  
  3. </div>
  4.  
  5. <p class="wtx1">to jest wazne</p>
  6. <p class="wtx1">to tez</p>
  7. <UL class="wls">
  8. <LI>wazne</LI>
  9. to co tu jest tez jest wazne
  10. </UL>
  11. </div>
  12. to juz jest nie wazne
i chodzi o to zeby pobrac to co jest miedzy pierwszym otwarciem <p class="wtx1"> a pierwszym napotkanym </div>
nie wazne co jest w srodku czy tam bedzie wiecej <p class="wtx1"> czy <ul> czy jeszcze czegos innego
i mam takie wyrazenie regularne
  1. <?php
  2. $wzor = '!<p class="wtx1">(.*)!';
  3. ?>
i ono pobiera tylko pierwszy paragraf
dla powyzszego przykladu
  1. <p class="wtx1">to jest wazne</p>
poprostu konczy sie na
  1. </p>
nie wiem czemu w;asnie tam konczy
nie wazne ile bedzie tekstu pomiedzy
  1. <p class="wtx1">
a
  1. </p>
to i tak pobierze wszystko ze srodka i nic wiecej
a jak dopisze do wyrazenia
  1. <?php
  2. $wzor = '!<p class="wtx1">(.*)</div>!';
  3. ?>
to juz nic nie pobiera
nie znam sie na tych calych wyrazeniach wiec prosze o pomoc
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.