Thread Verifizieren einer E-Mail-Adresse (7 answers)
Opened by Gast at 2005-06-04 00:06

pKai
 2005-06-05 03:50
#5034 #5034
User since
2005-02-18
357 Artikel
BenutzerIn
[default_avatar]
Ich verwende gerne die $address_rx aus CPAN:Mail::Sendmail, was man auch durch einfaches Kopieren "installieren" kann.

Wenn man sich den relevanten Code-Zeilen direkt kopiert, lautete die entsprechende sub
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
sub mail_verify {
my $addr = shift;
# copied code from Mail::Sendmail begins here
my $word_rx = '[\x21\x23-\x27\x2A-\x2B\x2D\x2F\w\x3D\x3F]+';
my $user_rx = $word_rx # valid chars
.'(?:\.' . $word_rx . ')*' # possibly more words preceded by a dot
;
my $dom_rx = '\w[-\w]*(?:\.\w[-\w]*)*'; # less valid chars in domain names
my $ip_rx = '\[\d{1,3}(?:\.\d{1,3}){3}\]';

$address_rx = '((' . $user_rx . ')\@(' . $dom_rx . '|' . $ip_rx . '))';
# copied code from Mail::Sendmail ends here
# now use the regex:
$addr =~ /^$address_rx$/;
}

Ob selbst eine "korrekte" Adresse überhaupt einem ereichbaren Postfach entspricht ist natürlich ein ganz anderes Problem ;)\n\n

<!--EDIT|pKai|1117929217-->
I sense a soul in search of answers.

View full thread Verifizieren einer E-Mail-Adresse