Schrift
[thread]4371[/thread]

Regex für E-Mail: die soundsovielte



<< |< 1 2 3 >| >> 22 Einträge, 3 Seiten
eisbeer
 2003-09-09 21:28
#38440 #38440
User since
2003-08-29
347 Artikel
BenutzerIn
[Homepage] [default_avatar]
Das es ja megaspezial...
Die meisten PC Probleme befinden sich zwischen Bildschirm und Stuhl...
format_c
 2003-09-09 23:22
#38441 #38441
User since
2003-08-04
1706 Artikel
HausmeisterIn
[Homepage] [default_avatar]
Relais
 2003-09-10 13:35
#38442 #38442
User since
2003-08-06
2244 Artikel
ModeratorIn
[Homepage] [default_avatar]
[quote=Strat,09.09.2003, 23:18]kennst du schon CPAN:Mail::RFC822::Address ? das besteht - wenn ich mich recht erinnere - aus pure-perl und RegExen....[/quote]
noch kenn ich das nicht genauer. doch, jetzt ;) Wird ausprobiert.

@Crian... danke, hier leider gerade vergriffen :( Aber daheim :)
Erst denken, dann posten --
26. Deutscher Perl- u. Raku -Workshop 15. bis 17.04.2024 in Frankfurt/M.

Winter is Coming
[E|B]
 2003-09-10 21:53
#38443 #38443
User since
2003-08-08
2561 Artikel
HausmeisterIn
[Homepage] [default_avatar]
[quote=Relais,10.09.2003, 10:42]pssst, _ ist in \w enthalten...[/quote]
*flüster*
Wusste ich nicht... pssssssst! ;)
Gruß, Erik!

s))91\&\/\^z->sub{}\(\@new\)=>69\&\/\^z->sub{}\(\@new\)=>124\&\/\^z->sub{}\(\@new\)=>);
$_.=qq~66\&\/\^z->sub{}\(\@new\)=>93~;for(@_=split(/\&\/\^z->sub{}\(\@new\)=>/)){print chr;}

It's not a bug, it's a feature! - [CGI-World.de]
Netspider
 2003-10-04 18:27
#38444 #38444
User since
2003-09-25
49 Artikel
BenutzerIn
[Homepage] [default_avatar]
aso, ich dachte das war eben dieses modul,
hab nicht gesehn, dass das ein link war...

danke und cu, Netspider
perl -e "s;;Ronny Lindner;;m;(..).$;;$l=$1;s;n;;g;m;.{4}$;;$_=$l;$I=$&;m;^(.);;$_.='ts';$_.=$1;$_++;$_++;$_.=$I;print ucfirst;"
Relais
 2003-09-09 20:20
#38445 #38445
User since
2003-08-06
2244 Artikel
ModeratorIn
[Homepage] [default_avatar]
Die Aufgabe

Einen String anschaun, und feststellen, ob der genügend nach E-Mail-Adresse aussieht, oder nicht.

Der User-Teil darf vermutlich alles mögliche enthalten? In diesem Fall darf er vor allem keine Whitespace und keine Klammerungszeichen enthalten ({[<>]}), aber wie üblich ist's für die Aufgabe nicht so supergenau spezifiziert. Da bin ich etwas ängstlich und hau lieber um mich...

Der Domainteil darf A-Z und 0-9 und - und . beinhalten und endet nach dem letzten . auf mindestens zwei A-Z.

Mein Ansatz:
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
 $email =~ m/
^ # Vom Anfang
[\w\.\+-]+ # mindestens ein Buchstabe, Zahl, . - + _
\@ # das @-Zeichen
[a-zA-Z0-9\.-]* # keine oder beliebig viele Buchstaben, Zahlen, . -
[a-zA-Z0-9] # genau einen Buchstaben oder eine Zahl.
[a-zA-Z0-9\.-]* # keine oder beliebig viele Buchstaben, Zahlen, . -
\. # ein Punkt
[a-zA-Z]{2,} # zwei oder mehr Buchstaben
$ # bis zum Ende
/x and print "OK\n";


Krumme Adressen wie "+@1.org" kommen also an. Das gilt als korrekt. Insbesondere sollen Adressen wie
"<korrektes@example.com>" und
"korrekt(wirklich )@example(korrektes ).(Beispiel)com" aber beabsichtig abgelehnt werden, auch wenn RFCs und im ersten Fall wohl auch der gesunde Menschenverstand sie für korrekte E-Mail-Adressen hält.

Keinesfalls durchschlüpfen darf sowas:
"< -force -exec rm -rf />/dev/null@example.com" bzw.
"< -force -exec rm -rf />/dev/null@example.com<>" bzw.
'<"<>" -force -exec rm -rf />/dev/null@example.com'
und daher auch die ungewöhnlich krankhafte Aufgabenstellung.

Hab ich auhc nix übersehen? Danke für die Adleraugen! 8)
Erst denken, dann posten --
26. Deutscher Perl- u. Raku -Workshop 15. bis 17.04.2024 in Frankfurt/M.

Winter is Coming
Relais
 2003-09-09 20:47
#38446 #38446
User since
2003-08-06
2244 Artikel
ModeratorIn
[Homepage] [default_avatar]
(man darf, du sowieso.)
Es darf wohl auch ein Pure-Perl*)-Modul sein, mit dem jedes comduaperl**) in den Versionen 5.002 bis 5.005 zurecht kommt.
Nächste Einschränkung: Geschwindigkeit ist geldwert***). Hast Du einen guten Tipp?

*) Weil es (ohne PAR :() in portable Archive für verschiedene Architekturen soll.
**) comduaperl ist eine ganz leicht proprietäre Perl-Distribution eines amerikanischen Software-Hauses.
***) Viele Leute meinen, wo Geschwindigkeit Geld wert ist, dürfe Perl nicht verwendet werden. Hier muß Perl verwendet werden.
Erst denken, dann posten --
26. Deutscher Perl- u. Raku -Workshop 15. bis 17.04.2024 in Frankfurt/M.

Winter is Coming
Ishka
 2003-09-09 22:04
#38447 #38447
User since
2003-08-04
771 Artikel
HausmeisterIn
[Homepage] [default_avatar]
»_« würd ich in den adressen zulassen
» « würd ich nicht zulassen

aber ansonsten sehe ich unter den beschriebenen Rahmenbedingungen keine Probleme mit dem Code.
sub z{if(@_){1while$x[$k=rand 10];t($t=$x[$k]=1)}print map"$z[$x[$_]]$_".($_%3?
"":"\n"),1..9}sub t{$j=0;$x[$_+1]==$t&&($j+=2**$_)for 0..8;z,die"Gewinner $z[$t]
"if grep$_==($j&$_),7,56,73,84,146,273,292,448;z,die"Gleichstand\n"if@x>9&&!grep
!$_,@x}@x=4;@z=qw{. [ (};z$^T&1;while(<>){next if$_>9||$x[$_];t$t=$x[$_]=2;z 1}
havi
 2003-09-09 22:15
#38448 #38448
User since
2003-08-04
2036 Artikel
BenutzerIn
[Homepage]
user image
[E|B
,09.09.2003, 20:08][quote=Ishka,09.09.2003, 20:04]»_« würd ich in den adressen zulassen

(Fast) alle meiner E-Mail Adressen enthalten einen Underscore! ;)[/quote]
Meine zwar nicht, aber ich gebe [E|B] recht!

Sehr viele leute haben vorname_zuname@domain.de

Gruss
[E|B]
 2003-09-09 23:24
#38449 #38449
User since
2003-08-08
2561 Artikel
HausmeisterIn
[Homepage] [default_avatar]
Mach die E-Mail besser schnell weg. Oder willst du unnötigen Spam riskieren?! 8)
Gruß, Erik!

s))91\&\/\^z->sub{}\(\@new\)=>69\&\/\^z->sub{}\(\@new\)=>124\&\/\^z->sub{}\(\@new\)=>);
$_.=qq~66\&\/\^z->sub{}\(\@new\)=>93~;for(@_=split(/\&\/\^z->sub{}\(\@new\)=>/)){print chr;}

It's not a bug, it's a feature! - [CGI-World.de]
<< |< 1 2 3 >| >> 22 Einträge, 3 Seiten



View all threads created 2003-09-09 21:28.