Código PHP:
preg_match_all('/<a .*>/Um',$textoenlaces,$enlaces);
$resultado=array();
foreach($enlaces[0] as $val) {
if (preg_match('| target=".*"|U',$val))
$resultado[] = preg_replace('| target=".*"|U',' target="_blank"',$val);
else
$resultado[] = substr($val, 0, -1).' target="_blank">';
}
$textoenlaces = str_replace($enlaces[0],$resultado,$textoenlaces);
Si no me he dejado nada esto te servirá.
$textoenlaces es la variable donde va el texto con todos los enlaces que quieres añadirles el target="_blank", y te lo transforma y guarda en la misma variable.