32 |
No first char |
No first char |
33 |
No need char |
No need char |
34 |
|
|
35 |
|
|
36 |
|
/\x{100}/I |
37 |
|
Capturing subpattern count = 0 |
38 |
|
No options |
39 |
|
First char = \x{100} |
40 |
|
No need char |
41 |
|
|
42 |
|
/ (?: [\040\t] | \( |
43 |
|
(?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )* |
44 |
|
\) )* # optional leading comment |
45 |
|
(?: (?: |
46 |
|
[^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+ # some number of atom characters... |
47 |
|
(?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom |
48 |
|
| |
49 |
|
" (?: # opening quote... |
50 |
|
[^\\\x80-\xff\n\015"] # Anything except backslash and quote |
51 |
|
| # or |
52 |
|
\\ [^\x80-\xff] # Escaped something (something != CR) |
53 |
|
)* " # closing quote |
54 |
|
) # initial word |
55 |
|
(?: (?: [\040\t] | \( |
56 |
|
(?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )* |
57 |
|
\) )* \. (?: [\040\t] | \( |
58 |
|
(?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )* |
59 |
|
\) )* (?: |
60 |
|
[^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+ # some number of atom characters... |
61 |
|
(?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom |
62 |
|
| |
63 |
|
" (?: # opening quote... |
64 |
|
[^\\\x80-\xff\n\015"] # Anything except backslash and quote |
65 |
|
| # or |
66 |
|
\\ [^\x80-\xff] # Escaped something (something != CR) |
67 |
|
)* " # closing quote |
68 |
|
) )* # further okay, if led by a period |
69 |
|
(?: [\040\t] | \( |
70 |
|
(?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )* |
71 |
|
\) )* @ (?: [\040\t] | \( |
72 |
|
(?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )* |
73 |
|
\) )* (?: |
74 |
|
[^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+ # some number of atom characters... |
75 |
|
(?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom |
76 |
|
| \[ # [ |
77 |
|
(?: [^\\\x80-\xff\n\015\[\]] | \\ [^\x80-\xff] )* # stuff |
78 |
|
\] # ] |
79 |
|
) # initial subdomain |
80 |
|
(?: # |
81 |
|
(?: [\040\t] | \( |
82 |
|
(?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )* |
83 |
|
\) )* \. # if led by a period... |
84 |
|
(?: [\040\t] | \( |
85 |
|
(?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )* |
86 |
|
\) )* (?: |
87 |
|
[^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+ # some number of atom characters... |
88 |
|
(?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom |
89 |
|
| \[ # [ |
90 |
|
(?: [^\\\x80-\xff\n\015\[\]] | \\ [^\x80-\xff] )* # stuff |
91 |
|
\] # ] |
92 |
|
) # ...further okay |
93 |
|
)* |
94 |
|
# address |
95 |
|
| # or |
96 |
|
(?: |
97 |
|
[^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+ # some number of atom characters... |
98 |
|
(?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom |
99 |
|
| |
100 |
|
" (?: # opening quote... |
101 |
|
[^\\\x80-\xff\n\015"] # Anything except backslash and quote |
102 |
|
| # or |
103 |
|
\\ [^\x80-\xff] # Escaped something (something != CR) |
104 |
|
)* " # closing quote |
105 |
|
) # one word, optionally followed by.... |
106 |
|
(?: |
107 |
|
[^()<>@,;:".\\\[\]\x80-\xff\000-\010\012-\037] | # atom and space parts, or... |
108 |
|
\( |
109 |
|
(?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )* |
110 |
|
\) | # comments, or... |
111 |
|
|
112 |
|
" (?: # opening quote... |
113 |
|
[^\\\x80-\xff\n\015"] # Anything except backslash and quote |
114 |
|
| # or |
115 |
|
\\ [^\x80-\xff] # Escaped something (something != CR) |
116 |
|
)* " # closing quote |
117 |
|
# quoted strings |
118 |
|
)* |
119 |
|
< (?: [\040\t] | \( |
120 |
|
(?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )* |
121 |
|
\) )* # leading < |
122 |
|
(?: @ (?: [\040\t] | \( |
123 |
|
(?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )* |
124 |
|
\) )* (?: |
125 |
|
[^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+ # some number of atom characters... |
126 |
|
(?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom |
127 |
|
| \[ # [ |
128 |
|
(?: [^\\\x80-\xff\n\015\[\]] | \\ [^\x80-\xff] )* # stuff |
129 |
|
\] # ] |
130 |
|
) # initial subdomain |
131 |
|
(?: # |
132 |
|
(?: [\040\t] | \( |
133 |
|
(?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )* |
134 |
|
\) )* \. # if led by a period... |
135 |
|
(?: [\040\t] | \( |
136 |
|
(?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )* |
137 |
|
\) )* (?: |
138 |
|
[^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+ # some number of atom characters... |
139 |
|
(?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom |
140 |
|
| \[ # [ |
141 |
|
(?: [^\\\x80-\xff\n\015\[\]] | \\ [^\x80-\xff] )* # stuff |
142 |
|
\] # ] |
143 |
|
) # ...further okay |
144 |
|
)* |
145 |
|
|
146 |
|
(?: (?: [\040\t] | \( |
147 |
|
(?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )* |
148 |
|
\) )* , (?: [\040\t] | \( |
149 |
|
(?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )* |
150 |
|
\) )* @ (?: [\040\t] | \( |
151 |
|
(?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )* |
152 |
|
\) )* (?: |
153 |
|
[^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+ # some number of atom characters... |
154 |
|
(?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom |
155 |
|
| \[ # [ |
156 |
|
(?: [^\\\x80-\xff\n\015\[\]] | \\ [^\x80-\xff] )* # stuff |
157 |
|
\] # ] |
158 |
|
) # initial subdomain |
159 |
|
(?: # |
160 |
|
(?: [\040\t] | \( |
161 |
|
(?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )* |
162 |
|
\) )* \. # if led by a period... |
163 |
|
(?: [\040\t] | \( |
164 |
|
(?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )* |
165 |
|
\) )* (?: |
166 |
|
[^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+ # some number of atom characters... |
167 |
|
(?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom |
168 |
|
| \[ # [ |
169 |
|
(?: [^\\\x80-\xff\n\015\[\]] | \\ [^\x80-\xff] )* # stuff |
170 |
|
\] # ] |
171 |
|
) # ...further okay |
172 |
|
)* |
173 |
|
)* # further okay, if led by comma |
174 |
|
: # closing colon |
175 |
|
(?: [\040\t] | \( |
176 |
|
(?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )* |
177 |
|
\) )* )? # optional route |
178 |
|
(?: |
179 |
|
[^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+ # some number of atom characters... |
180 |
|
(?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom |
181 |
|
| |
182 |
|
" (?: # opening quote... |
183 |
|
[^\\\x80-\xff\n\015"] # Anything except backslash and quote |
184 |
|
| # or |
185 |
|
\\ [^\x80-\xff] # Escaped something (something != CR) |
186 |
|
)* " # closing quote |
187 |
|
) # initial word |
188 |
|
(?: (?: [\040\t] | \( |
189 |
|
(?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )* |
190 |
|
\) )* \. (?: [\040\t] | \( |
191 |
|
(?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )* |
192 |
|
\) )* (?: |
193 |
|
[^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+ # some number of atom characters... |
194 |
|
(?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom |
195 |
|
| |
196 |
|
" (?: # opening quote... |
197 |
|
[^\\\x80-\xff\n\015"] # Anything except backslash and quote |
198 |
|
| # or |
199 |
|
\\ [^\x80-\xff] # Escaped something (something != CR) |
200 |
|
)* " # closing quote |
201 |
|
) )* # further okay, if led by a period |
202 |
|
(?: [\040\t] | \( |
203 |
|
(?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )* |
204 |
|
\) )* @ (?: [\040\t] | \( |
205 |
|
(?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )* |
206 |
|
\) )* (?: |
207 |
|
[^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+ # some number of atom characters... |
208 |
|
(?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom |
209 |
|
| \[ # [ |
210 |
|
(?: [^\\\x80-\xff\n\015\[\]] | \\ [^\x80-\xff] )* # stuff |
211 |
|
\] # ] |
212 |
|
) # initial subdomain |
213 |
|
(?: # |
214 |
|
(?: [\040\t] | \( |
215 |
|
(?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )* |
216 |
|
\) )* \. # if led by a period... |
217 |
|
(?: [\040\t] | \( |
218 |
|
(?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )* |
219 |
|
\) )* (?: |
220 |
|
[^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+ # some number of atom characters... |
221 |
|
(?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom |
222 |
|
| \[ # [ |
223 |
|
(?: [^\\\x80-\xff\n\015\[\]] | \\ [^\x80-\xff] )* # stuff |
224 |
|
\] # ] |
225 |
|
) # ...further okay |
226 |
|
)* |
227 |
|
# address spec |
228 |
|
(?: [\040\t] | \( |
229 |
|
(?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )* |
230 |
|
\) )* > # trailing > |
231 |
|
# name and address |
232 |
|
) (?: [\040\t] | \( |
233 |
|
(?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] | \( (?: [^\\\x80-\xff\n\015()] | \\ [^\x80-\xff] )* \) )* |
234 |
|
\) )* # optional trailing comment |
235 |
|
/xSI |
236 |
|
Capturing subpattern count = 0 |
237 |
|
Contains explicit CR or LF match |
238 |
|
Options: extended |
239 |
|
No first char |
240 |
|
No need char |
241 |
|
Subject length lower bound = 3 |
242 |
|
Starting byte set: \x09 \x20 ! " # $ % & ' ( * + - / 0 1 2 3 4 5 6 7 8 |
243 |
|
9 = ? A B C D E F G H I J K L M N O P Q R S T U V W X Y Z ^ _ ` a b c d e |
244 |
|
f g h i j k l m n o p q r s t u v w x y z { | } ~ \x7f \xff |
245 |
|
|
246 |
/-- End of testinput17 --/ |
/-- End of testinput17 --/ |