Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Problem z preg_match_all?
e11
post 23.09.2002, 21:12:00
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
kurtz
post 24.09.2002, 17:28:46
Post #2





Grupa: Przyjaciele php.pl
Postów: 786
Pomógł: 0
Dołączył: 18.03.2002
Skąd: Wroclaw/Warszawa

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


Cytat
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):
bez urazy ale czy nie mozna po prostu napisac $patern="/<a(.?*)>)/" ?

nie rozumiem celu tak glebokiego ()


--------------------
.. make web your home ..
Go to the top of the page
+Quote Post
e11
post 24.09.2002, 17:44:48
Post #3





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
kurtz
post 24.09.2002, 21:02:18
Post #4





Grupa: Przyjaciele php.pl
Postów: 786
Pomógł: 0
Dołączył: 18.03.2002
Skąd: Wroclaw/Warszawa

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


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

nie jestem pewny ale chyba > nie jest dozwolone w atrybutach. zawartosc "" musi byc url encoded (chiba).

co do problemu to przyznam ze wolalbym napisac od nowa tego prega niz doszukiwac sie bledu. za duzo zachodu :|


--------------------
.. make web your home ..
Go to the top of the page
+Quote Post
e11
post 25.09.2002, 00:32:18
Post #5





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

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


W każdym razie dzięki kurtz, choć dorzucę, że znak ">" w środku znacznika to nie jest niemożliwe ani bezurzyteczne, ani nawet takie znowu głupie

Kod
<a href="javascript: if(a>b) location='bla.html'">


a tak na marginesie to jakie hasła ze słownika polecasz, bo przyznaję, że wysyłam tego posta nie zastosowawszy się do rady, by przejżeć zalecane dzieło.
Go to the top of the page
+Quote Post
kurtz
post 25.09.2002, 09:56:54
Post #6





Grupa: Przyjaciele php.pl
Postów: 786
Pomógł: 0
Dołączył: 18.03.2002
Skąd: Wroclaw/Warszawa

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


Cytat
a tak na marginesie to jakie hasła ze słownika polecasz, bo przyznaję, że wysyłam tego posta nie zastosowawszy się do rady, by przejżeć zalecane dzieło.

durzo bezurzyteczne złorzonym przejżałem


--------------------
.. make web your home ..
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 8.07.2025 - 18:30