codice:
$testo = preg_replace("/^(.*?)\[quote name=\"(.*?)\" date=\"(.*)\"\](.*?)\[\/quote\](.*?)$/i", "\\1<hr>Originariamente inviato da \\2 il \\3:
\\4<hr>\\5", $testo);
scusa, riprova ora.
[edit]: provato e funziona