|
|
 |
| Re: Trying to catch invalid emails |
|
 |
|
 |
|
 |
|
 |
Author: Ron Bergin Date: May 6, 2008 20:13
On May 6, 7:58 pm, "Samik R." frKKshKll.org> wrote:
> 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"; }
> else
> { print "$_ is an invalid email id\n"; }}
>
> -------------
>
> This expression does not catch the above 3 emails in the array (the
> program says that they are valid emails).
>
> Can someone help me to discard these three?
> Thanks.
Try using the Email::Valid module.
use strict;
use warnings;
use Email::Valid;
my @Email=("sam._\@ abc.org", "sam_.\@ abc.org", "sam_.\@ abc.org");
foreach my $address (@Email)
{
print Email::Valid->address($address) ? "$address valid\n" :
"$address not valid\n";
}
|
|
|
|
|
|
|
|