Hi,
Ich erlaube die Zeichen . - und _, die dürfen nur zwischen a-z und 0-9 vorkommen, und dürfen nicht zweimal hintereinander vorkommen.
Warum willst Du diese Einschränkung machen?
Der Punkt ist besonders. Aber - und _ unterscheiden sich in nichts von a-z, was die Verwendbarkeit im LocalPart betrifft.
_._._@example.org wäre eine korrekte Adresse.
Oder auch |||.---.|||@example.org
a:
Gerade noch habe ich im Internet gelesen, dass auch die Zeichen & und = usw in dem lokalen Teil erlaubt sind was ich noch nie gesehen habe. Auch wurde geschrieben, dass nur nicht erlaubt ist zwei Punkte hintereinander zu schreiben, bei den anderen Sonderzeichen das aber egal ist. Die Frage ist, sollte ich das auch noch zulassen und auch die anderen Sonderzeichen mit aufnehmen? Mir ist das auf jeden Fall neu, aber ich bin ja nicht abgeneigt dazuzulernen.
Zumindest mehrere - (2 bis 3) habe ich schon oft gesehen (weil's real existierende Adressen sind, die leider von fehlerhaften Schnittstellen abgelehnt werden).
b:
Das Sonderzeichen + soll sogar noch eine besondere Bedeutung haben, welche hat dieses?
Es hat keine.
Die relevanten Regeln aus RFC 5322 (die Syntax der
Syntaxbeschreibung ist in RFC 5234 erläutert) - von verschiedenen
Stellen zusammenkopiert (sind in den Vorgängerversionen seit RFC 822 im wesentlichen unverändert):
addr-spec = local-part "@" domain
local-part = dot-atom / quoted-string / obs-local-part
Meist interessiert hier nur das dot-atom aus dem local-part, also weiter
damit:
dot-atom = [CFWS] dot-atom-text [CFWS]
Die Varianten mit CFWS sind auch irrelevant, White-Space im local-part
erlauben wir hier mal nicht.
dot-atom-text = 1*atext *("." 1*atext)
atext = ALPHA / DIGIT / ; Printable US-ASCII
"!" / "#" / ; characters not including
"$" / "%" / ; specials. Used for atoms.
"&" / "'" /
"*" / "+" /
"-" / "/" /
"=" / "?" /
"^" / "_" /
"`" / "{" /
"|" / "}" /
"~"
ALPHA sind die Buchstaben a bis z, DIGIT die Ziffern 0 bis 9
Wie man sieht, kann an allen Stellen, an denen ein Buchstabe oder eine Ziffer stehen darf, auch ein + oder ein - oder ein _ stehen.
Der Punkt ist aber in der Tat anders: er kann weder am Anfang noch am Ende des Localpart stehen (da davor/danach 1*atext kommen muß). Und mehrere Punkte können auch nicht nacheinander kommen.
cu,
Andreas
Warum nennt sich Andreas hier MudGuard?
O o ostern ...
Fachfragen per Mail sind frech, werden ignoriert. Das Forum existiert.