Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Wyrażenie regularne
Forum PHP.pl > Forum > Przedszkole
Eagle
Witam

Potrzebuje przeszukiwać komentarze kilku stron (Pobrać ich treść).
Początkowo nie było problemu bo kod wyglądał tak:
  1. <div id="komentarz-1" class="komentarz">Ale napisałem fajny komentarz~!</div>


Jako że nie lubię(nie rozumiem) wyrażeń regularnych używałem funkcji strrpos.
Całość brzydko wyglądała więc znalazłem "ładne" rozwiązanie dla mojego problemu ( http://forum.php.pl/index.php?showtopic=130213 )

Jednak prawdziwy problem pojawił się kiedy trafiłem na inny szablon(/layout) strony.
  1. <div id="komentarz-1" class="komentarz">
  2. <div id="komentarz-1-data" class="data">12-06-1998</div>
  3. <div id="komentarz-1-autor" class="autor">Jestem autorem</div>
  4. <div INNE_TAGI>TEST_PISANIA</div>
  5. To jest treść fajnego komentarza
  6. </div>


Może ktoś naprowadzić mnie czego mam szukać w wyrażeniach regularnych aby zdobyć treść komentarza?
Jedynie co mi przychodzi do głowy, to użyć strpos aby odszukać ostatni "</div>"

Pozdrawiam
Spawnm
jeśli dobrze rozumiem potrzebna treść jest między </div> a </div>,
czyli dla prega:
  1. '/<\/div>(.*)<\/div>/'
athei
Dodaj jeszcze odpowiednie modyfikatory
Kod
/<\/div>(.*)<\/div>/sU
ddiceman
i dostanie
  1. <div id="komentarz-1-autor" class="autor">Jestem autorem

...
obstawialbym raczej cos w stylu
  1. |<div id="komentarz-1" class="komentarz">(?!<div.+?>.+?</div>)*(.*)</div>|siU

(pisane z palca, jestem prawie pewien, ze to nie zadziala)
athei
@ddiceman a sprawdzałeś chociaż? Jeśli nie to http://regex.larsolavtorvik.com/
Kod
Array
(
    [0] => Array
        (
            [0] => </div>
<div id="komentarz-1-autor" class="autor">Jestem autorem</div>
            [1] => </div>
To jest tre¶æ fajnego komentarza
</div>
        )

    [1] => Array
        (
            [0] =>
<div id="komentarz-1-autor" class="autor">Jestem autorem
            [1] =>
To jest tre¶æ fajnego komentarza

        )

)
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.