ciao billo. intanto grazie per l'aiuto.

ho provato con questo codice come tu hai consigliato:
codice:
$testo = "[quote name=\"nome\" date=\"Venerdì 17 maggio 200\"]messaggio da quotare[/quote]altro testo";
$testo = preg_replace("/^\[quote name=\"(.*?)\" date=\"(.*)\"\](.*?)\[\/quote\]$/i", "Originariamente inviato da \\1 il \\2:<hr>\\3<hr>", $testo);
echo $testo;
ma ottengo questo risultato:
codice:
[quote name="nome" date="Venerdì 17 maggio 200"]messaggio da quotare[/quote]altro testo
come se l'espressione regolare non lavorasse proprio.