Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] uwzględnienie znaku nowej linii w preg_replace()
Forum PHP.pl > Forum > Przedszkole
KCG
Mam takie wyrażenie regularne, wyrównujące tekst:
  1. $pattern = '~\[right\](.*)\[\/right\]~';
  2. $replace = '<div style="text-align: right;">$1</div>';

Ogólnie działa, poza przypadkiem, gdy w tekście pojawi się znak nowej linii. Jak to zmienić, żeby działało zawsze?
Michael2318
  1. $string = preg_replace("#\[right\](.*?)\[\/right\]#si", "<div style=\"text-align: right;\">\\1</div>", $string);
KCG
kombinowałem z 's', ale nie w tym miejscu. Zawsze dodaje się to na końcu? 's' to znak biały, a 'i'? Znak '?' po '*' jest dla jakiego przypadku? Zauważyłem, że działa bez niego.
Dzięki za pomoc smile.gif
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.