正規表現で
$match = '/>>(.+)/i';
$change = '<font color="red">\0</font>';
$msg = preg_replace($match,$change,$msg);

>>hogeさん

この部分だけ色を変えたいのですが、上のかきかたでは改行以降も色換えしてしまいます。。

くだらない質問ですが、どのようにすれば改行は含まないようにできるのでしょうか?