Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Regex - preg match częście html
Forum PHP.pl > Forum > Przedszkole
Watt
Witam,

Chciałem pobrać pare liter z kodu html wyglądającego mniej więcej tak (trzema kropkami zaznaczyłem jakiś dowolny ciąg znaków, które mnie nie interesują):
Kod
                    <tr>
                        ...
                        ...<td id="tag1_info">Test1</td>...
                        ...
                    </tr>
                    
                    <tr>
                        ...
                        ...<td id="tag2_info">Test2</td>..
                        ...
                    </tr>


Dokładnie chodzi mi o pobranie "tag1", "tag2", ... itd.
Próbowałem tym:

Kod
preg_match_all('/<td id=[\'"](.*)_info[\'"]>[^<]*<\/td>/isU', $s,$form);


ale coś nie chce działać, problem w tym że pobiera początek, ale nie kończy się na </td> tylko pobiera kod dalej, aż do następnego taga.
Czy mógłbym prosić o pomoc?
Turson
<td id="(.*)_info">(.*)<\/td>
Watt
Cytat(Turson @ 12.02.2014, 18:41:11 ) *
<td id="(.*)_info">(.*)<\/td>

Kod
Warning: preg_match_all() [function.preg-match-all]: Unknown modifier '(' in /test.php on line 7
Turson
  1. $string = ' <tr>
  2. ...
  3. ...<td id="tag1_info">Test1</td>...
  4. ...
  5. </tr>
  6.  
  7. <tr>
  8. ...
  9. ...<td id="tag2_info">Test2</td>..
  10. ...
  11. </tr>';
  12. preg_match_all('/<td id="(.*)_info">(.*)<\/td>/i', $string, $output);
  13. print_r($output);
Watt
Cytat(Turson @ 12.02.2014, 18:53:07 ) *
  1. $string = ' <tr>
  2. ...
  3. ...<td id="tag1_info">Test1</td>...
  4. ...
  5. </tr>
  6.  
  7. <tr>
  8. ...
  9. ...<td id="tag2_info">Test2</td>..
  10. ...
  11. </tr>';
  12. preg_match_all('/<td id="(.*)_info">(.*)<\/td>/i', $string, $output);
  13. print_r($output);

Działa, dzięki wielkie smile.gif
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.