Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Dopasowanie wyrażenia (preg_match_all)
Forum PHP.pl > Forum > Przedszkole
micekpb
Witam wszystkich,

próbuje dopasować wyrażenie do pobrania statystyk ze strony http://mlb.mlb.com/team/player.jsp?player_id=488862, tabela "Last 10 Games:"

sprawa rzekomo prosta, tabela ma id, potrzeba pobrać wszystko co znajduje się pomiędzy <table id="last_ten_games"> a </table>

Kod
$url = file_get_contents("http://mlb.mlb.com/team/player.jsp?player_id=488862");
          
           preg_match_all('#<table id="last_ten_games">([.*]+)</\table>#', $url, $data);
          
           echo $data[0][1];


to moja pierwsza styczność z wyrażeniami regularnymi, niestety powyższe wyrażenie nie działa, jeżeli ktoś mógłby mnie nakierować czy idę w dobra stronę czy te bzdury które napisałem wyżej ni jak się do problemu mają

pozdrawiam
nevt
  1. <?php
  2. preg_match_all('#<table id="last_ten_games">(.+?)</table>#', $url, $data);
  3. echo $data[1][0];
  4. ?>
micekpb
dzięki za odpowiedź, wyrażenie już działa, brakowało backslasha przy </table> i parametrów "si"

  1. <?php
  2. $url = file_get_contents("http://mlb.mlb.com/team/player.jsp?player_id=488862");
  3.  
  4. preg_match_all('#<table id="last_ten_games">(.*?)</table>#si', $url, $data);
  5.  
  6. echo '<table id="last_ten_games">';
  7. echo $data[1][0];
  8. echo '</table>';
  9. ?>



jest sens stosowania curla zamiast file_get_contents w tym przypadku, czy nie ma to żadnego znaczenia?

  1. <?php
  2. $curl = curl_init();
  3. curl_setopt($curl, CURLOPT_URL, "http://mlb.mlb.com/team/player.jsp?player_id=488862");
  4. curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
  5. $url = curl_exec($curl);
  6. curl_close($curl);
  7. preg_match_all('#<table id="last_ten_games">(.*?)</table>#si', $url, $data);
  8.  
  9. echo '<table id="last_ten_games">';
  10. echo $data[1][0];
  11. echo '</table>';
  12. ?>


pozdrawiam i dzięki za 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.