Nautilus: Appell an die Informatiker

Beitrag lesen

Hallo Ashura,
in den von Dir zitierten Dokumenten habe ich untenstehendes gefunden.
Das ist mir dann doch zu hoch. Ich rufe daher auf (ganz nach dem kommunistischen Manifest):

Informatiker aller Welt, vereinigt Euch!

Schreibt einen dazu passenden regulären Ausdruck und das Thema ist ein für alle Male vom Tisch.

Gruß
Nautilus

The BNF Specification of e-mail-adresses

We present here a rather detailed "BNF" definition of the allowed form for a computer mail "mailbox" composed
   of a "local-part" and a "domain" (separated by an at sign).  Clearly, the domain can be used separately in other
   network-oriented applications.

<mailbox> ::= <local-part> "@" <domain>
<local-part> ::= <string> | <quoted-string>
<string> ::= <char> | <char> <string>
<quoted-string> ::= """ <qtext> """
<qtext> ::= "" <x> | "" <x> <qtext> | <q> | <q> <qtext>
<char> ::= <c> | "" <x>
<domain> ::= <naming-domain> | <naming-domain> "." <domain>
<naming-domain> ::= <simple-name> | <address>
<simple-name> ::= <a> <ldh-str> <let-dig>
<ldh-str> ::= <let-dig-hyp> | <let-dig-hyp> <ldh-str>
<let-dig> ::= <a> | <d>
<let-dig-hyp> ::= <a> | <d> | "-"
<address> ::= "#" <number> | "[" <dotnum> "]"
<number> ::= <d> | <d> <number>
<dotnum> ::= <snum> "." <snum> "." <snum> "." <snum>
<snum> ::= one, two, or three digits representing a decimal integer value in the range 0 through 255
<a> ::= any one of the 52 alphabetic characters A through Z in upper case and a through z in lower case
<c> ::= any one of the 128 ASCII characters except <s> or <SP>
<d> ::= any one of the ten digits 0 through 9
<q> ::= any one of the 128 ASCII characters except CR, LF, quote ("),  or backslash ()
<x> ::= any one of the 128 ASCII characters (no exceptions)
<s> ::= "<", ">", "(", ")", "[", "]", "", ".", ",", ";", ":", "@", """, and the control characters (ASCII codes 0 through 31 inclusive and 127)

Note that the backslash, "", is a quote character, which is used to indicate that the next character is to
   be used literally (instead of its normal interpretation).  For example, "Joe,Smith" could be used to indicate
   a single nine character user field with comma being the fourth character of the field.

The simple names that make up a domain may contain both upper and lower case letters
   (as well as digits and hyphen), but these names are not case sensitive.

Hosts are generally known by names.  Sometimes a host is not known to the translation function and
   communication is blocked.  To bypass this barrier two forms of addresses are also allowed for host
   "names". One form is a decimal integer prefixed by a pound sign, "#".
   Another form, called "dotted decimal", is four small decimal integers separated by dots and enclosed
    by brackets, e.g., "[123.255.37.2]", which indicates a 32-bit ARPA Internet Address in four 8-bit fields.
   (Of course, these numeric address forms are specific to the Internet, other forms may have to be provided
    if this problem arises in other transport systems.)