Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: wyrazenie regularne a preg_replace()
Forum PHP.pl > Forum > PHP
snipe
Witam, mam problem z wyrazeniami regularnymi :roll2: Proboje zrobic cos co bedzie mi zamieniac obrazki. Zrobilem cos takiego.

Kod
preg_replace('#<img src="http://www.stronka.pl/(.*)" />#', "<img src=\"image.php?img=$1\" />", $buffor);


Tylko ze jak wyskoczy np. taki wpis:

Kod
<img WIDTH="" HEIGHT="" src="" />

czy tez
Kod
<img src="" WIDTH="" HEIGHT="" />


i nie chodzi mi tu o wielkosc liter tongue.gif
to mi tego nie zamieni, probowalem zrobic cos takiego:

Kod
preg_replace('#<img(.*?:)src="http://www.stronka.pl/(.*)"(.*?:)/>#', "<img src=\"image.php?img=$1\" />", $buffor);


Ale to tez nie dziala. Moze ktos ma jakis pomysl. Bylbym wdzieczny za pomoc biggrin.gif

pozdrawiam
dtb
Cytat
to mi tego nie zamieni, probowalem zrobic cos takiego:

CODE
preg_replace('#<img(.*?:)src="http://www.stronka.pl/(.*)"(.*?smile.gif/>#', "<img src=\"image.php?img=$1\" />", $buffor);


Ale to tez nie dziala. Moze ktos ma jakis pomysl. Bylbym wdzieczny za pomoc biggrin.gif


oczywiscie ze nie zadziala! zamiast $1 ma byc $2 - przeciez fragment (.*) jest jako drugi!
snipe
ale on w ogole nie znajduje ciagow wg wzorca czyli cos we wzorcu musi byc nie tak winksmiley.jpg a btw to ponoc to ?: sprawia ze nie przypisuje tego co jest w nawiasie do $1...
devnul
lekko zmodyfikowane:
Kod
preg_replace('#<img(.*?)src="http://www.stronka.pl/(.*?)"(.*?)/>#si', "<img src=\"image.php?img=$2\" />", $buffor);
bankowo działa chyba ze coś masz w kodzie pochrzanione
snipe
ok, thx wszystkim dziala, chyba jednak zle zrozumialem dzialanie ? :roll2:
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.