Reguläre Ausdrücke - Ich versteh es nicht

26/12/2007 - 07:49 von Sven Mönnich | Report spam
Hallo liebe NG,

ich hab ein Problem mit Regulàren Ausdrücken.
Das größte scheint dabei zu sein, das ich davon keine Ahnung habe.
Vielleicht kann mir ja hier jemand helfen dem es leichter fàllt das zu
verstehn.

zum Problem an sich

Ich habe einen e-mail Header in ein Array gepackt, Zeile für Zeile.
In einem Element steht also sowas wie:

From: "name" <mail@domain.tld>


Ich möchte nun den Namen und die E-mail adresse in eine Variable
schreiben. Nur wie komm ich daran ?
Es kann auch sein das der Name nicht in Anführungszeichen steht oder
garnicht vorhanden ist, ebenso bei der emailadresse, die hat nicht
unbedingt ein gültiges format und ist nicht unbedingt von < und >
umgeben.

mögliche Formate wàren zB.:

From: "name" <mail@domain.tld>
From: "name" mail@domain.tld
From: name <mail@domain.tld>
From: name mail@domain.tld
From: <mail@domain.tld>
From: mail@domain.tld

wie komme ich nun an den Namen und Die adresse ?

für Hilfe immer Dankbar -Sven-
 

Lesen sie die antworten

#1 Christian Winter
26/12/2007 - 09:52 | Warnen spam
Sven Mönnich schrieb:
Hallo liebe NG,

ich hab ein Problem mit Regulàren Ausdrücken.
Das größte scheint dabei zu sein, das ich davon keine Ahnung habe.
Vielleicht kann mir ja hier jemand helfen dem es leichter fàllt das zu
verstehn.

zum Problem an sich

Ich habe einen e-mail Header in ein Array gepackt, Zeile für Zeile.
In einem Element steht also sowas wie:

From: "name"


Ich möchte nun den Namen und die E-mail adresse in eine Variable
schreiben. Nur wie komm ich daran ?
Es kann auch sein das der Name nicht in Anführungszeichen steht oder
garnicht vorhanden ist, ebenso bei der emailadresse, die hat nicht
unbedingt ein gültiges format und ist nicht unbedingt von < und >
umgeben.

mögliche Formate wàren zB.:

From: "name"
From: "name"
From: name
From: name
From:
From:

wie komme ich nun an den Namen und Die adresse ?



Das Parsen von RFC2822-Adressheadern ist nicht unbedingt das
beste Thema, um mit regulàren Ausdrücken anzufangen. Ich würde
mir dazu ein passendes Modul (Email::Address) runterladen und
bei Interesse mal in dessen Quellcode rumwühlen. Die Fàlle,
die Du oben aufgezàhlt hast, sind bei weitem noch nicht alle,
da gibt es auch noch so schöne Dinge wie spitze Klammern im
Namensteil etc.

-Christian

Ähnliche fragen