$pattern = '~\[right\](.*)\[\/right\]~'; $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?
$pattern = '~\[right\](.*)\[\/right\]~'; $replace = '<div style="text-align: right;">$1</div>';
$string = preg_replace("#\[right\](.*?)\[\/right\]#si", "<div style=\"text-align: right;\">\\1</div>", $string);