Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]preg_replace i kilka wyników
Forum PHP.pl > Forum > PHP
HgReed
Witam.
Od razu mówie, że nie miałem najmniejszego pomysłu, jak ten wątek zatytułować, więc pokaże to na przykładzie:
  1. $string = 'Jestem \'wrednym\' stringiem o \'wrednych\' właściowściach.';
  2. $pattern = '/\'(.*)\'/s';
  3. $string = preg_replace($pattern, '$1', $string);
  4. echo $string;

Ten kod nie pokazuje: Jestem wrednym stringiem o wrednych właściwościach, tylko Jestem wrednym 'stringiem o 'wrednych właściwościach.
Czyli preg_replace nie 'paruje' ich (do otwarcia pasuje najbliższe zamknięcie) tylko łączy wszystko w środku (nawet kolejne wystąpienia).

Czy ktoś ma pomysł, jak zmienić pattern lub co zrobić, by 'łapało' każde wystąpienie pattern'a?
nospor
nie: .*
a: .*?
HgReed
Nie mam pojęcia dlaczego, ale - działa smile.gif Dzięki nospor.
nospor
.* - zarłoczne, zjada do bólu
.*? - najedzone, je jak najmniej.
HgReed
Ciekawie powidziane... Dzięki!
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.