Skip to content
Advertisement

How match email address with regex expression?

the match to find email has wrong regex expression, leading to missing emails that should have been otherwise populated in the output.

Below is the query

case when regexp_like(email,'^([a-zA-Z0-9_-.]+)@([a-zA-Z0-9_-.]+).([a-zA-Z]{2,5})$')

The above regex expression doesn’t match emails like BILL@AMERITRUST-MORTGAGE.COM Instead it returns null when such emails are encountered.

Advertisement

Answer

I used this statement and it worked:

select 1
  from dual
 where regexp_like('BILL@AMERITRUST-MORTGAGE.COM', '^([a-zA-Z0-9_.-]+)@([a-zA-Z0-9_.-]+).([a-zA-Z]{2,5})$');

The minus character must be the last one in the […].

User contributions licensed under: CC BY-SA
8 People found this is helpful
Advertisement