Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [JavaScript][PHP] Wyrażenie regularne
Forum PHP.pl > Forum > Przedszkole
przemek610
Chciałbym z przykładowego tekstu wyciągnąć wszystkie wystąpienia wzorca, przy czym nie wiem ile tych wystąpień będzie:

Na przykładzie:
tekst: <td>Imie</td><td>Nazwisko</td><td>Liczba1</td><td>Liczba2</td>
wzorzec: (?:<td.*>(.*)</td>)+ //zwróci tylko 1 element a nie wszystkie w zależności od środowiska pierwszy albo ostatni

otóż wszystko działa poprawnie kiedy wyrażenie ma format: (?:<td.*>(.*)</td>.*?){4}
niestety ja nie wiem ile będzie wystąpień wyżej wspomnianego wzorca.

Czy istnieje możliwość zaprojektowania wyrażenia regularnego w taki sposób aby obsługiwało ten problem?
P.S. chodzi mi tylko o rozwiązanie oparte na regexp. Pętle połączone w wyrażeniami regularnymi mi nie odpowiadają.
jedrzejbl
  1. <?php
  2. $dane = "<td>Imie</td><td>Nazwisko</td><td>Liczba1</td><td>Liczba2</td>";
  3. $matches = array();
  4. preg_match_all('/<td.*?>([^<]*)<\/td>/iD', $dane, $matches);
  5. print_r($matches[1]);
  6. ?>

To powinno zadziałać.
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.