Schrift
[thread]4321[/thread]

eMail-->From zeile splitten in Name und Adresse (Seite 2)



<< |< 1 2 >| >> 17 Einträge, 2 Seiten
Gast Gast
 2005-02-28 18:20
#37895 #37895
Amen.
Gast Gast
 2005-02-28 17:22
#37896 #37896
jo hi,

also folgendes:
nach dem ich nun das mit MIME-Parsen von der eMails erledigt hab(!!hat auch gedauert!!) muss ich nun kleinigkeiten erledigen bevor ich die eMails in Tabelle speichere. Eins will mir nicht glingen, vielleicht kann mal eine einen Tipp geben:
also eine From-Zeile in der eamil kann so aussehen:
Möglichkeit1: from: xy@xy.example
Möglichkeit2: "HERR XY" <xy@xy.example>
Möglichkeit3: HERR XY [xy@de.example]

nun, wie filtere ich jetzt Name und Adresse des Absenders raus ohne viel zu coden aber drei alle Möglichkeiten beachte!


Code: (dl )
1
2
3
4
$from = $head->get('From');    
($from_name, $from_adress) = split( / <[/, $from );
$from_adress =~  s/]>//g;
$from_name =~  s/"//g;


haut aber nicht ganz hin!

edit pq: code-tags und email-adressen mit .example verändert\n\n

<!--EDIT|pq|1109609949-->
maco
 2005-02-28 20:30
#37897 #37897
User since
2005-02-22
27 Artikel
BenutzerIn
[default_avatar]
Quote
Mail::Address ist genau dafür gedacht, es richtig zu machen;


jo, hab ich gemacht und die Methode von dem Module in meinem Skript implementiert, es geht! Wen es interessiert, hab ich das so gelöst:
Code: (dl )
1
2
3
4
5
6
$from = $head->get('From');
@from_addresses = Mail::Address->parse($from);
my $address;
if (@from_addresses) {
$from = $from_addresses[0]->address();}
else {exit;}

Allerdings das gibt mir jetzt nur die reine eMail-adresse aus der Zeile zurück, also keinen Namen des Absenders, sollte es in der From-Zeile enthalten sein!
Grüß
Dubu
 2005-02-28 21:39
#37898 #37898
User since
2003-08-04
2145 Artikel
ModeratorIn + EditorIn

user image
Was ist mit $from_addresses[0]->name() oder $from_addresses[0]->phrase()?
Die stehen auch in der Manpage zu Mail::Address.
maco
 2005-02-28 23:18
#37899 #37899
User since
2005-02-22
27 Artikel
BenutzerIn
[default_avatar]
allerdings es gibt ein problem, was ich bemerkt habe:
wenn es steht:
herr xy [h.xy(at)xy.bla]
(hab hier @ mit (at) ersetzt)
dann gibt der nur herr raus!!
Also mit "[" in der From-Zeile kommt das Modul wohl nicht zu recht!
maco
 2005-02-28 23:23
#37900 #37900
User since
2005-02-22
27 Artikel
BenutzerIn
[default_avatar]
hab ich auch gedacht aber ich hab hier genau so eine Emailangabe in der Fromzeile vorliegen!!:(
Dubu
 2005-02-28 23:43
#37901 #37901
User since
2003-08-04
2145 Artikel
ModeratorIn + EditorIn

user image
Diese Adressform hatte mich schon im ersten Beitrag gewundert. Solche Adressen sind definitiv nicht RFC-konform, weder nach RFC 822 noch nach RFC 2822, duerften so also nicht in Internet-Mails vorkommen.

Die einzige Stelle, an der eckige Klammern Bestandteil der Syntax sind, ist bei Domain-Literalen (wenn also nicht der MXer zum Domain-Part abgefragt werden soll), z.B. als name@[my.host.domain.test] oder haeufig auch mit IPs als name@[192.168.0.42] oder name@[ipv6:fe80::1234:abcd:0:1]. Damit sollte auch Mail::Address zurecht kommen, wenn es RFC-konform sein will. ;)

Aber eine komplette Adresse mit Local-Part und Domain-Part in eckigen Klammern gibt es in Internet-Mails nicht. Mails mit so einer Absenderadresse wuerden bei mir wohl automatisch im Spamfilter landen. ;)
<< |< 1 2 >| >> 17 Einträge, 2 Seiten



View all threads created 2005-02-28 17:24.