3 ms·
His example, slightly modified for Perl: my $emailPattern = qr{ ^ #begin of line ([a-z0-9_.-]+) #one or more letters, numbers, _ . or - @
by mike-cardwell 15y ago
His example, slightly modified for Perl:
my $emailPattern = qr{ ^ #begin of line
([a-z0-9_.-]+) #one or more letters, numbers, _ . or -
@ #followed by an @ sign
([\da-z.-]+) #then one or more letters, numbers, _ . or -
\. #followed by a period
([a-z.]{2,6}) #followed by 2 to 6 letters or periods
$ }xi; #end of line and ignore case
if( 'john.smith@gmail.com' =~ $emailPattern ){
print "E-mail is valid\n";
} else {
print "E-mail is invalid\n";
}
EDIT: A much better way of doing it though:
use Mail::Sendmail;
if( 'john.smith@gmail.com' =~ /$Mail::Sendmail::address_rx/ ){
print "E-mail is valid\n";
} else {
print "E-mail is invalid\n";
}
- elijahmanor 15y agoNice! I like it ;)
- draegtun 15y agoAnd for just email address checking then even better IMHO is: use Email::Valid; if (Email::Valid->address('john.smith@gmail.com')) { print "E-mail is valid\n"; } else { print "Email is invalid\n" } ref: https://metacpan.org/module/Email::Valid https://metacpan.org/module/Email::Valid