Esta es una sencilla forma de realizar una realizar la validación de una dirección de correo electrónico en Oracle (9i, 10g y 11g).
SELECT regexp_substr('correo@dominio.com','[a-zA-Z0-9._%-]+@[a-zA-Z0-9._%-]+\.[a-zA-Z]{2,4}')
FROM DUAL
El retorno de la ejecución de la sentencia Select, retornara la dirección de correo electrónico si es valida, de lo contrario retornará NULL