Después de mucho leer y probar y probar y probar jeje, lo he solucionado así.
Código:
if (preg_match("/([a-zA-Z_.+-]+)@([a-zA-Z_-]+).([a-zA-Z]{2,4})/i", $string, $matches)) {
echo "Match was found email<br />";
var_dump($matches[0]). "<br />";
}
Un verdadero coñazo esto de las expresiones regular, no es que sea complicado de entender , sino que es imposible de recordar (tendré a mano una chuleta para que no me vuelva a pasar).
Un saludo