Aquí doy un ejemplo para validar la dirección de correo electrónico usando expresiones regulares PL/SQL (REGEXP) en Oracle.
Validar correo electrónico utilizando el programa PL/SQL
En el siguiente programa PL/SQL, validará la dirección de correo electrónico utilizando la función REGEXP_LIKE.
SET SERVEROUTPUT ON; DECLARE b_isvalid BOOLEAN; BEGIN b_isvalid := REGEXP_LIKE ('[email protected]', '^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4}$'); IF b_isvalid THEN DBMS_OUTPUT.put_line ('It is a valid email address.'); ELSE DBMS_OUTPUT.put_line ('It is Not a valid email address.'); END IF; END; /
Salida
It is a valid email address. PL/SQL procedure successfully completed.
Obtener la lista de direcciones de correo electrónico no válidas de una tabla mediante SQL
La siguiente consulta SQL recuperará todas las direcciones de correo electrónico no válidas almacenadas en la columna CORREO ELECTRÓNICO de la tabla EMPLEADOS en Oracle.
SELECT * FROM EMPLOYEES WHERE NOT REGEXP_LIKE (email, '^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4}$');
Del mismo modo, para obtener la lista de direcciones de correo electrónico válidas, elimine NOT de la consulta anterior.
Ver también:
- Comprobar si un archivo es una imagen mediante PL/SQL