Hello, I use the following regular expression to catch typical invalid email addresses: ------------ my @Email=("sam._\@abc.org", "sam_.\@abc.org", "sam_.\@abc.org"); foreach (@Email) { if(/^[A-z0-9]+([_\.][A-z0-9\-] +)*[@][A-z0-9_\-]+([.][A-z0-9_ \-]+)?\.[A-z]{2,3}$/) { print "$_ is a valid email id\n"; }