Beispiele > E-Mail-Adresse > Syntax-Spezifikation
Folgende Syntax-Spezifikation befindet sich ist in dem Buch: J.E.F. Friedl: Reguläre Ausdrücke, O'Reilly, 1998.
|
Element
|
Beschreibung
|
1
|
mailbox
|
addr-spez | phrase route-addr
|
2
|
addr-spec
|
local-part @ domain
|
3
|
phrase
|
( word )+
|
4
|
route-addr
|
< ( route )? addr-spez >
|
5
|
local-part
|
word (. word)*
|
6
|
domain
|
sub-domain (. sub-domain )*
|
7
|
word
|
atom | quoted-string
|
8
|
route
|
@ domain (, @ domain )* :
|
9
|
sub-domain
|
domain-ref | domain-literal
|
10
|
atom
|
( ein beliebiges Zeichen außer specials, space oder ctl )+
|
11
|
quoted-string
|
" ( qtext | quoted-pair )* "
|
12
|
domain-ref
|
atom
|
13
|
domain-literal
|
( dtext | quoted-pair )*
|
14
|
char
|
Ein ASCII-Zeichen (oktal 000-177)
|
15
|
ctl
|
Ein ASCII-Kontrollzeichen (oktal 000-037)
|
16
|
space
|
Leerzeichen (ASCII 040)
|
17
|
CR
|
Carriage Return (Wagenrücklauf, ASCII 015)
|
18
|
specials
|
Eins der Zeichen ()<>@,;:\\"\.\[\]
|
19
|
qtext
|
Ein char außer *, \ oder CR
|
20
|
dtext
|
Ein char außer [, ], \ oder CR
|
21
|
quoted -pair
|
\ char
|
|
|
|
22
|
comment
|
( (ctext | quoted-pair | comment )* )
|
23
|
ctext
|
Ein char außer '(', ')',' \' oder CR
|
Friedl konstruiert aus dieser Beschreibung einen einzigen regulären Ausdruck, der aus 4724 Zeichen besteht. Der folgende Nachbau der Grammatik im TextTransformer ist in etwa so lang, wie die Spezifikation selbst.
|