Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [RegExp]Problem z parsowaniem
loganek
post
Post #1





Grupa: Zarejestrowani
Postów: 81
Pomógł: 20
Dołączył: 14.06.2007

Ostrzeżenie: (0%)
-----


Witam, napisałem wyrażenie regularne, które wyciąga podciąg z danego ciągu.
Oto podciąg(plik template.php):
Kod
{IF x=3}czesc jesli jestes admiinem, widzisz {IF admin=1}to{/IF}{/IF} tekst{IF sadf=5}i tu kolejny if{/IF}

a to strona główna:
  1. <?php
  2. $r=file_get_contents("template.php");
  3. preg_match_all( "/{IF (.*?)([>=<])(.*?)}([^IF]*?){/IF}/s", $r, $tabif);
  4. print_r($tabif);
  5. ?>

jak widać zadaniem kodu jest wyciągnięcie tekstu, który znajduje się pomiędzy znacznikami {IF}, pod warunkem że ten ciąg nie zawiera w sobie tekstu IF, dzięki czemu w tablicy powinny znaleźć się ciągi znaków które się nie zagnieżdżają.
Jednak tak nie jest, Co jest nie tak w wyrażeniu regularnym?
Z góry dziękuje
Pozdrawiam
Go to the top of the page
+Quote Post
dadexix
post
Post #2





Grupa: Zarejestrowani
Postów: 439
Pomógł: 21
Dołączył: 28.06.2007
Skąd: Bielsko-Biała

Ostrzeżenie: (0%)
-----


Kod
[^IF]
znaczy nie tylko "nie ma IF" ale też "nie ma FI"
Go to the top of the page
+Quote Post
loganek
post
Post #3





Grupa: Zarejestrowani
Postów: 81
Pomógł: 20
Dołączył: 14.06.2007

Ostrzeżenie: (0%)
-----


wiem, ale to niestety nie powód błędu;/
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 14.09.2025 - 13:16