Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Problem z preg_match_all?
e11
post
Post #1





Grupa: Zarejestrowani
Postów: 15
Pomógł: 0
Dołączył: 17.06.2002

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


Mam kłopot z funkcją preg_match_all, napisałem takie oto wyrażenie regularne do wyłuskiwania znaczników (w tym wypadku znacznika a):

Kod
$patern="/<a(([s]+(([^>^"]*)|("[^"]*"))*>)|([>]{1}))/"


Działa to z reguły dobrze, ale w wypadku gdy znacznik jest źle napisany, a konkretnie, jeden z cudzysłowów jest niezamknięty (np. <a ">), funkcja preg_match_all w Windows działa tak jakby się zapętliła :?: :!: .

Coś nie tak z php, czy ze mną?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
e11
post
Post #2





Grupa: Zarejestrowani
Postów: 15
Pomógł: 0
Dołączył: 17.06.2002

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


Pewnie można, tylko co to coś zrobi z takim dobrym znacznikiem:
Kod
<a zzz=">" href="bla.htm">

Zależy mi na czymś dokładnym, bo ma to służyć do przerabiania kodu możliwe, że pisanego przez laików, a generalnie wysyłanego z zewnątrz, stąd te kłopoty.
Ale nie tylko o to chodzi, to preg_match_all, w podanym przeze mnie przypadku, się poprostu wykrzacza. Nie ma informacji, że string pasuje albo nie do wzorca, to wisi i kwita, i w tym rzecz, na ile można ufać tej funkcji?
Go to the top of the page
+Quote Post

Posty w temacie


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: 4.10.2025 - 16:56