OLD | NEW |
| (Empty) |
1 # Copyright (c) 2001-2015 International Business Machines | |
2 # Corporation and others. All Rights Reserved. | |
3 # | |
4 # file: | |
5 # | |
6 # ICU regular expression test cases. | |
7 # | |
8 # format: one test case per line, | |
9 # <test case> = <pattern> <flags> <match string> [# commen
t] | |
10 # <pattern> = "<regular expression pattern>" | |
11 # <match string> = "<tagged string>" | |
12 # the quotes on the pattern and match string can
be " or ' or / | |
13 # <tagged string> = text, with the start and end of each | |
14 # capture group tagged with <n>...</n>. The ove
rall match, | |
15 # if any, is group 0, as in <0>matched text</0> | |
16 # A region can be specified with <r>...</r> tag
s. | |
17 # Standard ICU unescape will be applied, allowin
g \u, \U, etc. to appear. | |
18 # | |
19 # <flags> = any combination of | |
20 # i case insensitive match | |
21 # x free spacing and comments | |
22 # s dot-matches-all mode | |
23 # m multi-line mode. | |
24 # ($ and ^ match at embedded new-line
s) | |
25 # D Unix Lines mode (only recognize 0x0a
as new-line) | |
26 # Q UREGEX_LITERAL flag. Entire pattern
is literal string. | |
27 # v If icu configured without break itera
tion, this | |
28 # regex test pattern should not compile
. | |
29 # e set the UREGEX_ERROR_ON_UNKNOWN_ESCAP
ES flag | |
30 # d dump the compiled pattern | |
31 # t trace operation of match engine. | |
32 # 2-9 a digit between 2 and 9, specifies th
e number of | |
33 # times to execute find(). The expecte
d results are | |
34 # for the last find() in the sequence. | |
35 # G Only check match / no match. Do not
check capture groups. | |
36 # E Pattern compilation error expected | |
37 # L Use LookingAt() rather than find() | |
38 # M Use matches() rather than find(). | |
39 # | |
40 # a Use non-Anchoring Bounds. | |
41 # b Use Transparent Bounds. | |
42 # The a and b options only make a diffe
rence if | |
43 # a <r>region</r> has been specified in
the string. | |
44 # z|Z hitEnd was expected(z) or not expecte
d (Z). | |
45 # With neither, hitEnd is not checked. | |
46 # y|Y Require End expected(y) or not expect
ed (Y). | |
47 # | |
48 # White space must be present between the flags
and the match string. | |
49 # | |
50 | |
51 # Look-ahead expressions | |
52 # | |
53 "(?!0{5})(\d{5})" "<0><1>00001</1></0>zzzz" | |
54 "(?!0{5})(\d{5})z" "<0><1>00001</1>z</0>zzz" | |
55 "(?!0{5})(\d{5})(?!y)" "<0><1>00001</1></0>zzzz" | |
56 "abc(?=def)" "<0>abc</0>def" | |
57 "(.*)(?=c)" "<0><1>ab</1></0>cdef" | |
58 | |
59 "(?:.*)(?=c)" "<r>ab</r>cdef" | |
60 "(?:.*)(?=c)" b "<r><0>ab</0></r>cdef" # transparent bounds | |
61 "(?:.*)(?=c)" bM "<r><0>ab</0></r>cdef" # transparent bounds | |
62 | |
63 "(?:.*)(?=(c))" b "<0>ab</0><1>c</1>def" # Capture in look-ahe
ad | |
64 "(?=(.)\1\1)\1" "abcc<0><1>d</1></0>ddefg" # Backrefs to look-ah
ead capture | |
65 | |
66 ".(?!\p{L})" "abc<0>d</0> " # Negated look-ahead | |
67 ".(?!(\p{L}))" "abc<0>d</0> " # Negated look-ahead,
no capture | |
68 # visible outside o
f look-ahead | |
69 "and(?=roid)" L "<0>and</0>roid" | |
70 "and(?=roid)" M "<r>and</r>roid" | |
71 "and(?=roid)" bM "<r><0>and</0></r>roid" | |
72 | |
73 "and(?!roid)" L "<0>and</0>roix" | |
74 "and(?!roid)" L "android" | |
75 | |
76 "and(?!roid)" M "<r><0>and</0></r>roid" # Opaque bounds | |
77 "and(?!roid)" bM "<r>and</r>roid" | |
78 "and(?!roid)" bM "<r><0>and</0></r>roix" | |
79 | |
80 # | |
81 # Negated Lookahead, various regions and region transparency | |
82 # | |
83 "abc(?!def)" "<0>abc</0>xyz" | |
84 "abc(?!def)" "abcdef" | |
85 "abc(?!def)" "<r><0>abc</0></r>def" | |
86 "abc(?!def)" b "<r>abc</r>def" | |
87 "abc(?!def)" b "<r><0>abc</0></r>xyz" | |
88 | |
89 # | |
90 # Anchoring Bounds | |
91 # | |
92 "^def$" "abc<r><0>def</0></r>ghi" # anchoring (
default) bounds | |
93 "^def$" a "abc<r>def</r>ghi" # non-anchori
ng bounds | |
94 "^def" a "<r><0>def</0></r>ghi" # non-anchori
ng bounds | |
95 "def$" a "abc<r><0>def</0></r>" # non-anchori
ng bounds | |
96 | |
97 "^.*$" m "<0>line 1</0>\n line 2" | |
98 "^.*$" m2 "line 1\n<0> line 2</0>" | |
99 "^.*$" m3 "line 1\n line 2" | |
100 "^.*$" m "li<r><0>ne </0></r>1\n line 2" # anchoring b
ounds | |
101 "^.*$" m2 "li<r>ne </r>1\n line 2" # anchoring b
ounds | |
102 "^.*$" am "li<r>ne </r>1\n line 2" # non-anchori
ng bounds | |
103 "^.*$" am "li\n<r><0>ne </0></r>\n1\n line 2" # non-anchori
ng bounds | |
104 | |
105 # | |
106 # HitEnd and RequireEnd for new-lines just before end-of-input | |
107 # | |
108 "xyz$" yz "<0>xyz</0>\n" | |
109 "xyz$" yz "<0>xyz</0>\x{d}\x{a}" | |
110 | |
111 "xyz$" myz "<0>xyz</0>" # multi-line
mode | |
112 "xyz$" mYZ "<0>xyz</0>\n" | |
113 "xyz$" mYZ "<0>xyz</0>\r\n" | |
114 "xyz$" mYZ "<0>xyz</0>\x{85}abcd" | |
115 | |
116 "xyz$" Yz "xyz\nx" | |
117 "xyz$" Yz "xyza" | |
118 "xyz$" yz "<0>xyz</0>" | |
119 | |
120 # | |
121 # HitEnd | |
122 # | |
123 "abcd" Lz "a" | |
124 "abcd" Lz "ab" | |
125 "abcd" Lz "abc" | |
126 "abcd" LZ "<0>abcd</0>" | |
127 "abcd" LZ "<0>abcd</0>e" | |
128 "abcd" LZ "abcx" | |
129 "abcd" LZ "abx" | |
130 "abcd" Lzi "a" | |
131 "abcd" Lzi "ab" | |
132 "abcd" Lzi "abc" | |
133 "abcd" LZi "<0>abcd</0>" | |
134 "abcd" LZi "<0>abcd</0>e" | |
135 "abcd" LZi "abcx" | |
136 "abcd" LZi "abx" | |
137 | |
138 # | |
139 # All Unicode line endings recognized. | |
140 # 0a, 0b, 0c, 0d, 0x85, 0x2028, 0x2029 | |
141 # Multi-line and non-multiline mode take different paths, so repeated tests. | |
142 # | |
143 "^def$" mYZ "abc\x{a}<0>def</0>\x{a}ghi" | |
144 "^def$" mYZ "abc\x{b}<0>def</0>\x{b}ghi" | |
145 "^def$" mYZ "abc\x{c}<0>def</0>\x{c}ghi" | |
146 "^def$" mYZ "abc\x{d}<0>def</0>\x{d}ghi" | |
147 "^def$" mYZ "abc\x{85}<0>def</0>\x{85}ghi" | |
148 "^def$" mYZ "abc\x{2028}<0>def</0>\x{2028}ghi" | |
149 "^def$" mYZ "abc\x{2029}<0>def</0>\x{2029}ghi" | |
150 "^def$" mYZ "abc\r\n<0>def</0>\r\nghi" | |
151 | |
152 "^def$" yz "<0>def</0>\x{a}" | |
153 "^def$" yz "<0>def</0>\x{b}" | |
154 "^def$" yz "<0>def</0>\x{c}" | |
155 "^def$" yz "<0>def</0>\x{d}" | |
156 "^def$" yz "<0>def</0>\x{85}" | |
157 "^def$" yz "<0>def</0>\x{2028}" | |
158 "^def$" yz "<0>def</0>\x{2029}" | |
159 "^def$" yz "<0>def</0>\r\n" | |
160 "^def$" yz "<0>def</0>" | |
161 | |
162 | |
163 "^def$" "<0>def</0>\x{2028" #TODO: should be an error o
f some sort. | |
164 | |
165 # | |
166 # UNIX_LINES mode | |
167 # | |
168 "abc$" D "<0>abc</0>\n" | |
169 "abc$" D "abc\r" | |
170 "abc$" D "abc\u0085" | |
171 "a.b" D "<0>a\rb</0>" | |
172 "a.b" D "a\nb" | |
173 "(?d)abc$" "<0>abc</0>\n" | |
174 "(?d)abc$" "abc\r" | |
175 "abc$" mD "<0>abc</0>\ndef" | |
176 "abc$" mD "abc\rdef" | |
177 | |
178 ".*def" L "abc\r def xyz" # Normal mode, LookingAt(
) stops at \r | |
179 ".*def" DL "<0>abc\r def</0> xyz" # Unix Lines mode, \r not
line end. | |
180 ".*def" DL "abc\n def xyz" | |
181 | |
182 "(?d)a.b" "a\nb" | |
183 "(?d)a.b" "<0>a\rb</0>" | |
184 | |
185 "^abc" m "xyz\r<0>abc</0>" | |
186 "^abc" Dm "xyz\rabc" | |
187 "^abc" Dm "xyz\n<0>abc</0>" | |
188 | |
189 | |
190 | |
191 # Capturing parens | |
192 ".(..)." "<0>a<1>bc</1>d</0>" | |
193 ".*\A( +hello)" "<0><1> hello</1></0>" | |
194 "(hello)|(goodbye)" "<0><1>hello</1></0>" | |
195 "(hello)|(goodbye)" "<0><2>goodbye</2></0>" | |
196 "abc( +( inner(X?) +) xyz)" "leading cruft <0>abc<1> <2> inner<3></3>
</2> xyz</1></0> cruft" | |
197 "\s*([ixsmdt]*)([:letter:]*)" "<0> <1>d</1><2></2></0> " | |
198 "(a|b)c*d" "a<0><1>b</1>cd</0>" | |
199 | |
200 # Non-capturing parens (?: stuff). Groups, but does not capture. | |
201 "(?:abc)*(tail)" "<0>abcabcabc<1>tail</1></0>" | |
202 | |
203 # Non-greedy *? quantifier | |
204 ".*?(abc)" "<0> abx <1>abc</1></0> abc abc abc" | |
205 ".*(abc)" "<0> abx abc abc abc <1>abc</1></0>" | |
206 | |
207 "((?:abc |xyz )*?)abc " "<0><1>xyz </1>abc </0>abc abc " | |
208 "((?:abc |xyz )*)abc " "<0><1>xyz abc abc </1>abc </0>" | |
209 | |
210 # Non-greedy +? quantifier | |
211 "(a+?)(a*)" "<0><1>a</1><2>aaaaaaaaaaaa</2></0>" | |
212 "(a+)(a*)" "<0><1>aaaaaaaaaaaaa</1><2></2></0>" | |
213 | |
214 "((ab)+?)((ab)*)" "<0><1><2>ab</2></1><3>ababababab<4>ab</4></3></0
>" | |
215 "((ab)+)((ab)*)" "<0><1>abababababab<2>ab</2></1><3></3></0>" | |
216 | |
217 # Non-greedy ?? quantifier | |
218 "(ab)(ab)??(ab)??(ab)??(ab)??c" "<0><1>ab</1><4>ab</4><5>ab</5>c</0>" | |
219 | |
220 # Unicode Properties as naked elements in a pattern | |
221 "\p{Lu}+" "here we go ... <0>ABC</0> and no more." | |
222 "(\p{L}+)(\P{L}*?) (\p{Zs}*)" "7999<0><1>letters</1><2>4949%^&*(</2> <3> </3>
</0>" | |
223 | |
224 # \w and \W | |
225 "\w+" " $%^&*( <0>hello123</0>%^&*(" | |
226 "\W+" "<0> $%^&*( </0>hello123%^&*(" | |
227 | |
228 # \A match at beginning of input only. | |
229 ".*\Ahello" "<0>hello</0> hello" | |
230 ".*hello" "<0>hello hello</0>" | |
231 ".*\Ahello" "stuff\nhello" # don't match after embedded new-l
ine. | |
232 | |
233 # \b \B | |
234 # | |
235 ".*?\b(.).*" "<0> $%^&*( <1>h</1>ello123%^&*()gxx</0>" | |
236 "\ba\b" "-<0>a</0>" | |
237 "\by\b" "xy" | |
238 "[ \b]" "<0>b</0>" # in a set, \b is a literal b. | |
239 | |
240 # Finds first chars of up to 5 words | |
241 "(?:.*?\b(\w))?(?:.*?\b(\w))?(?:.*?\b(\w))?(?:.*?\b(\w))?(?:.*?\b(\w))?" "<0><
1>T</1>the <2>q</2>ick <3>b</3>rown <4>f</4></0>ox" | |
242 | |
243 "H.*?((?:\B.)+)" "<0>H<1>ello</1></0> " | |
244 ".*?((?:\B.)+).*?((?:\B.)+).*?((?:\B.)+)" "<0>H<1>ello</1> <2> </2>g<3>ood
bye</3></0> " | |
245 | |
246 "(?:.*?\b(.))?(?:.*?\b(.))?(?:.*?\b(.))?(?:.*?\b(.))?(?:.*?\b(.))?.*" "<0> \
u0301 \u0301<1>A</1>\u0302BC\u0303\u0304<2> </2>\u0305 \u0306<3>X</3>\u0307Y\u03
08</0>" | |
247 | |
248 | |
249 # | |
250 # Unicode word boundary mode | |
251 # | |
252 "(?w).*?\b" v "<0></0>hello, world" | |
253 "(?w).*?(\b.+?\b).*" v "<0><1> </1> 123.45 </0>" | |
254 "(?w).*?(\b\d.*?\b).*" v "<0> <1>123.45</1> </0>" | |
255 ".*?(\b.+?\b).*" "<0> <1>123</1>.45 </0>" | |
256 "(?w:.*?(\b\d.*?\b).*)" v "<0> <1>123.45</1> </0>" | |
257 "(?w:.*?(\b.+?\b).*)" v "<0><1>don't</1> </0>" | |
258 "(?w:.+?(\b\S.+?\b).*)" v "<0> <1>don't</1> </0>" | |
259 "(?w:(\b.+?)(\b.+?)(\b.+?)(\b.+?)(\b.+?)(\b.+?)(\b.+?).*)" v "<0><1>.</1><2>
</2><3>,</3><4>:</4><5>$</5><6>37,000.50</6><7> </7> </0>" | |
260 | |
261 # | |
262 # Unicode word boundaries with Regions | |
263 # | |
264 "(?w).*?\b" v "abc<r><0>def</0></r>ghi" | |
265 "(?w).*?\b" v2 "abc<r>def<0></0></r>ghi" | |
266 "(?w).*?\b" v3 "abc<r>def</r>ghi" | |
267 #"(?w).*?\b" vb "abc<r><0>def</0></r>ghi" # TODO: bug.
Ticket 6073 | |
268 #"(?w).*?\b" vb2 "abc<r>def</r>ghi" | |
269 | |
270 | |
271 | |
272 # . does not match new-lines | |
273 "." "\u000a\u000d\u0085\u000c\u000b\u2028\u2029<0>X</
0>\u000aY" | |
274 "A." "A\u000a "# no match | |
275 | |
276 # \d for decimal digits | |
277 "\d*" "<0>0123456789\u0660\u06F9\u0969\u0A66\u17E2\uFF1
0\U0001D7CE\U0001D7FF</0>non-digits" | |
278 "\D+" "<0>non digits</0>" | |
279 "\D*(\d*)(\D*)" "<0>non-digits<1>3456666</1><2>more non digits</2
></0>" | |
280 | |
281 # \Q...\E quote mode | |
282 "hel\Qlo, worl\Ed" "<0>hello, world</0>" | |
283 "\Q$*^^(*)?\A\E(a*)" "<0>$*^^(*)?\\A<1>aaaaaaaaaaaaaaa</1></0>" | |
284 "[abc\Q]\r\E]+" "<0>aaaccc]]]\\\\\\</0>\r..." # \Q ... \E escap
e in a [set] | |
285 | |
286 # UREGEX_LITERAL - entire pattern is a literal string, no escapes recognized. | |
287 # Note that data strings in test cases still get escape process
ing. | |
288 "abc\an\r\E\\abcd\u0031bye" Q "lead<0>abc\\an\\r\\E\\\\abcd\\u0031bye</0>ex
tra" | |
289 "case insensitive \\ (l)iteral" Qi "stuff!! <0>cAsE InSenSiTiVE \\\\ (L)ITeral</
0>" | |
290 | |
291 # \S and \s space characters | |
292 "\s+" "not_space<0> \t \r \n \u3000 \u2004 \u2028 \u202
9</0>xyz" | |
293 "(\S+).*?(\S+).*" "<0><1>Not-spaces</1> <2>more-non-spaces</2> <
/0>" | |
294 | |
295 # \X consume one Grapheme Cluster. | |
296 "(\X)?(\X)?(\X)?(\X)?(\X)?(\X)?(\X)?(\X)?(\X)?(\X)?(\X)?(\X)?" "<0><1>A</1><2>
B</2><3> </3><4>\r\n</4></0>" | |
297 "(\X)?(\X)?(\X)?(\X)?(\X)?(\X)?(\X)?(\X)?(\X)?(\X)?(\X)?(\X)?" "<0><1>A\u0301<
/1><2>\n</2><3>\u0305</3><4>a\u0302\u0303\u0304</4></0>" | |
298 "(\X)?(\X)?(\X)?(\X)?(\X)?(\X)?(\X)?(\X)?(\X)?(\X)?(\X)?(\X)?" "<0><1>\u1100\u
1161\u11a8</1><2>\u115f\u11a2\u11f9</2></0>" | |
299 "(\X)?(\X)?(\X)?(\X)?(\X)?(\X)?(\X)?(\X)?(\X)?(\X)?(\X)?(\X)?" "<0><1>\u1100\u
ac01</1><2>\uac02</2><3>\uac03\u11b0</3></0>" | |
300 "(\X)?(\X)?(\X)?(\X)?(\X)?(\X)?(\X)?(\X)?(\X)?(\X)?(\X)?(\X)?" "<0><1>\u1100\u
1101\uac02\u0301</1><2>\u1100</2></0>" | |
301 | |
302 # ^ matches only at beginning of line | |
303 ".*^(Hello)" "<0><1>Hello</1></0> Hello Hello Hello Goodbye" | |
304 ".*(Hello)" "<0>Hello Hello Hello <1>Hello</1></0> Goodbye" | |
305 ".*^(Hello)" " Hello Hello Hello Hello Goodbye"# No Match | |
306 | |
307 # $ matches only at end of line, or before a newline preceding the end of line | |
308 ".*?(Goodbye)$" zy "<0>Hello Goodbye Goodbye <1>Goodbye</1></0>" | |
309 ".*?(Goodbye)" ZY "<0>Hello <1>Goodbye</1></0> Goodbye Goodbye" | |
310 ".*?(Goodbye)$" z "Hello Goodbye> Goodbye Goodbye "# No Match | |
311 | |
312 ".*?(Goodbye)$" zy "<0>Hello Goodbye Goodbye <1>Goodbye</1></0>\n" | |
313 ".*?(Goodbye)$" zy "<0>Hello Goodbye Goodbye <1>Goodbye</1></0>\n" | |
314 ".*?(Goodbye)$" zy "<0>Hello Goodbye Goodbye <1>Goodbye</1></0>\r\n" | |
315 ".*?(Goodbye)$" z "Hello Goodbye Goodbye Goodbye\n\n"# No Match | |
316 | |
317 # \Z matches at end of input, like $ with default flags. | |
318 ".*?(Goodbye)\Z" zy "<0>Hello Goodbye Goodbye <1>Goodbye</1></0>" | |
319 ".*?(Goodbye)" ZY "<0>Hello <1>Goodbye</1></0> Goodbye Goodbye" | |
320 ".*?(Goodbye)\Z" z "Hello Goodbye> Goodbye Goodbye "# No Match | |
321 "here$" z "here\nthe end"# No Match | |
322 | |
323 ".*?(Goodbye)\Z" "<0>Hello Goodbye Goodbye <1>Goodbye</1></0>\n" | |
324 ".*?(Goodbye)\Z" "<0>Hello Goodbye Goodbye <1>Goodbye</1></0>\n" | |
325 ".*?(Goodbye)\Z" "<0>Hello Goodbye Goodbye <1>Goodbye</1></0>\r\n" | |
326 ".*?(Goodbye)\Z" "Hello Goodbye Goodbye Goodbye\n\n"# No Match | |
327 | |
328 # \z matches only at the end of string. | |
329 # no special treatment of new lines. | |
330 # no dependencies on flag settings. | |
331 ".*?(Goodbye)\z" zy "<0>Hello Goodbye Goodbye <1>Goodbye</1></0>" | |
332 ".*?(Goodbye)\z" z "Hello Goodbye Goodbye Goodbye "# No Match | |
333 "here$" z "here\nthe end"# No Match | |
334 | |
335 ".*?(Goodbye)\z" z "Hello Goodbye Goodbye Goodbye\n"# No Match | |
336 ".*?(Goodbye)\n\z" zy "<0>Hello Goodbye Goodbye <1>Goodbye</1>\n</0>" | |
337 "abc\z|def" ZY "abc<0>def</0>" | |
338 | |
339 # (?# comment) doesn't muck up pattern | |
340 "Hello (?# this is a comment) world" " <0>Hello world</0>..." | |
341 | |
342 # Check some implementation corner cases base on the way literal strings are com
piled. | |
343 "A" "<0>A</0>" | |
344 "AB" "<0>AB</0>ABABAB" | |
345 "AB+" "<0>ABBB</0>A" | |
346 "AB+" "<0>AB</0>ABAB" | |
347 "ABC+" "<0>ABC</0>ABC" | |
348 "ABC+" "<0>ABCCCC</0>ABC" | |
349 "(?:ABC)+" "<0>ABCABCABC</0>D" | |
350 "(?:ABC)DEF+" "<0>ABCDEFFF</0>D" | |
351 "AB\.C\eD\u0666E" "<0>AB.C\u001BD\u0666E</0>F" | |
352 "ab\Bde" "<0>abde</0>" | |
353 | |
354 # loop breaking | |
355 "(a?)*" "<0><1></1></0>xyz" | |
356 "(a?)+" "<0><1></1></0>xyz" | |
357 "^(?:a?b?)*$" "a--" | |
358 "(x?)*xyz" "<0>xx<1></1>xyz</0>" # Sligthly wierd, but co
rrect. The "last" time through (x?), | |
359 # it matches the empty
string. | |
360 | |
361 # Set expressions, basic operators and escapes work | |
362 # | |
363 "[\d]+" "<0>0123</0>abc/.," | |
364 "[^\d]+" "0123<0>abc/.,</0>" | |
365 "[\D]+" "0123<0>abc/.,</0>" | |
366 "[^\D]+" "<0>0123</0>abc/.," | |
367 | |
368 "[\s]+" "<0> \t</0>abc/.," | |
369 "[^\s]+" " \t<0>abc/.,</0>" | |
370 "[\S]+" " \t<0>abc/.,</0>" | |
371 "[^\S]+" "<0> \t</0>abc/.," | |
372 | |
373 "[\w]+" "<0>abc123</0> .,;" | |
374 "[^\w]+" "abc123<0> .,;</0>" | |
375 "[\W]+" "abc123<0> .,;</0>" | |
376 "[^\W]+" "<0>abc123</0> .,;" | |
377 | |
378 "[\z]+" "abc<0>zzz</0>def" # \z has no special meanin
g | |
379 "[^\z]+" "<0>abc</0>zzzdef" | |
380 "[\^]+" "abc<0>^^</0>" | |
381 "[^\^]+" "<0>abc</0>^^" | |
382 | |
383 "[\u0041c]+" "<0>AcAc</0>def" | |
384 "[\U00010002]+" "<0>\ud800\udc02</0>\U00010003" | |
385 "[^\U00010002]+" "<0>Hello</0>\x{10002}" | |
386 "[\x61b]+" "<0>abab</0>cde" | |
387 #"[\x6z]+" "\x06" #TODO: single hex digit
s should fail | |
388 "[\x{9}\x{75}\x{6d6}\x{6ba6}\x{6146B}\x{10ffe3}]+" "<0>\u0009\u0075\u06d6\u6ba6
\U0006146B\U0010ffe3</0>abc" | |
389 | |
390 "[\N{LATIN CAPITAL LETTER TONE SIX}ab\N{VARIATION SELECTOR-70} ]+" "x<0> \
u0184\U000E0135 ab</0>c" | |
391 "[\N{LATIN SMALL LETTER C}-\N{LATIN SMALL LETTER F}]+" "ab<0>cdef</0>ghi" | |
392 | |
393 | |
394 | |
395 # | |
396 # [set expressions], check the precedence of '-', '&', '--', '&&' | |
397 # '-' and '&', for compatibility with ICU UnicodeSet, have the same | |
398 # precedence as the implicit Union between adjacent items. | |
399 # '--' and '&&', for compatibility with Java, have lower precedence than | |
400 # the implicit Union operations. '--' and '&&' themselves | |
401 # have the same precedence, and group left to right. | |
402 # | |
403 "[[a-m]-[f-w]p]+" "<0>dep</0>fgwxyz" | |
404 "[^[a-m]-[f-w]p]+" "dep<0>fgwxyz</0>" | |
405 | |
406 "[[a-m]--[f-w]p]+" "<0>de</0>pfgwxyz" | |
407 "[^[a-m]--[f-w]p]+" "de<0>pfgwxyz</0>" | |
408 | |
409 "[[a-m]&[e-s]w]+" "<0>efmw</0>adnst" | |
410 "[^[a-m]&[e-s]w]+" "efmw<0>adnst</0>" | |
411 | |
412 "[[a-m]&[e-s]]+" "<0>efm</0>adnst" | |
413 | |
414 | |
415 | |
416 # {min,max} iteration qualifier | |
417 "A{3}BC" "<0>AAABC</0>" | |
418 | |
419 "(ABC){2,3}AB" "no matchAB" | |
420 "(ABC){2,3}AB" "ABCAB" | |
421 "(ABC){2,3}AB" "<0>ABC<1>ABC</1>AB</0>" | |
422 "(ABC){2,3}AB" "<0>ABCABC<1>ABC</1>AB</0>" | |
423 "(ABC){2,3}AB" "<0>ABCABC<1>ABC</1>AB</0>CAB" | |
424 | |
425 "(ABC){2}AB" "ABCAB" | |
426 "(ABC){2}AB" "<0>ABC<1>ABC</1>AB</0>" | |
427 "(ABC){2}AB" "<0>ABC<1>ABC</1>AB</0>CAB" | |
428 "(ABC){2}AB" "<0>ABC<1>ABC</1>AB</0>CABCAB" | |
429 | |
430 "(ABC){2,}AB" "ABCAB" | |
431 "(ABC){2,}AB" "<0>ABC<1>ABC</1>AB</0>" | |
432 "(ABC){2,}AB" "<0>ABCABC<1>ABC</1>AB</0>" | |
433 "(ABC){2,}AB" "<0>ABCABCABC<1>ABC</1>AB</0>" | |
434 | |
435 "X{0,0}ABC" "<0>ABC</0>" | |
436 "X{0,1}ABC" "<0>ABC</0>" | |
437 | |
438 "(?:Hello(!{1,3}) there){1}" "Hello there" | |
439 "(?:Hello(!{1,3}) there){1}" "<0>Hello<1>!</1> there</0>" | |
440 "(?:Hello(!{1,3}) there){1}" "<0>Hello<1>!!</1> there</0>" | |
441 "(?:Hello(!{1,3}) there){1}" "<0>Hello<1>!!!</1> there</0>" | |
442 "(?:Hello(!{1,3}) there){1}" "Hello!!!! there" | |
443 | |
444 # Nongreedy {min,max}? intervals | |
445 "(ABC){2,3}?AB" "no matchAB" | |
446 "(ABC){2,3}?AB" "ABCAB" | |
447 "(ABC){2,3}?AB" "<0>ABC<1>ABC</1>AB</0>" | |
448 "(ABC){2,3}?AB" "<0>ABC<1>ABC</1>AB</0>CAB" | |
449 "(ABC){2,3}?AB" "<0>ABC<1>ABC</1>AB</0>CABCAB" | |
450 "(ABC){2,3}?AX" "<0>ABCABC<1>ABC</1>AX</0>" | |
451 "(ABC){2,3}?AX" "ABC<0>ABCABC<1>ABC</1>AX</0>" | |
452 | |
453 # Possessive {min,max}+ intervals | |
454 "(ABC){2,3}+ABC" "ABCABCABC" | |
455 "(ABC){1,2}+ABC" "<0>ABC<1>ABC</1>ABC</0>" | |
456 "(?:(.)\1){2,5}+." "<0>aabbcc<1>d</1>de</0>x" | |
457 | |
458 | |
459 # Atomic Grouping | |
460 "(?>.*)abc" "abcabcabc" # no match. .* consumed entire stri
ng. | |
461 "(?>(abc{2,4}?))(c*)" "<0><1>abcc</1><2>ccc</2></0>ddd" | |
462 "(\.\d\d(?>[1-9]?))\d+" "1.625" | |
463 "(\.\d\d(?>[1-9]?))\d+" "1<0><1>.625</1>0</0>" | |
464 | |
465 # Possessive *+ | |
466 "(abc)*+a" "abcabcabc" | |
467 "(abc)*+a" "<0>abc<1>abc</1>a</0>b" | |
468 "(a*b)*+a" "<0><1>aaaab</1>a</0>aaa" | |
469 | |
470 # Possessive ?+ | |
471 "c?+ddd" "<0>cddd</0>" | |
472 "c?+cddd" "cddd" | |
473 "c?cddd" "<0>cddd</0>" | |
474 | |
475 # Back Reference | |
476 "(?:ab(..)cd\1)*" "<0>ab23cd23ab<1>ww</1>cdww</0>abxxcdyy" | |
477 "ab(?:c|(d?))(\1)" "<0>ab<1><2></2></1></0>c" | |
478 "ab(?:c|(d?))(\1)" "<0>ab<1>d</1><2>d</2></0>" | |
479 "ab(?:c|(d?))(\1)" "<0>ab<1></1><2></2></0>e" | |
480 "ab(?:c|(d?))(\1)" "<0>ab<1></1><2></2></0>" | |
481 | |
482 # Back References that hit/don't hit end | |
483 "(abcd) \1" z "abcd abc" | |
484 "(abcd) \1" Z "<0><1>abcd</1> abcd</0>" | |
485 "(abcd) \1" Z "<0><1>abcd</1> abcd</0> " | |
486 | |
487 # Case Insensitve back references that hit/don't hit end. | |
488 "(abcd) \1" zi "abcd abc" | |
489 "(abcd) \1" Zi "<0><1>abcd</1> ABCD</0>" | |
490 "(abcd) \1" Zi "<0><1>abcd</1> ABCD</0> " | |
491 | |
492 # Back references that hit/don't hit boundary limits. | |
493 | |
494 "(abcd) \1" z "<r>abcd abc</r>d " | |
495 "(abcd) \1" Z "<r><0><1>abcd</1> abcd</0></r> " | |
496 "(abcd) \1" Z "<r><0><1>abcd</1> abcd</0> </r>" | |
497 | |
498 "(abcd) \1" zi "<r>abcd abc</r>d " | |
499 "(abcd) \1" Zi "<r><0><1>abcd</1> abcd</0></r> " | |
500 "(abcd) \1" Zi "<r><0><1>abcd</1> abcd</0> </r>" | |
501 | |
502 # Back reference that fails match near the end of input without actually hitting
the end. | |
503 "(abcd) \1" ZL "abcd abd" | |
504 "(abcd) \1" ZLi "abcd abd" | |
505 | |
506 # Back reference to a zero-length match. They are always a successful match. | |
507 "ab(x?)cd(\1)ef" "<0>ab<1></1>cd<2></2>ef</0>" | |
508 "ab(x?)cd(\1)ef" i "<0>ab<1></1>cd<2></2>ef</0>" | |
509 | |
510 # Back refs to capture groups that didn't participate in the match. | |
511 "ab(?:(c)|(d))\1" "abde" | |
512 "ab(?:(c)|(d))\1" "<0>ab<1>c</1>c</0>e" | |
513 "ab(?:(c)|(d))\1" i "abde" | |
514 "ab(?:(c)|(d))\1" i "<0>ab<1>c</1>c</0>e" | |
515 | |
516 # Named back references | |
517 "(?<one>abcd)\k<one>" "<0><1>abcd</1>abcd</0>" | |
518 "(no)?(?<one>abcd)\k<one>" "<0><2>abcd</2>abcd</0>" | |
519 | |
520 "(?<a_1>...)" E " " # backref names are ascii letters & number
s only" | |
521 "(?<1a>...)" E " " # backref names must begin with a letter" | |
522 "(?<a>.)(?<a>.)" E " " # Repeated names are illegal. | |
523 | |
524 | |
525 # Case Insensitive | |
526 "aBc" i "<0>ABC</0>" | |
527 "a[^bc]d" i "ABD" | |
528 '((((((((((a))))))))))\10' i "<0><1><2><3><4><5><6><7><8><9><10>A</10></9></8
></7></6></5></4></3></2></1>A</0>" | |
529 | |
530 "(?:(?i)a)b" "<0>Ab</0>" | |
531 "ab(?i)cd" "<0>abCd</0>" | |
532 "ab$cd" "abcd" | |
533 | |
534 "ssl" i "abc<0>ßl</0>xyz" | |
535 "ssl" i "abc<0>ẞl</0>xyz" | |
536 "FIND" i "can <0>find</0> ?" # fi ligature, \ufb01 | |
537 "find" i "can <0>FIND</0> ?" | |
538 "ῧ" i "xxx<0>ῧ</0>xxx" # Composed char (match str
ing) decomposes when case-folded (pattern) | |
539 | |
540 # White space handling | |
541 "a b" "ab" | |
542 "abc " "abc" | |
543 "abc " "<0>abc </0>" | |
544 "ab[cd e]z" "<0>ab z</0>" | |
545 "ab\ c" "<0>ab c</0> " | |
546 "ab c" "<0>ab c</0> " | |
547 "ab c" x "ab c " | |
548 "ab\ c" x "<0>ab c</0> " | |
549 | |
550 # | |
551 # Pattern Flags | |
552 # | |
553 "(?u)abc" "<0>abc</0>" | |
554 "(?-u)abc" "<0>abc</0>" | |
555 | |
556 # | |
557 # \c escapes (Control-whatever) | |
558 # | |
559 "\cA" "<0>\u0001</0>" | |
560 "\ca" "<0>\u0001</0>" | |
561 "\c\x" "<0>\u001cx</0>" | |
562 | |
563 | |
564 #Multi-line mode | |
565 'b\s^' m "a\nb\n" | |
566 "(?m)^abc$" "abc \n abc\n<0>abc</0>\nabc" | |
567 "(?m)^abc$" 2 "abc \n abc\nabc\n<0>abc</0>" | |
568 "^abc$" 2 "abc \n abc\nabc\nabc" | |
569 | |
570 # Empty and full range | |
571 "[\u0000-\U0010ffff]+" "<0>abc\u0000\uffff\U00010000\U0010ffffzz</0>" | |
572 "[^\u0000-\U0010ffff]" "abc\u0000\uffff\U00010000\U0010ffffzz" | |
573 "[^a--a]+" "<0>abc\u0000\uffff\U00010000\U0010ffffzz</0>" | |
574 | |
575 # Free-spacing mode | |
576 "a b c # this is a comment" x "<0>abc</0> " | |
577 '^a (?#xxx) (?#yyy) {3}c' x "<0>aaac</0>" | |
578 "a b c [x y z]" x "abc " | |
579 "a b c [x y z]" x "a b c " | |
580 "a b c [x y z]" x "<0>abcx</0>yz" | |
581 "a b c [x y z]" x "<0>abcy</0>yz" | |
582 | |
583 # | |
584 # Look Behind | |
585 # | |
586 "(?<=a)b" "a<0>b</0>" | |
587 "(.*)(?<=[bc])" "<0><1>abc</1></0>d" | |
588 "(?<=(abc))def" "<1>abc</1><0>def</0>" # lookbehind precedes ma
in match. | |
589 "(?<=ab|abc)xyz" "abwxyz" # ab matches, but not fa
r enough. | |
590 "(?<=abc)cde" "abcde" | |
591 "(?<=abc|ab)cde" "ab<0>cde</0>" | |
592 "(?<=abc|ab)cde" "abc<0>cde</0>" | |
593 | |
594 "(?<=bc?c?c?)cd" "ab<0>cd</0>" | |
595 "(?<=bc?c?c?)cd" "abc<0>cd</0>" | |
596 "(?<=bc?c?c?)cd" "abcc<0>cd</0>" | |
597 "(?<=bc?c?c?)cd" "abccc<0>cd</0>" | |
598 "(?<=bc?c?c?)cd" "abcccccd" | |
599 "(?<=bc?c?c?)c+d" "ab<0>cccccd</0>" | |
600 | |
601 ".*(?<=: ?)(\w*)" "<0>1:one 2: two 3:<1>three</1></0> " | |
602 | |
603 # | |
604 # Named Characters | |
605 # | |
606 "a\N{LATIN SMALL LETTER B}c" "<0>abc</0>" | |
607 "a\N{LATIN SMALL LETTER B}c" i "<0>abc</0>" | |
608 "a\N{LATIN SMALL LETTER B}c" i "<0>aBc</0>" | |
609 "a\N{LATIN SMALL LETTER B}c" "aBc" | |
610 | |
611 "\N{FULL STOP}*" "<0>...</0>abc" | |
612 | |
613 "$" "abc<0></0>" | |
614 | |
615 # | |
616 # Optimizations of .* at end of patterns | |
617 # | |
618 "abc.*" "<0>abcdef</0>" | |
619 "abc.*$" "<0>abcdef</0>" | |
620 "abc(.*)" "<0>abc<1>def</1></0>" | |
621 "abc(.*)" "<0>abc<1></1></0>" | |
622 "abc.*" "<0>abc</0>\ndef" | |
623 "abc.*" s "<0>abc\ndef</0>" | |
624 "abc.*$" s "<0>abc\ndef</0>" | |
625 "abc.*$" "abc\ndef" | |
626 "abc.*$" m "<0>abc</0>\ndef" | |
627 "abc.*\Z" m "abc\ndef" | |
628 "abc.*\Z" sm "<0>abc\ndef</0>" | |
629 | |
630 "abc*" "<0>abccc</0>d" | |
631 "abc*$" "<0>abccc</0>" | |
632 "ab(?:ab[xyz]\s)*" "<0>ababy abx </0>abc" | |
633 | |
634 "(?:(abc)|a)(?:bc)+" "<0>abc</0>" | |
635 "(?:(abc)|a)(?:bc)*" "<0><1>abc</1></0>" | |
636 "^[+\-]?[0-9]*\.?[0-9]*" "<0>123.456</0>" | |
637 | |
638 "ab.+yz" "<0>abc12345xyz</0>ttt" | |
639 "ab.+yz" s "<0>abc12345xyz</0>ttt" | |
640 | |
641 "ab.+yz" "abc123\n45xyzttt" | |
642 "ab.+yz" s "<0>abc12\n345xyz</0>ttt" | |
643 | |
644 "ab[0-9]+yz" "---abyz+++" | |
645 "ab[0-9]+yz" "---<0>ab1yz</0>+++" | |
646 "ab[0-9]+yz" "---<0>ab12yz</0>+++" | |
647 "ab[0-9]+yz" "---<0>ab123456yz</0>+++" | |
648 | |
649 "ab([0-9]+|[A-Z]+)yz" "---abyz+++" | |
650 "ab([0-9]+|[A-Z]+)yz" "---<0>ab<1>1</1>yz</0>+++" | |
651 "ab([0-9]+|[A-Z]+)yz" "---<0>ab<1>12</1>yz</0>+++" | |
652 "ab([0-9]+|[A-Z]+)yz" "---<0>ab<1>A</1>yz</0>+++" | |
653 "ab([0-9]+|[A-Z]+)yz" "---<0>ab<1>AB</1>yz</0>+++" | |
654 "ab([0-9]+|[A-Z]+)yz" "---<0>ab<1>ABCDE</1>yz</0>+++" | |
655 | |
656 # | |
657 # Hex format \x escaping | |
658 # | |
659 "ab\x63" "<0>abc</0>" | |
660 "ab\x09w" "<0>ab\u0009w</0>" | |
661 "ab\xabcdc" "<0>ab\u00abcdc</0>" | |
662 "ab\x{abcd}c" "<0>ab\uabcdc</0>" | |
663 "ab\x{101234}c" "<0>ab\U00101234c</0>" | |
664 "abα" "<0>abα</0>" | |
665 | |
666 # | |
667 # Octal Escaping. This conforms to Java conventions, not Perl. | |
668 "\0101\00\03\073\0154\01442" "<0>A\u0000\u0003\u003b\u006c\u0064\u0032</0>" | |
669 "\0776" "<0>\u003f\u0036</0>" # overflow, the 6 is lit
eral. | |
670 "\0376xyz" "<0>\u00fexyz</0>" | |
671 "\08" E "<0>\u00008</0>" | |
672 "\0" E "x" | |
673 | |
674 # | |
675 # \u Surrogate Pairs | |
676 # | |
677 "\ud800\udc00" "<0>\U00010000</0>" | |
678 "\ud800\udc00*" "<0>\U00010000\U00010000\U00010000</0>\U000100
01" | |
679 "\ud800\ud800\udc00" "<0>\ud800\U00010000</0>\U00010000\U00010000\U
00010001" | |
680 "(\ud800)(\udc00)" "\U00010000" | |
681 "\U00010001+" "<0>\U00010001\U00010001</0>\udc01" | |
682 | |
683 # | |
684 # hitEnd with find() | |
685 # | |
686 "abc" Z "aa<0>abc</0> abcab" | |
687 "abc" 2Z "aaabc <0>abc</0>ab" | |
688 "abc" 3z "aa>abc abcab" | |
689 | |
690 # | |
691 # \ escaping | |
692 # | |
693 "abc\jkl" "<0>abcjkl</0>" # escape of a non-special l
etter is just itself. | |
694 "abc[ \j]kl" "<0>abcjkl</0>" | |
695 | |
696 # | |
697 # \R all newline sequences. | |
698 # | |
699 "abc\Rxyz" "<0>abc\u000axyz</0>gh" | |
700 "abc\Rxyz" "<0>abc\u000bxyz</0>gh" | |
701 "abc\Rxyz" "<0>abc\u000cxyz</0>gh" | |
702 "abc\Rxyz" "<0>abc\u000dxyz</0>gh" | |
703 "abc\Rxyz" "<0>abc\u0085xyz</0>gh" | |
704 "abc\Rxyz" "<0>abc\u2028xyz</0>gh" | |
705 "abc\Rxyz" "<0>abc\u2029xyz</0>gh" | |
706 "abc\Rxyz" "<0>abc\u000d\u000axyz</0>gh" | |
707 | |
708 "abc\R\nxyz" "abc\u000d\u000axyzgh" # \R cannot ma
tch only the CR from a CR/LF sequence. | |
709 "abc\r\nxyz" "<0>abc\u000d\u000axyz</0>gh" | |
710 | |
711 "abc\Rxyz" "abc\u0009xyz" # Assorted non
-matches. | |
712 "abc\Rxyz" "abc\u000exyz" | |
713 "abc\Rxyz" "abc\u202axyz" | |
714 | |
715 # \v \V single character new line sequences. | |
716 | |
717 "abc\vxyz" "<0>abc\u000axyz</0>gh" | |
718 "abc\vxyz" "<0>abc\u000bxyz</0>gh" | |
719 "abc\vxyz" "<0>abc\u000cxyz</0>gh" | |
720 "abc\vxyz" "<0>abc\u000dxyz</0>gh" | |
721 "abc\vxyz" "<0>abc\u0085xyz</0>gh" | |
722 "abc\vxyz" "<0>abc\u2028xyz</0>gh" | |
723 "abc\vxyz" "<0>abc\u2029xyz</0>gh" | |
724 "abc\vxyz" "abc\u000d\u000axyzgh" | |
725 "abc\vxyz" "abc?xyzgh" | |
726 | |
727 "abc[\v]xyz" "<0>abc\u000axyz</0>gh" | |
728 "abc[\v]xyz" "<0>abc\u000bxyz</0>gh" | |
729 "abc[\v]xyz" "<0>abc\u000cxyz</0>gh" | |
730 "abc[\v]xyz" "<0>abc\u000dxyz</0>gh" | |
731 "abc[\v]xyz" "<0>abc\u0085xyz</0>gh" | |
732 "abc[\v]xyz" "<0>abc\u2028xyz</0>gh" | |
733 "abc[\v]xyz" "<0>abc\u2029xyz</0>gh" | |
734 "abc[\v]xyz" "abc\u000d\u000axyzgh" | |
735 "abc[\v]xyz" "abc?xyzgh" | |
736 | |
737 "abc\Vxyz" "abc\u000axyzgh" | |
738 "abc\Vxyz" "abc\u000bxyzgh" | |
739 "abc\Vxyz" "abc\u000cxyzgh" | |
740 "abc\Vxyz" "abc\u000dxyzgh" | |
741 "abc\Vxyz" "abc\u0085xyzgh" | |
742 "abc\Vxyz" "abc\u2028xyzgh" | |
743 "abc\Vxyz" "abc\u2029xyzgh" | |
744 "abc\Vxyz" "abc\u000d\u000axyzgh" | |
745 "abc\Vxyz" "<0>abc?xyz</0>gh" | |
746 | |
747 # \h \H horizontal white space. Defined as gc=space_separator plus ascii tab | |
748 | |
749 "abc\hxyz" "<0>abc xyz</0>gh" | |
750 "abc\Hxyz" "abc xyzgh" | |
751 "abc\hxyz" "<0>abc\u2003xyz</0>gh" | |
752 "abc\Hxyz" "abc\u2003xyzgh" | |
753 "abc\hxyz" "<0>abc\u0009xyz</0>gh" | |
754 "abc\Hxyz" "abc\u0009xyzgh" | |
755 "abc\hxyz" "abc?xyzgh" | |
756 "abc\Hxyz" "<0>abc?xyz</0>gh" | |
757 | |
758 "abc[\h]xyz" "<0>abc xyz</0>gh" | |
759 "abc[\H]xyz" "abc xyzgh" | |
760 "abc[\h]xyz" "<0>abc\u2003xyz</0>gh" | |
761 "abc[\H]xyz" "abc\u2003xyzgh" | |
762 "abc[\h]xyz" "<0>abc\u0009xyz</0>gh" | |
763 "abc[\H]xyz" "abc\u0009xyzgh" | |
764 "abc[\h]xyz" "abc?xyzgh" | |
765 "abc[\H]xyz" "<0>abc?xyz</0>gh" | |
766 | |
767 | |
768 # | |
769 # Bug xxxx | |
770 # | |
771 "(?:\-|(\-?\d+\d\d\d))?(?:\-|\-(\d\d))?(?:\-|\-(\d\d))?(T)?(?:(\d\d):(\d\d):(\d\
d)(\.\d+)?)?(?:(?:((?:\+|\-)\d\d):(\d\d))|(Z))?" MG "<0>-1234-21-31T41:51:61.
789+71:81</0>" | |
772 | |
773 | |
774 # | |
775 # A random, complex, meaningless pattern that should at least compile | |
776 # | |
777 "(?![^\<C\f\0146\0270\}&&[|\02-\x3E\}|X-\|]]{7,}+)[|\\\x98\<\?\u4FCFr\,\0025\}\0
04|\0025-\0521]|(?<![|\01-\u829E])|(?<!\p{Alpha})|^|(?-s:[^\x15\\\x24F\a\,\a\u97
D8[\x38\a[\0224-\0306[^\0020-\u6A57]]]]??)(?xix:[^|\{\[\0367\t\e\x8C\{\[\074c\]V
[|b\fu\r\0175\<\07f\066s[^D-\x5D]]])(?xx:^{5,}+)(?d)(?=^\D)|(?!\G)(?>\G)(?![^|\]
\070\ne\{\t\[\053\?\\\x51\a\075\0023-\[&&[|\022-\xEA\00-\u41C2&&[^|a-\xCC&&[^\03
7\uECB3\u3D9A\x31\|\<b\0206\uF2EC\01m\,\ak\a\03&&\p{Punct}]]]])(?-dxs:[|\06-\07|
\e-\x63&&[|Tp\u18A3\00\|\xE4\05\061\015\0116C|\r\{\}\006\xEA\0367\xC4\01\0042\02
67\xBB\01T\}\0100\?[|\[-\u459B|\x23\x91\rF\0376[|\?-\x94\0113-\\\s]]]]{6}?)(?<=[
^\t-\x42H\04\f\03\0172\?i\u97B6\e\f\uDAC2])(?=\B)(?>[^\016\r\{\,\uA29D\034\02[\0
2-\[|\t\056\uF599\x62\e\<\032\uF0AC\0026\0205Q\|\\\06\0164[|\057-\u7A98&&[\061-g
|\|\0276\n\042\011\e\xE8\x64B\04\u6D0EDW^\p{Lower}]]]]?)(?<=[^\n\\\t\u8E13\,\011
4\u656E\xA5\]&&[\03-\026|\uF39D\01\{i\u3BC2\u14FE]])(?<=[^|\uAE62\054H\|\}&&^\p{
Space}])(?sxx)(?<=[\f\006\a\r\xB4]{1,5})|(?x-xd:^{5}+)()" "<0></0>abc" | |
778 | |
779 | |
780 # | |
781 # Bug 3225 | |
782 | |
783 "1|9" "<0>1</0>" | |
784 "1|9" "<0>9</0>" | |
785 "1*|9" "<0>1</0>" | |
786 "1*|9" "<0></0>9" | |
787 | |
788 "(?:a|ac)d" "<0>acd</0>" | |
789 "a|ac" "<0>a</0>c" | |
790 | |
791 # | |
792 # Bug 3320 | |
793 # | |
794 "(a([^ ]+)){0,} (c)" "<0><1>a<2>b</2></1> <3>c</3></0> " | |
795 "(a([^ ]+))* (c)" "<0><1>a<2>b</2></1> <3>c</3></0> " | |
796 | |
797 # | |
798 # Bug 3436 | |
799 # | |
800 "(.*?) *$" "<0><1>test</1> </0>" | |
801 | |
802 # | |
803 # Bug 4034 | |
804 # | |
805 "\D" "<0>A</0>BC\u00ffDEF" | |
806 "\d" "ABC\u00ffDEF" | |
807 "\D" "<0>\u00ff</0>DEF" | |
808 "\d" "\u00ffDEF" | |
809 "\D" "123<0>\u00ff</0>DEF" | |
810 "\D" "<0>\u0100</0>DEF" | |
811 "\D" "123<0>\u0100</0>DEF" | |
812 | |
813 # | |
814 #bug 4024, new line sequence handling | |
815 # | |
816 "(?m)^" "<0></0>AA\u000d\u000aBB\u000d\u000aCC\u000d\u
000a" | |
817 "(?m)^" 2 "AA\u000d\u000a<0></0>BB\u000d\u000aCC\u000d\u
000a" | |
818 "(?m)^" 3 "AA\u000d\u000aBB\u000d\u000a<0></0>CC\u000d\u
000a" | |
819 "(?m)^" 4 "AA\u000d\u000aBB\u000d\u000aCC\u000d\u000a" | |
820 | |
821 "(?m)$" "AA<0></0>\u000d\u000aBB\u000d\u000aCC\u000d\u
000a" | |
822 "(?m)$" 2 "AA\u000d\u000aBB<0></0>\u000d\u000aCC\u000d\u
000a" | |
823 "(?m)$" 3 "AA\u000d\u000aBB\u000d\u000aCC<0></0>\u000d\u
000a" | |
824 "(?m)$" 4 "AA\u000d\u000aBB\u000d\u000aCC\u000d\u000a<0>
</0>" | |
825 "(?m)$" 5 "AA\u000d\u000aBB\u000d\u000aCC\u000d\u000a" | |
826 | |
827 "$" "AA\u000d\u000aBB\u000d\u000aCC<0></0>\u000d\u
000a" | |
828 "$" 2 "AA\u000d\u000aBB\u000d\u000aCC\u000d\u000a<0>
</0>" | |
829 "$" 3 "AA\u000d\u000aBB\u000d\u000aCC\u000d\u000a" | |
830 | |
831 "$" "\u000a\u0000a<0></0>\u000a" | |
832 "$" 2 "\u000a\u0000a\u000a<0></0>" | |
833 "$" 3 "\u000a\u0000a\u000a" | |
834 | |
835 "$" "<0></0>" | |
836 "$" 2 "" | |
837 | |
838 "$" "<0></0>\u000a" | |
839 "$" 2 "\u000a<0></0>" | |
840 "$" 3 "\u000a" | |
841 | |
842 "^" "<0></0>" | |
843 "^" 2 "" | |
844 | |
845 "\Z" "<0></0>" | |
846 "\Z" 2 "" | |
847 "\Z" 2 "\u000a<0></0>" | |
848 "\Z" "<0></0>\u000d\u000a" | |
849 "\Z" 2 "\u000d\u000a<0></0>" | |
850 | |
851 | |
852 # No matching ^ at interior new-lines if not in multi-line mode. | |
853 "^" "<0></0>AA\u000d\u000aBB\u000d\u000aCC\u000d\u
000a" | |
854 "^" 2 "AA\u000d\u000aBB\u000d\u000aCC\u000d\u000a" | |
855 | |
856 # | |
857 # Dot-matches-any mode, and stopping at new-lines if off. | |
858 # | |
859 "." "<0>1</0>23\u000aXYZ" | |
860 "." 2 "1<0>2</0>3\u000aXYZ" | |
861 "." 3 "12<0>3</0>\u000aXYZ" | |
862 "." 4 "123\u000a<0>X</0>YZ" # . doesn't match new
lines | |
863 "." 4 "123\u000b<0>X</0>YZ" | |
864 "." 4 "123\u000c<0>X</0>YZ" | |
865 "." 4 "123\u000d<0>X</0>YZ" | |
866 "." 4 "123\u000d\u000a<0>X</0>YZ" | |
867 "." 4 "123\u0085<0>X</0>YZ" | |
868 "." 4 "123\u2028<0>X</0>YZ" | |
869 "." 4 "123\u2029<0>X</0>YZ" | |
870 "." 4s "123<0>\u000a</0>XYZ" # . matches any | |
871 "." 4s "123<0>\u000b</0>XYZ" | |
872 "." 4s "123<0>\u000c</0>XYZ" | |
873 "." 4s "123<0>\u000d</0>XYZ" | |
874 "." 4s "123<0>\u000d\u000a</0>XYZ" | |
875 "." 4s "123<0>\u0085</0>XYZ" | |
876 "." 4s "123<0>\u2028</0>XYZ" | |
877 "." 4s "123<0>\u2029</0>XYZ" | |
878 ".{6}" "123\u000a\u000dXYZ" | |
879 ".{6}" s "<0>123\u000a\u000dX</0>Y" | |
880 | |
881 | |
882 # | |
883 # Ranges | |
884 # | |
885 ".*" "abc<r><0>def</0></r>ghi" | |
886 "a" "aaa<r><0>a</0>aa</r>aaa" | |
887 "a" 2 "aaa<r>a<0>a</0>a</r>aaa" | |
888 "a" 3 "aaa<r>aa<0>a</0></r>aaa" | |
889 "a" 4 "aaa<r>aaa</r>aaa" | |
890 "a" "aaa<r><0>a</0>aa</r>aaa" | |
891 | |
892 # | |
893 # [set] parsing, systematically run through all of the parser states. | |
894 # | |
895 # | |
896 "[def]+" "abc<0>ddeeff</0>ghi" # set-open | |
897 "[^def]+" "<0>abc</0>defghi" | |
898 "[:digit:]+" "abc<0>123</0>def" | |
899 "[:^digit:]+" "<0>abc</0>123def" | |
900 "[\u005edef]+" "abc<0>de^f</0>ghi" | |
901 | |
902 "[]]+" "abc<0>]]]</0>[def" # set-open2 | |
903 "[^]]+" "<0>abc</0>]]][def" | |
904 | |
905 "[:Lu:]+" "abc<0>ABC</0>def" # set-posix | |
906 "[:Lu]+" "abc<0>uL::Lu</0>" | |
907 "[:^Lu]+" "abc<0>uL:^:Lu</0>" | |
908 "[:]+" "abc<0>:::</0>def" | |
909 "[:whats this:]" E " " | |
910 "[--]+" dE "-------" | |
911 | |
912 "[[nested]]+" "xyz[<0>nnetsteed</0>]abc" #set-start | |
913 "[\x{41}]+" "CB<0>AA</0>ZYX" | |
914 "[\[\]\\]+" "&*<0>[]\\</0>..." | |
915 "[*({<]+" "^&<0>{{(<<*</0>)))" | |
916 | |
917 | |
918 "[-def]+" "abc<0>def-ef-d</0>xyz" # set-start-dash | |
919 "[abc[--def]]" E " " | |
920 | |
921 "[x[&def]]+" "abc<0>def&</0>ghi" # set-start-amp | |
922 "[&& is bad at start]" E " " | |
923 | |
924 "[abc" E " " # set-after-lit | |
925 "[def]]" "abcdef" | |
926 "[def]]" "abcde<0>f]</0>]" | |
927 | |
928 "[[def][ghi]]+" "abc]<0>defghi</0>[xyz" # set-after-set | |
929 "[[def]ghi]+" "abc]<0>defghi</0>[xyz" | |
930 "[[[[[[[[[[[abc]" E " " | |
931 "[[abc]\p{Lu}]+" "def<0>abcABC</0>xyz" | |
932 | |
933 "[d-f]+" "abc<0>def</0>ghi" # set-after-range | |
934 "[d-f[x-z]]+" "abc<0>defxyzzz</0>gw" | |
935 "[\s\d]+" "abc<0> 123</0>def" | |
936 "[d-f\d]+" "abc<0>def123</0>ghi" | |
937 "[d-fr-t]+" "abc<0>defrst</0>uvw" | |
938 | |
939 "[abc--]" E " " # set-after-op | |
940 "[[def]&&]" E " " | |
941 "[-abcd---]+" "<0>abc</0>--" #[-abcd]--[-] | |
942 "[&abcd&&&ac]+" "b<0>ac&&ca</0>d" #[&abcd]&&[&ac] | |
943 | |
944 "[[abcd]&[ac]]+" "b<0>acac</0>d" # set-set-amp | |
945 "[[abcd]&&[ac]]+" "b<0>acac</0>d" | |
946 "[[abcd]&&ac]+" "b<0>acac</0>d" | |
947 "[[abcd]&ac]+" "<0>bacacd&&&</0>" | |
948 | |
949 "[abcd&[ac]]+" "<0>bacacd&&&</0>" #set-lit-amp | |
950 "[abcd&&[ac]]+" "b<0>acac</0>d" | |
951 "[abcd&&ac]+" "b<0>acac</0>d" | |
952 | |
953 "[[abcd]-[ac]]+" "a<0>bdbd</0>c" # set-set-dash | |
954 "[[abcd]--[ac]]+" "a<0>bdbd</0>c" | |
955 "[[abcd]--ac]+" "a<0>bdbd</0>c" | |
956 "[[abcd]-ac]+" "<0>bacacd---</0>" | |
957 | |
958 "[a-d--[b-c]]+" "b<0>adad</0>c" # set-range-dash | |
959 "[a-d--b-c]+" "b<0>adad</0>c" | |
960 "[a-d-[b-c]]+" "<0>bad-adc</0>" | |
961 "[a-d-b-c]+" "<0>bad-adc</0>" | |
962 "[\w--[b-c]]+" "b<0>adad</0>c" | |
963 "[\w--b-c]+" "b<0>adad</0>c" | |
964 "[\w-[b-c]]+" "<0>bad-adc</0>" | |
965 "[\w-b-c]+" "<0>bad-adc</0>" | |
966 | |
967 "[a-d&&[b-c]]+" "a<0>bcbc</0>d" # set-range-amp | |
968 "[a-d&&b-c]+" "a<0>bcbc</0>d" | |
969 "[a-d&[b-c]]+" "<0>abc&bcd</0>" | |
970 "[a-d&b-c]+" "<0>abc&bcd</0>" | |
971 | |
972 "[abcd--bc]+" "b<0>adda</0>c" # set-lit-dash | |
973 "[abcd--[bc]]+" "b<0>adda</0>c" | |
974 "[abcd-[bc]]+" "<0>bad--dac</0>xyz" | |
975 "[abcd-]+" "<0>bad--dac</0>xyz" | |
976 | |
977 "[abcd-\s]+" E "xyz<0>abcd --</0>xyz" # set-lit-dash-es
c | |
978 "[abcd-\N{LATIN SMALL LETTER G}]+" "xyz-<0>abcdefg</0>hij-" | |
979 "[bcd-\{]+" "a<0>bcdefyz{</0>|}" | |
980 | |
981 "[\p{Ll}]+" "ABC<0>abc</0>^&*&" # set-escape | |
982 "[\P{Ll}]+" "abc<0>ABC^&*&</0>xyz" | |
983 "[\N{LATIN SMALL LETTER Q}]+" "mnop<0>qqq</0>rst" | |
984 "[\sa]+" "cb<0>a a </0>(*&" | |
985 "[\S]+" " <0>hello</0> " | |
986 "[\w]+" " <0>hello_world</0>! " | |
987 "[\W]+" "a<0> *$%#,</0>hello " | |
988 "[\d]+" "abc<0>123</0>def" | |
989 "[\D]+" "123<0>abc</0>567" | |
990 "[\$\#]+" "123<0>$#$#</0>\\" | |
991 | |
992 # | |
993 # Try each of the Java compatibility properties. | |
994 # These are checked here, while normal Unicode properties aren't, because | |
995 # these Java compatibility properties are implemented directly by regexp, whi
le other | |
996 # properties are handled by ICU's Property and UnicodeSet APIs. | |
997 # | |
998 # These tests are only to verify that the names are recognized and the | |
999 # implementation isn't dead. They are not intended to verify that the | |
1000 # function defintions are 100% correct. | |
1001 # | |
1002 "[:InBasic Latin:]+" "ΓΔΕΖΗΘ<0>hello, world.</0>ニヌネノハバパ" | |
1003 "[:^InBasic Latin:]+" "<0>ΓΔΕΖΗΘ</0>hello, world.ニヌネノハバパ" | |
1004 "\p{InBasicLatin}+" "ΓΔΕΖΗΘ<0>hello, world.</0>ニヌネノハバパ" | |
1005 "\P{InBasicLatin}+" "<0>ΓΔΕΖΗΘ</0>hello, world.ニヌネノハバパ" | |
1006 "\p{InGreek}+" "<0>ΓΔΕΖΗΘ</0>hello, world.ニヌネノハバパ" | |
1007 "\p{InCombining Marks for Symbols}" "<0>\u20d0</0>" | |
1008 "\p{Incombiningmarksforsymbols}" "<0>\u20d0</0>" | |
1009 | |
1010 | |
1011 "\p{javaDefined}+" "\uffff<0>abcd</0>\U00045678" | |
1012 "\p{javaDigit}+" "abc<0>1234</0>xyz" | |
1013 "\p{javaIdentifierIgnorable}+" "abc<0>\u0000\u000e\u009f</0>xyz" | |
1014 "\p{javaISOControl}+" "abc<0>\u0000\u000d\u0083</0>xyz" | |
1015 "\p{javaJavaIdentifierPart}+" "#@!<0>abc123_$</0>;" | |
1016 "\p{javaJavaIdentifierStart}+" "123\u0301<0>abc$_</0>%^&" | |
1017 "\p{javaLetter}+" "123<0>abcDEF</0>&*()(" | |
1018 "\p{javaLetterOrDigit}+" "$%^&*<0>123abcகஙசஜஞ</0>☺♘♚☔☎♬⚄⚡" | |
1019 "\p{javaLowerCase}+" "ABC<0>def</0>&^%#:=" | |
1020 "\p{javaMirrored}+" "ab$%<0>(){}[]</0>xyz" | |
1021 "\p{javaSpaceChar}+" "abc<0> \u00ao\u2028</0>!@#" | |
1022 "\p{javaSupplementaryCodePoint}+" "abc\uffff<0>\U00010000\U0010ffff</0>\u0000" | |
1023 "\p{javaTitleCase}+" "abCE<0>Džῌᾨ</0>123" | |
1024 "\p{javaUnicodeIdentifierStart}+" "123<0>abcⅣ</0>%^&&*" | |
1025 "\p{javaUnicodeIdentifierPart}+" "%&&^<0>abc123\u0301\u0002</0>..." | |
1026 "\p{javaUpperCase}+" "abc<0>ABC</0>123" | |
1027 "\p{javaValidCodePoint}+" "<0>\u0000abc\ud800 unpaired \udfff |\U0010ff
ff</0>" | |
1028 "\p{javaWhitespace}+" "abc\u00a0\u2007\u202f<0> \u0009\u001c\u001f\
u2028</0>42" | |
1029 "\p{all}+" "<0>123\u0000\U0010ffff</0>" | |
1030 "\P{all}+" "123\u0000\U0010ffff" | |
1031 | |
1032 # [:word:] is implemented directly by regexp. Not a java compat property, but P
CRE and others. | |
1033 | |
1034 "[:word:]+" ".??$<0>abc123ΓΔΕΖΗ_</0>%%%" | |
1035 "\P{WORD}+" "<0>.??$</0>abc123ΓΔΕΖΗ_%%%" | |
1036 | |
1037 # | |
1038 # Errors on unrecognized ASCII letter escape sequences. | |
1039 # | |
1040 "[abc\Y]+" "<0>abcY</0>" | |
1041 "[abc\Y]+" eE "<0>abcY</0>" | |
1042 | |
1043 "(?:a|b|c|\Y)+" "<0>abcY</0>" | |
1044 "(?:a|b|c|\Y)+" eE "<0>abcY</0>" | |
1045 | |
1046 "\Q\Y\E" e "<0>\\Y</0>" | |
1047 | |
1048 # | |
1049 # Reported problem | |
1050 # | |
1051 "[a-\w]" E "x" | |
1052 | |
1053 # | |
1054 # Bug 4045 | |
1055 # | |
1056 "A*" "<0>AAAA</0>" | |
1057 "A*" 2 "AAAA<0></0>" | |
1058 "A*" 3 "AAAA" | |
1059 "A*" 4 "AAAA" | |
1060 "A*" 5 "AAAA" | |
1061 "A*" 6 "AAAA" | |
1062 "A*" "<0></0>" | |
1063 "A*" 2 "" | |
1064 "A*" 3 "" | |
1065 "A*" 4 "" | |
1066 "A*" 5 "" | |
1067 | |
1068 # | |
1069 # Bug 4046 | |
1070 # | |
1071 "(?m)^" "<0></0>AA\u000dBB\u000dCC\u000d" | |
1072 "(?m)^" 2 "AA\u000d<0></0>BB\u000dCC\u000d" | |
1073 "(?m)^" 3 "AA\u000dBB\u000d<0></0>CC\u000d" | |
1074 "(?m)^" 4 "AA\u000dBB\u000dCC\u000d" | |
1075 "(?m)^" 5 "AA\u000dBB\u000dCC\u000d" | |
1076 "(?m)^" 6 "AA\u000dBB\u000dCC\u000d" | |
1077 | |
1078 "(?m)^" "<0></0>AA\u000d\u000aBB\u000d\u000aCC\u000d\u
000a" | |
1079 "(?m)^" 2 "AA\u000d\u000a<0></0>BB\u000d\u000aCC\u000d\u
000a" | |
1080 "(?m)^" 3 "AA\u000d\u000aBB\u000d\u000a<0></0>CC\u000d\u
000a" | |
1081 "(?m)^" 4 "AA\u000d\u000aBB\u000d\u000aCC\u000d\u000a" | |
1082 | |
1083 # | |
1084 # Bug 4059 | |
1085 # | |
1086 "\w+" "<0>イチロー</0>" | |
1087 "\b....\b." "<0>イチロー?</0>" | |
1088 | |
1089 | |
1090 # | |
1091 # Bug 4058 ICU Unicode Set patterns have an odd feature - | |
1092 # A $ as the last character before the close bracket means match | |
1093 # a \uffff, which means off the end of the string in transliterators
. | |
1094 # Didn't make sense for regular expressions, and is now fixed. | |
1095 # | |
1096 "[\$](P|C|D);" "<0>$<1>P</1>;</0>" | |
1097 "[$](P|C|D);" "<0>$<1>P</1>;</0>" | |
1098 "[$$](P|C|D);" "<0>$<1>P</1>;</0>" | |
1099 | |
1100 # | |
1101 # bug 4888 Flag settings lost in some cases. | |
1102 # | |
1103 "((a){2})|(#)" is "no" | |
1104 "((a){2})|(#)" is "<0><1>a<2>a</2></1></0>#" | |
1105 "((a){2})|(#)" is "a<0><3>#</3></0>" | |
1106 | |
1107 "((a|b){2})|c" is "<0>c</0>" | |
1108 "((a|b){2})|c" is "<0>C</0>" | |
1109 "((a|b){2})|c" s "C" | |
1110 | |
1111 # | |
1112 # bug 5617 ZWJ \u200d shoudn't cause word boundaries | |
1113 # | |
1114 ".+?\b" "<0> </0>\u0935\u0915\u094D\u200D\u0924\u0947
" | |
1115 ".+?\b" 2 " <0>\u0935\u0915\u094D\u200D\u0924\u0947</0>
" | |
1116 ".+?\b" 3 " \u0935\u0915\u094D\u200D\u0924\u0947 " | |
1117 | |
1118 # | |
1119 # bug 5386 "^.*$" should match empty input | |
1120 # | |
1121 "^.*$" "<0></0>" | |
1122 "^.*$" m "<0></0>" | |
1123 "^.*$" "<0></0>\n" | |
1124 "(?s)^.*$" "<0>\n</0>" | |
1125 | |
1126 # | |
1127 # bug 5386 Empty pattern and empty input should match. | |
1128 # | |
1129 "" "<0></0>abc" | |
1130 "" "<0></0>" | |
1131 | |
1132 # | |
1133 # bug 5386 Range upper and lower bounds can be equal | |
1134 # | |
1135 "[a-a]" "<0>a</0>" | |
1136 | |
1137 # | |
1138 # bug 5386 $* should not fail, should match empty string. | |
1139 # | |
1140 "$*" "<0></0>abc" | |
1141 | |
1142 # | |
1143 # bug 5386 \Q ... \E escaping problem | |
1144 # | |
1145 "[a-z\Q-$\E]+" "QE<0>abc-def$</0>." | |
1146 | |
1147 # More reported 5386 Java comaptibility failures | |
1148 # | |
1149 "[^]*abb]*" "<0>kkkk</0>" | |
1150 "\xa" "huh" # Java would like to be war
ned. | |
1151 "^.*$" "<0></0>" | |
1152 | |
1153 # | |
1154 # bug 5386 Empty left alternation should produce a zero length match. | |
1155 # | |
1156 "|a" "<0></0>a" | |
1157 "$|ab" "<0>ab</0>" | |
1158 "$|ba" "ab<0></0>" | |
1159 | |
1160 # | |
1161 # bug 5386 Java compatibility for set expressions | |
1162 # | |
1163 "[a-z&&[cde]]+" "ab<0>cde</0>fg" | |
1164 | |
1165 # | |
1166 # bug 6019 matches() needs to backtrack and check for a longer match if the | |
1167 # first match(es) found don't match the entire input. | |
1168 # | |
1169 "a?|b" "<0></0>b" | |
1170 "a?|b" M "<0>b</0>" | |
1171 "a?|.*?u|stuff|d" M "<0>stuff</0>" | |
1172 "a?|.*?(u)|stuff|d" M "<0>stuff<1>u</1></0>" | |
1173 "a+?" "<0>a</0>aaaaaaaaaaaa" | |
1174 "a+?" M "<0>aaaaaaaaaaaaa</0>" | |
1175 | |
1176 # | |
1177 # Bug 7724. Expression to validate zip codes. | |
1178 # | |
1179 "(?!0{5})(\d{5})(?!-?0{4})(-?\d{4})?" "<0><1>94040</1><2>-3344</2></0>" | |
1180 "(?!0{5})(\d{5})(?!-?0{4})(-?\d{4})?" "94040-0000" | |
1181 "(?!0{5})(\d{5})(?!-?0{4})(-?\d{4})?" "00000-3344" | |
1182 | |
1183 # | |
1184 # Bug 8666. Assertion failure on match, bad operand to JMP_SAV_X opcode. | |
1185 # | |
1186 "((.??)+|A)*" "<0><1><2></2></1></0>AAAAABBBBBCCCCCDDDDEEEEE
" | |
1187 | |
1188 # | |
1189 # Bug 8826. Incorrect results with case insensitive matches. | |
1190 # | |
1191 "AS(X)" i "aßx" | |
1192 "AS.*" i "aßx" # Expansion of sharp s can't s
plit between pattern terms. | |
1193 "ASßS" i "<0>aßß</0>" # All one literal string, does
match. | |
1194 "ASß{1}S" i "aßß" # Pattern with terms, no match
. | |
1195 "aßx" i "<0>assx</0>" | |
1196 "aßx" i "<0>ASSX</0>" | |
1197 "aßx" i "<0>aßx</0>" | |
1198 "ASS(.)" i "<0>aß<1>x</1></0>" | |
1199 | |
1200 # Case Insensitive, probe some corner cases. | |
1201 "ass+" i "aß" # Second 's' in pattern is qua
lified, can't combine with first. | |
1202 "as+" i "aß" | |
1203 "aßs" i "as" # Can't match half of a ß | |
1204 "aß+" i "<0>assssssss</0>s" | |
1205 "aß+" i "<0>assßSssSSS</0>s" | |
1206 "a(ß?)+" i "<0>assssssss<1></1></0>s" | |
1207 "a(ß?)+" i "<0>a<1></1></0>zzzzzzzzs" | |
1208 | |
1209 "\U00010400" i "<0>\U00010428</0>" # case folded supplement
al code point. | |
1210 | |
1211 "sstuff" i "<0>ßtuff</0>" # exercise optimizations on
what chars can start a match. | |
1212 "sstuff" i "s<0>ßtuff</0>" # exercise optimizations on
what chars can start a match. | |
1213 "ßtuff" i "s<0>sstuff</0>" | |
1214 "ßtuff" i "s<0>Sstuff</0>" | |
1215 | |
1216 "a(..)\1" i "<0>A<1>bc</1>BC</0>def" | |
1217 "(ß)\1" i "aa<0><1>ss</1>ß</0>zz" # Case insens
itive back reference | |
1218 "..(.)\1" i "<0>aa<1>ß</1>ss</0>" | |
1219 "ab(..)\1" i "xx<0>ab<1>ss</1>ß</0>ss" | |
1220 | |
1221 " (ss) ((\1.*)|(.*))" i "<0> <1>ss</1> <2><4>sß</4></2></0>" # T
he back reference 'ss' must not match in 'sß' | |
1222 | |
1223 # Bug 9057 | |
1224 # \u200c and \u200d should be word characters. | |
1225 # | |
1226 "\w+" " <0>abc\u200cdef\u200dghi</0> " | |
1227 "\w+" i " <0>abc\u200cdef\u200dghi</0> " | |
1228 "[\w]+" " <0>abc\u200cdef\u200dghi</0> " | |
1229 "[\w]+" i " <0>abc\u200cdef\u200dghi</0> " | |
1230 | |
1231 # Bug 9283 | |
1232 # uregex_open fails for look-behind assertion + case-insensitive | |
1233 | |
1234 "(ab)?(?<=ab)cd|ef" i "<0><1>ab</1>cd</0>" | |
1235 | |
1236 # Bug 9719 Loop breaking on (zero length match){3,} (unlimited upper bound). | |
1237 # | |
1238 | |
1239 "(?:abc){1,}abc" "<0>abcabcabcabcabc</0>" | |
1240 "(?:2*){2,}?a2\z" "<0>2a2</0>" | |
1241 "(?:2*){2,}?a2\z" "2a3" | |
1242 "(?:x?+){3,}+yz" "w<0>yz</0>" | |
1243 "(2*){2,}?a2\\z" "2a3" | |
1244 "(2*){2,}?a2\\z" "<0>2<1></1>a2\\z</0>" | |
1245 "(2*){2,}?a2\z" "<0>2<1></1>a2</0>" | |
1246 | |
1247 | |
1248 # Bug 10024 | |
1249 # Incorrect (unbounded) longest match length with {1, 20} style quantifiers. | |
1250 # Unbounded match is disallowed in look-behind expressions. | |
1251 # Max match length is used to limit where to check for look-behind matches. | |
1252 | |
1253 "(?<=a{1,5})bc" "aaaa<0>bc</0>def" | |
1254 "(?<=(?:aa){3,20})bc" "aaaaaa<0>bc</0>def" | |
1255 "(?<!abc {1,100}|def {1,100}|ghi {1,100})jkl" "def jkl" | |
1256 "(?<!abc {1,100}|def {1,100}|ghi {1,100})jkl" "rst <0>jkl</0>" | |
1257 "(?<=a{11})bc" "aaaaaaaaaaa<0>bc</0>" | |
1258 "(?<=a{11})bc" "aaaaaaaaaabc" | |
1259 "(?<=a{1,})bc" E "aaaa<0>bc</0>def" # U_REGEX_LOOK_BEHIND_LIMI
T error. | |
1260 "(?<=(?:){11})bc" "<0>bc</0>" # Empty (?:) expression. | |
1261 | |
1262 # Bug 10835 | |
1263 # Match Start Set not being correctly computed for case insensitive patterns. | |
1264 # (Test here is to dump the compiled pattern & manually check the start set.) | |
1265 | |
1266 "(private|secret|confidential|classified|restricted)" i "hmm, <0><1>Classifie
d</1></0> stuff" | |
1267 "(private|secret|confidential|classified|restricted)" "hmm, Classified stuf
f" | |
1268 | |
1269 # Bug 10844 | |
1270 | |
1271 "^([\w\d:]+)$" "<0><1>DiesIst1Beispiel:text</1></0>" | |
1272 "^([\w\d:]+)$" i "<0><1>DiesIst1Beispiel:text</1></0>" | |
1273 "^(\w+\d\w+:\w+)$" "<0><1>DiesIst1Beispiel:text</1></0>" | |
1274 "^(\w+\d\w+:\w+)$" i "<0><1>DiesIst1Beispiel:text</1></0>" | |
1275 | |
1276 # Bug 11049 | |
1277 # Edge cases in find() when pattern match begins with set of code points | |
1278 # and the match begins at the end of the string. | |
1279 | |
1280 "A|B|C" "hello <0>A</0>" | |
1281 "A|B|C" "hello \U00011234" | |
1282 "A|B|\U00012345" "hello <0>\U00012345</0>" | |
1283 "A|B|\U00010000" "hello \ud800" | |
1284 | |
1285 # Bug 11369 | |
1286 # Incorrect optimization of patterns with a zero length quantifier {0} | |
1287 | |
1288 "(.|b)(|b){0}\$(?#xxx){3}(?>\D*)" "AAAAABBBBBCCCCCDDDDEEEEE" | |
1289 "(|b)ab(c)" "<0><1></1>ab<2>c</2></0>" | |
1290 "(|b){0}a{3}(D*)" "<0>aaa<2></2></0>" | |
1291 "(|b){0,1}a{3}(D*)" "<0><1></1>aaa<2></2></0>" | |
1292 "((|b){0})a{3}(D*)" "<0><1></1>aaa<3></3></0>" | |
1293 | |
1294 # Bug 11370 | |
1295 # Max match length computation of look-behind expression gives result that is
too big to fit in the | |
1296 # in the 24 bit operand portion of the compiled code. Expressions should fail
to compile | |
1297 # (Look-behind match length must be bounded. This case is treated as unbounded
, an error.) | |
1298 | |
1299 "(?<!(0123456789a){10000000})x" E "no match" | |
1300 "(?<!\\ubeaf(\\ubeaf{11000}){11000})" E "no match" | |
1301 | |
1302 # Bug 11374 Bad integer overflow check in number conversion. | |
1303 # 4294967300 converts to 4 with 32 bit overflow. | |
1304 | |
1305 "x{4294967300}" E "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" | |
1306 "x{0,4294967300}" E "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" | |
1307 | |
1308 # Bug 11373 | |
1309 # | |
1310 # Overflow checking in max match length computation for loops. | |
1311 # Value here is 10 * 100000 * 3000 = 3E9, overflowing a 32 bit signed value. | |
1312 # Before fixing, this case gave an assertion failure. | |
1313 | |
1314 "(?<=((0123456789){100000}){3000})abc" E "abc" | |
1315 | |
1316 | |
1317 | |
1318 # Random debugging, Temporary | |
1319 # | |
1320 | |
1321 "This is a string with (?:one |two |three )endings" "<0>This is a string with
two endings</0>" | |
1322 | |
1323 | |
1324 # | |
1325 # Regexps from http://www.regexlib.com | |
1326 # | |
1327 "^[a-zA-Z]{1,2}[0-9][0-9A-Za-z]{0,1} {0,1}[0-9][A-Za-z]{2}$" G "<0>G1 1AA</0>" | |
1328 "^[a-zA-Z]{1,2}[0-9][0-9A-Za-z]{0,1} {0,1}[0-9][A-Za-z]{2}$" G "<0>EH10 2QQ</0
>" | |
1329 "^[a-zA-Z]{1,2}[0-9][0-9A-Za-z]{0,1} {0,1}[0-9][A-Za-z]{2}$" G "<0>SW1 1ZZ</0>
" | |
1330 "^[a-zA-Z]{1,2}[0-9][0-9A-Za-z]{0,1} {0,1}[0-9][A-Za-z]{2}$" "G111 1AA" | |
1331 "^[a-zA-Z]{1,2}[0-9][0-9A-Za-z]{0,1} {0,1}[0-9][A-Za-z]{2}$" "X10 WW" | |
1332 "^[a-zA-Z]{1,2}[0-9][0-9A-Za-z]{0,1} {0,1}[0-9][A-Za-z]{2}$" "DDD 5WW" | |
1333 #"^[\w\-]+(?:\.[\w\-]+)*@(?:[\w\-]+\.)+[a-zA-Z]{2,7}$" dG "<0>joe.tillis@unit.
army.mil</0>" # TODO: \w in pattern | |
1334 #"^[\w-]+(?:\.[\w-]+)*@(?:[\w-]+\.)+[a-zA-Z]{2,7}$" G "<0>jack_rabbit@slims.co
m</0>" # TODO: \w in pattern | |
1335 #"^[\w-]+(?:\.[\w-]+)*@(?:[\w-]+\.)+[a-zA-Z]{2,7}$" G "<0>foo99@foo.co.uk</0>"
# TODO: \w in pattern | |
1336 #"^[\w-]+(?:\.[\w-]+)*@(?:[\w-]+\.)+[a-zA-Z]{2,7}$" "find_the_mistake.@foo.o
rg" # TODO: \w in pattern | |
1337 #"^[\w-]+(?:\.[\w-]+)*@(?:[\w-]+\.)+[a-zA-Z]{2,7}$" ".prefix.@some.net" | |
1338 "^([a-zA-Z0-9_\-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([a-zA-Z0-9\-]+
\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$" G "<0>asmith@mactec.com</0>" | |
1339 "^([a-zA-Z0-9_\-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([a-zA-Z0-9\-]+
\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$" G "<0>foo12@foo.edu</0>" | |
1340 "^([a-zA-Z0-9_\-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([a-zA-Z0-9\-]+
\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$" G "<0>bob.smith@foo.tv</0>" | |
1341 "^([a-zA-Z0-9_\-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([a-zA-Z0-9\-]+
\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$" "joe" | |
1342 "^([a-zA-Z0-9_\-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([a-zA-Z0-9\-]+
\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$" "@foo.com" | |
1343 "^([a-zA-Z0-9_\-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([a-zA-Z0-9\-]+
\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$" "a@a" | |
1344 "^\d{1,2}\/\d{1,2}\/\d{4}$" G "<0>4/1/2001</0>" | |
1345 "^\d{1,2}\/\d{1,2}\/\d{4}$" G "<0>12/12/2001</0>" | |
1346 "^\d{1,2}\/\d{1,2}\/\d{4}$" G "<0>55/5/3434</0>" | |
1347 "^\d{1,2}\/\d{1,2}\/\d{4}$" "1/1/01" | |
1348 "^\d{1,2}\/\d{1,2}\/\d{4}$" "12 Jan 01" | |
1349 "^\d{1,2}\/\d{1,2}\/\d{4}$" "1-1-2001" | |
1350 "^(?:(?:(?:0?[13578]|1[02])(\/|-|\.)31)\1|(?:(?:0?[1,3-9]|1[0-2])(\/|-|\.)(?:29|
30)\2))(?:(?:1[6-9]|[2-9]\d)?\d{2})$|^(?:0?2(\/|-|\.)29\3(?:(?:(?:1[6-9]|[2-9]\d
)?(?:0[48]|[2468][048]|[13579][26])|(?:(?:16|[2468][048]|[3579][26])00))))$|^(?:
(?:0?[1-9])|(?:1[0-2]))(\/|-|\.)(?:0?[1-9]|1\d|2[0-8])\4(?:(?:1[6-9]|[2-9]\d)?\d
{2})$" G "<0>01.1.02</0>" | |
1351 "^(?:(?:(?:0?[13578]|1[02])(\/|-|\.)31)\1|(?:(?:0?[1,3-9]|1[0-2])(\/|-|\.)(?:29|
30)\2))(?:(?:1[6-9]|[2-9]\d)?\d{2})$|^(?:0?2(\/|-|\.)29\3(?:(?:(?:1[6-9]|[2-9]\d
)?(?:0[48]|[2468][048]|[13579][26])|(?:(?:16|[2468][048]|[3579][26])00))))$|^(?:
(?:0?[1-9])|(?:1[0-2]))(\/|-|\.)(?:0?[1-9]|1\d|2[0-8])\4(?:(?:1[6-9]|[2-9]\d)?\d
{2})$" G "<0>11-30-2001</0>" | |
1352 "^(?:(?:(?:0?[13578]|1[02])(\/|-|\.)31)\1|(?:(?:0?[1,3-9]|1[0-2])(\/|-|\.)(?:29|
30)\2))(?:(?:1[6-9]|[2-9]\d)?\d{2})$|^(?:0?2(\/|-|\.)29\3(?:(?:(?:1[6-9]|[2-9]\d
)?(?:0[48]|[2468][048]|[13579][26])|(?:(?:16|[2468][048]|[3579][26])00))))$|^(?:
(?:0?[1-9])|(?:1[0-2]))(\/|-|\.)(?:0?[1-9]|1\d|2[0-8])\4(?:(?:1[6-9]|[2-9]\d)?\d
{2})$" G "<0>2/29/2000</0>" | |
1353 "^(?:(?:(?:0?[13578]|1[02])(\/|-|\.)31)\1|(?:(?:0?[1,3-9]|1[0-2])(\/|-|\.)(?:29|
30)\2))(?:(?:1[6-9]|[2-9]\d)?\d{2})$|^(?:0?2(\/|-|\.)29\3(?:(?:(?:1[6-9]|[2-9]\d
)?(?:0[48]|[2468][048]|[13579][26])|(?:(?:16|[2468][048]|[3579][26])00))))$|^(?:
(?:0?[1-9])|(?:1[0-2]))(\/|-|\.)(?:0?[1-9]|1\d|2[0-8])\4(?:(?:1[6-9]|[2-9]\d)?\d
{2})$" "02/29/01" | |
1354 "^(?:(?:(?:0?[13578]|1[02])(\/|-|\.)31)\1|(?:(?:0?[1,3-9]|1[0-2])(\/|-|\.)(?:29|
30)\2))(?:(?:1[6-9]|[2-9]\d)?\d{2})$|^(?:0?2(\/|-|\.)29\3(?:(?:(?:1[6-9]|[2-9]\d
)?(?:0[48]|[2468][048]|[13579][26])|(?:(?:16|[2468][048]|[3579][26])00))))$|^(?:
(?:0?[1-9])|(?:1[0-2]))(\/|-|\.)(?:0?[1-9]|1\d|2[0-8])\4(?:(?:1[6-9]|[2-9]\d)?\d
{2})$" "13/01/2002" | |
1355 "^(?:(?:(?:0?[13578]|1[02])(\/|-|\.)31)\1|(?:(?:0?[1,3-9]|1[0-2])(\/|-|\.)(?:29|
30)\2))(?:(?:1[6-9]|[2-9]\d)?\d{2})$|^(?:0?2(\/|-|\.)29\3(?:(?:(?:1[6-9]|[2-9]\d
)?(?:0[48]|[2468][048]|[13579][26])|(?:(?:16|[2468][048]|[3579][26])00))))$|^(?:
(?:0?[1-9])|(?:1[0-2]))(\/|-|\.)(?:0?[1-9]|1\d|2[0-8])\4(?:(?:1[6-9]|[2-9]\d)?\d
{2})$" "11/00/02" | |
1356 "^(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9])\.(25[0-5]|2[0-4]
[0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[
0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1
}[0-9]{1}|[0-9])$" G "<0>127.0.0.1</0>" | |
1357 "^(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9])\.(25[0-5]|2[0-4]
[0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[
0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1
}[0-9]{1}|[0-9])$" G "<0>255.255.255.0</0>" | |
1358 "^(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9])\.(25[0-5]|2[0-4]
[0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[
0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1
}[0-9]{1}|[0-9])$" G "<0>192.168.0.1</0>" | |
1359 "^(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9])\.(25[0-5]|2[0-4]
[0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[
0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1
}[0-9]{1}|[0-9])$" "1200.5.4.3" | |
1360 "^(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9])\.(25[0-5]|2[0-4]
[0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[
0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1
}[0-9]{1}|[0-9])$" "abc.def.ghi.jkl" | |
1361 "^(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9])\.(25[0-5]|2[0-4]
[0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[
0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1
}[0-9]{1}|[0-9])$" "255.foo.bar.1" | |
1362 "(AUX|PRN|NUL|COM\d|LPT\d)+\s*$" G "<0>COM1</0>" | |
1363 "(AUX|PRN|NUL|COM\d|LPT\d)+\s*$" G "<0>AUX</0>" | |
1364 "(AUX|PRN|NUL|COM\d|LPT\d)+\s*$" G "<0>LPT1</0>" | |
1365 "(AUX|PRN|NUL|COM\d|LPT\d)+\s*$" "image.jpg" | |
1366 "(AUX|PRN|NUL|COM\d|LPT\d)+\s*$" "index.html" | |
1367 "(AUX|PRN|NUL|COM\d|LPT\d)+\s*$" "readme.txt" | |
1368 "^(?:(?:31(\/|-|\.)(?:0?[13578]|1[02]))\1|(?:(?:29|30)(\/|-|\.)(?:0?[1,3-9]|1[0-
2])\2))(?:(?:1[6-9]|[2-9]\d)?\d{2})$|^(?:29(\/|-|\.)0?2\3(?:(?:(?:1[6-9]|[2-9]\d
)?(?:0[48]|[2468][048]|[13579][26])|(?:(?:16|[2468][048]|[3579][26])00))))$|^(?:
0?[1-9]|1\d|2[0-8])(\/|-|\.)(?:(?:0?[1-9])|(?:1[0-2]))\4(?:(?:1[6-9]|[2-9]\d)?\d
{2})$" G "<0>29/02/1972</0>" | |
1369 "^(?:(?:31(\/|-|\.)(?:0?[13578]|1[02]))\1|(?:(?:29|30)(\/|-|\.)(?:0?[1,3-9]|1[0-
2])\2))(?:(?:1[6-9]|[2-9]\d)?\d{2})$|^(?:29(\/|-|\.)0?2\3(?:(?:(?:1[6-9]|[2-9]\d
)?(?:0[48]|[2468][048]|[13579][26])|(?:(?:16|[2468][048]|[3579][26])00))))$|^(?:
0?[1-9]|1\d|2[0-8])(\/|-|\.)(?:(?:0?[1-9])|(?:1[0-2]))\4(?:(?:1[6-9]|[2-9]\d)?\d
{2})$" G "<0>5-9-98</0>" | |
1370 "^(?:(?:31(\/|-|\.)(?:0?[13578]|1[02]))\1|(?:(?:29|30)(\/|-|\.)(?:0?[1,3-9]|1[0-
2])\2))(?:(?:1[6-9]|[2-9]\d)?\d{2})$|^(?:29(\/|-|\.)0?2\3(?:(?:(?:1[6-9]|[2-9]\d
)?(?:0[48]|[2468][048]|[13579][26])|(?:(?:16|[2468][048]|[3579][26])00))))$|^(?:
0?[1-9]|1\d|2[0-8])(\/|-|\.)(?:(?:0?[1-9])|(?:1[0-2]))\4(?:(?:1[6-9]|[2-9]\d)?\d
{2})$" G "<0>10-11-2002</0>" | |
1371 "^(?:(?:31(\/|-|\.)(?:0?[13578]|1[02]))\1|(?:(?:29|30)(\/|-|\.)(?:0?[1,3-9]|1[0-
2])\2))(?:(?:1[6-9]|[2-9]\d)?\d{2})$|^(?:29(\/|-|\.)0?2\3(?:(?:(?:1[6-9]|[2-9]\d
)?(?:0[48]|[2468][048]|[13579][26])|(?:(?:16|[2468][048]|[3579][26])00))))$|^(?:
0?[1-9]|1\d|2[0-8])(\/|-|\.)(?:(?:0?[1-9])|(?:1[0-2]))\4(?:(?:1[6-9]|[2-9]\d)?\d
{2})$" "29/02/2003" | |
1372 "^(?:(?:31(\/|-|\.)(?:0?[13578]|1[02]))\1|(?:(?:29|30)(\/|-|\.)(?:0?[1,3-9]|1[0-
2])\2))(?:(?:1[6-9]|[2-9]\d)?\d{2})$|^(?:29(\/|-|\.)0?2\3(?:(?:(?:1[6-9]|[2-9]\d
)?(?:0[48]|[2468][048]|[13579][26])|(?:(?:16|[2468][048]|[3579][26])00))))$|^(?:
0?[1-9]|1\d|2[0-8])(\/|-|\.)(?:(?:0?[1-9])|(?:1[0-2]))\4(?:(?:1[6-9]|[2-9]\d)?\d
{2})$" "12/13/2002" | |
1373 "^(?:(?:31(\/|-|\.)(?:0?[13578]|1[02]))\1|(?:(?:29|30)(\/|-|\.)(?:0?[1,3-9]|1[0-
2])\2))(?:(?:1[6-9]|[2-9]\d)?\d{2})$|^(?:29(\/|-|\.)0?2\3(?:(?:(?:1[6-9]|[2-9]\d
)?(?:0[48]|[2468][048]|[13579][26])|(?:(?:16|[2468][048]|[3579][26])00))))$|^(?:
0?[1-9]|1\d|2[0-8])(\/|-|\.)(?:(?:0?[1-9])|(?:1[0-2]))\4(?:(?:1[6-9]|[2-9]\d)?\d
{2})$" "1-1-1500" | |
1374 "^(user=([a-z0-9]+,)*(([a-z0-9]+){1});)?(group=([a-z0-9]+,)*(([a-z0-9]+){1});)?(
level=[0-9]+;)?$" G "<0>user=foo,bar,quux;group=manager,admin;level=100;</0>" | |
1375 "^(user=([a-z0-9]+,)*(([a-z0-9]+){1});)?(group=([a-z0-9]+,)*(([a-z0-9]+){1});)?(
level=[0-9]+;)?$" G "<0>group=nobody;level=24;</0>" | |
1376 "^(user=([a-z0-9]+,)*(([a-z0-9]+){1});)?(group=([a-z0-9]+,)*(([a-z0-9]+){1});)?(
level=[0-9]+;)?$" "user=foo" | |
1377 "^(user=([a-z0-9]+,)*(([a-z0-9]+){1});)?(group=([a-z0-9]+,)*(([a-z0-9]+){1});)?(
level=[0-9]+;)?$" "blahh" | |
1378 "^(\(?\+?[0-9]*\)?)?[0-9_\- \(\)]*$" G "<0>(+44)(0)20-12341234</0>" | |
1379 "^(\(?\+?[0-9]*\)?)?[0-9_\- \(\)]*$" G "<0>02012341234</0>" | |
1380 "^(\(?\+?[0-9]*\)?)?[0-9_\- \(\)]*$" G "<0>+44 (0) 1234-1234</0>" | |
1381 "^(\(?\+?[0-9]*\)?)?[0-9_\- \(\)]*$" "(44+)020-12341234" | |
1382 "^(\(?\+?[0-9]*\)?)?[0-9_\- \(\)]*$" "12341234(+020)" | |
1383 "\b(\w+)\s+\1\b" G "<0>Tell the the preacher</0>" | |
1384 "\b(\w+)\s+\1\b" G "<0>some some</0>" | |
1385 "\b(\w+)\s+\1\b" G "<0>hubba hubba</0>" | |
1386 "\b(\w+)\s+\1\b" "once an annual report" | |
1387 "\b(\w+)\s+\1\b" "mandate dated submissions" | |
1388 "\b(\w+)\s+\1\b" "Hubba hubba" | |
1389 "(^\+[0-9]{2}|^\+[0-9]{2}\(0\)|^\(\+[0-9]{2}\)\(0\)|^00[0-9]{2}|^0)([0-9]{9}$|[0
-9\-\s]{10}$)" G "<0>+31235256677</0>" | |
1390 "(^\+[0-9]{2}|^\+[0-9]{2}\(0\)|^\(\+[0-9]{2}\)\(0\)|^00[0-9]{2}|^0)([0-9]{9}$|[0
-9\-\s]{10}$)" G "<0>+31(0)235256677</0>" | |
1391 "(^\+[0-9]{2}|^\+[0-9]{2}\(0\)|^\(\+[0-9]{2}\)\(0\)|^00[0-9]{2}|^0)([0-9]{9}$|[0
-9\-\s]{10}$)" G "<0>023-5256677</0>" | |
1392 "(^\+[0-9]{2}|^\+[0-9]{2}\(0\)|^\(\+[0-9]{2}\)\(0\)|^00[0-9]{2}|^0)([0-9]{9}$|[0
-9\-\s]{10}$)" "+3123525667788999" | |
1393 "(^\+[0-9]{2}|^\+[0-9]{2}\(0\)|^\(\+[0-9]{2}\)\(0\)|^00[0-9]{2}|^0)([0-9]{9}$|[0
-9\-\s]{10}$)" "3123525667788" | |
1394 "(^\+[0-9]{2}|^\+[0-9]{2}\(0\)|^\(\+[0-9]{2}\)\(0\)|^00[0-9]{2}|^0)([0-9]{9}$|[0
-9\-\s]{10}$)" "232-2566778" | |
1395 "^[-+]?\d*\.?\d*$" G "<0>123</0>" | |
1396 "^[-+]?\d*\.?\d*$" G "<0>+3.14159</0>" | |
1397 "^[-+]?\d*\.?\d*$" G "<0>-3.14159</0>" | |
1398 "^[-+]?\d*\.?\d*$" "abc" | |
1399 "^[-+]?\d*\.?\d*$" "3.4.5" | |
1400 "^[-+]?\d*\.?\d*$" "$99.95" | |
1401 "^\$?([1-9]{1}[0-9]{0,2}(\,[0-9]{3})*(\.[0-9]{0,2})?|[1-9]{1}[0-9]{0,}(\.[0-9]{0
,2})?|0(\.[0-9]{0,2})?|(\.[0-9]{1,2})?)$" G "<0>$1,234.50</0>" | |
1402 "^\$?([1-9]{1}[0-9]{0,2}(\,[0-9]{3})*(\.[0-9]{0,2})?|[1-9]{1}[0-9]{0,}(\.[0-9]{0
,2})?|0(\.[0-9]{0,2})?|(\.[0-9]{1,2})?)$" G "<0>$0.70</0>" | |
1403 "^\$?([1-9]{1}[0-9]{0,2}(\,[0-9]{3})*(\.[0-9]{0,2})?|[1-9]{1}[0-9]{0,}(\.[0-9]{0
,2})?|0(\.[0-9]{0,2})?|(\.[0-9]{1,2})?)$" G "<0>.7</0>" | |
1404 "^\$?([1-9]{1}[0-9]{0,2}(\,[0-9]{3})*(\.[0-9]{0,2})?|[1-9]{1}[0-9]{0,}(\.[0-9]{0
,2})?|0(\.[0-9]{0,2})?|(\.[0-9]{1,2})?)$" "$0,123.50" | |
1405 "^\$?([1-9]{1}[0-9]{0,2}(\,[0-9]{3})*(\.[0-9]{0,2})?|[1-9]{1}[0-9]{0,}(\.[0-9]{0
,2})?|0(\.[0-9]{0,2})?|(\.[0-9]{1,2})?)$" "$00.5" | |
1406 "^[A-Z]{2}[0-9]{6}[A-DFM]{1}$" G "<0>AB123456D</0>" | |
1407 "^[A-Z]{2}[0-9]{6}[A-DFM]{1}$" G "<0>AB123456F</0>" | |
1408 "^[A-Z]{2}[0-9]{6}[A-DFM]{1}$" G "<0>AB123456M</0>" | |
1409 "^[A-Z]{2}[0-9]{6}[A-DFM]{1}$" "AB123456E" | |
1410 "^[A-Z]{2}[0-9]{6}[A-DFM]{1}$" "ab123456d" | |
1411 #"(http|ftp|https):\/\/[\w]+(.[\w]+)([\w\-\.,@?^=%&:/~\+#]*[\w\-\@?^=%&/~\+#])?"
G "<0>http://regxlib.com/Default.aspx</0>" # TODO: \w in pattern | |
1412 #"(http|ftp|https):\/\/[\w]+(.[\w]+)([\w\-\.,@?^=%&:/~\+#]*[\w\-\@?^=%&/~\+#])?"
G "<0>http://electronics.cnet.com/electronics/0-6342366-8-8994967-1.html</0>"
# TODO: \w in pattern | |
1413 #"(http|ftp|https):\/\/[\w]+(.[\w]+)([\w\-\.,@?^=%&:/~\+#]*[\w\-\@?^=%&/~\+#])?"
"www.yahoo.com" # TODO: \w in pattern | |
1414 "^[0-9]{4}\s{0,1}[a-zA-Z]{2}$" G "<0>2034AK</0>" | |
1415 "^[0-9]{4}\s{0,1}[a-zA-Z]{2}$" G "<0>2034 AK</0>" | |
1416 "^[0-9]{4}\s{0,1}[a-zA-Z]{2}$" G "<0>2034 ak</0>" | |
1417 "^[0-9]{4}\s{0,1}[a-zA-Z]{2}$" "2034 AK" | |
1418 "^[0-9]{4}\s{0,1}[a-zA-Z]{2}$" "321321 AKSSAA" | |
1419 "((\d{2})|(\d))\/((\d{2})|(\d))\/((\d{4})|(\d{2}))" G "<0>4/5/91</0>" | |
1420 "((\d{2})|(\d))\/((\d{2})|(\d))\/((\d{4})|(\d{2}))" G "<0>04/5/1991</0>" | |
1421 "((\d{2})|(\d))\/((\d{2})|(\d))\/((\d{4})|(\d{2}))" G "<0>4/05/89</0>" | |
1422 "((\d{2})|(\d))\/((\d{2})|(\d))\/((\d{4})|(\d{2}))" "4/5/1" | |
1423 #"(^|\s|\()((([1-9]){1}|([0][1-9]){1}|([1][012]){1}){1}[\/-]((2[0-9]){1}|(3[01])
{1}|([01][1-9]){1}|([1-9]){1}){1}[\/-](((19|20)([0-9][0-9]){1}|([0-9][0-9]){1}))
{1}(([\s|\)|:])|(^|\s|\()((([0-9]){1}|([0][1-9]){1}|([1][012]){1}){1}[\/-](([11-
31]){1}|([01][1-9]){1}|([1-9]){1}){1}[\/-](((19|20)([0-9][0-9]){1}|([0-9][0-9]){
1})){1}(([\s|\)|:|$|\>])){1}){1}){1}){1}" G "<0>01/01/2001 </0>" #TODO - \s
in pattern. | |
1424 "(^|\s|\()((([1-9]){1}|([0][1-9]){1}|([1][012]){1}){1}[\/-]((2[0-9]){1}|(3[01]){
1}|([01][1-9]){1}|([1-9]){1}){1}[\/-](((19|20)([0-9][0-9]){1}|([0-9][0-9]){1})){
1}(([\s|\)|:])|(^|\s|\()((([0-9]){1}|([0][1-9]){1}|([1][012]){1}){1}[\/-](([11-3
1]){1}|([01][1-9]){1}|([1-9]){1}){1}[\/-](((19|20)([0-9][0-9]){1}|([0-9][0-9]){1
})){1}(([\s|\)|:|$|\>])){1}){1}){1}){1}" G "<0>01-01-2001:</0>" | |
1425 "(^|\s|\()((([1-9]){1}|([0][1-9]){1}|([1][012]){1}){1}[\/-]((2[0-9]){1}|(3[01]){
1}|([01][1-9]){1}|([1-9]){1}){1}[\/-](((19|20)([0-9][0-9]){1}|([0-9][0-9]){1})){
1}(([\s|\)|:])|(^|\s|\()((([0-9]){1}|([0][1-9]){1}|([1][012]){1}){1}[\/-](([11-3
1]){1}|([01][1-9]){1}|([1-9]){1}){1}[\/-](((19|20)([0-9][0-9]){1}|([0-9][0-9]){1
})){1}(([\s|\)|:|$|\>])){1}){1}){1}){1}" G "<0>(1-1-01)</0>" | |
1426 "(^|\s|\()((([1-9]){1}|([0][1-9]){1}|([1][012]){1}){1}[\/-]((2[0-9]){1}|(3[01]){
1}|([01][1-9]){1}|([1-9]){1}){1}[\/-](((19|20)([0-9][0-9]){1}|([0-9][0-9]){1})){
1}(([\s|\)|:])|(^|\s|\()((([0-9]){1}|([0][1-9]){1}|([1][012]){1}){1}[\/-](([11-3
1]){1}|([01][1-9]){1}|([1-9]){1}){1}[\/-](((19|20)([0-9][0-9]){1}|([0-9][0-9]){1
})){1}(([\s|\)|:|$|\>])){1}){1}){1}){1}" "13/1/2001" | |
1427 "(^|\s|\()((([1-9]){1}|([0][1-9]){1}|([1][012]){1}){1}[\/-]((2[0-9]){1}|(3[01]){
1}|([01][1-9]){1}|([1-9]){1}){1}[\/-](((19|20)([0-9][0-9]){1}|([0-9][0-9]){1})){
1}(([\s|\)|:])|(^|\s|\()((([0-9]){1}|([0][1-9]){1}|([1][012]){1}){1}[\/-](([11-3
1]){1}|([01][1-9]){1}|([1-9]){1}){1}[\/-](((19|20)([0-9][0-9]){1}|([0-9][0-9]){1
})){1}(([\s|\)|:|$|\>])){1}){1}){1}){1}" "1-32-2001" | |
1428 "(^|\s|\()((([1-9]){1}|([0][1-9]){1}|([1][012]){1}){1}[\/-]((2[0-9]){1}|(3[01]){
1}|([01][1-9]){1}|([1-9]){1}){1}[\/-](((19|20)([0-9][0-9]){1}|([0-9][0-9]){1})){
1}(([\s|\)|:])|(^|\s|\()((([0-9]){1}|([0][1-9]){1}|([1][012]){1}){1}[\/-](([11-3
1]){1}|([01][1-9]){1}|([1-9]){1}){1}[\/-](((19|20)([0-9][0-9]){1}|([0-9][0-9]){1
})){1}(([\s|\)|:|$|\>])){1}){1}){1}){1}" "1-1-1801" | |
1429 "^\d{3}\s?\d{3}$" G "<0>400 099</0>" | |
1430 "^\d{3}\s?\d{3}$" G "<0>400099</0>" | |
1431 "^\d{3}\s?\d{3}$" G "<0>400050</0>" | |
1432 "^\d{3}\s?\d{3}$" "2345678" | |
1433 "^\d{3}\s?\d{3}$" "12345" | |
1434 "^\d{3}\s?\d{3}$" "asdf" | |
1435 "^\D?(\d{3})\D?\D?(\d{3})\D?(\d{4})$" G "<0>(111) 222-3333</0>" | |
1436 "^\D?(\d{3})\D?\D?(\d{3})\D?(\d{4})$" G "<0>1112223333</0>" | |
1437 "^\D?(\d{3})\D?\D?(\d{3})\D?(\d{4})$" G "<0>111-222-3333</0>" | |
1438 "^\D?(\d{3})\D?\D?(\d{3})\D?(\d{4})$" "11122223333" | |
1439 "^\D?(\d{3})\D?\D?(\d{3})\D?(\d{4})$" "11112223333" | |
1440 "^\D?(\d{3})\D?\D?(\d{3})\D?(\d{4})$" "11122233333" | |
1441 "^#?([a-f]|[A-F]|[0-9]){3}(([a-f]|[A-F]|[0-9]){3})?$" G "<0>#00ccff</0>" | |
1442 "^#?([a-f]|[A-F]|[0-9]){3}(([a-f]|[A-F]|[0-9]){3})?$" G "<0>#039</0>" | |
1443 "^#?([a-f]|[A-F]|[0-9]){3}(([a-f]|[A-F]|[0-9]){3})?$" G "<0>ffffcc</0>" | |
1444 "^#?([a-f]|[A-F]|[0-9]){3}(([a-f]|[A-F]|[0-9]){3})?$" "blue" | |
1445 "^#?([a-f]|[A-F]|[0-9]){3}(([a-f]|[A-F]|[0-9]){3})?$" "0x000000" | |
1446 "^#?([a-f]|[A-F]|[0-9]){3}(([a-f]|[A-F]|[0-9]){3})?$" "#ff000" | |
1447 "^([0-9a-fA-F][0-9a-fA-F]:){5}([0-9a-fA-F][0-9a-fA-F])$" G "<0>01:23:45:67:89:
ab</0>" | |
1448 "^([0-9a-fA-F][0-9a-fA-F]:){5}([0-9a-fA-F][0-9a-fA-F])$" G "<0>01:23:45:67:89:
AB</0>" | |
1449 "^([0-9a-fA-F][0-9a-fA-F]:){5}([0-9a-fA-F][0-9a-fA-F])$" G "<0>fE:dC:bA:98:76:
54</0>" | |
1450 "^([0-9a-fA-F][0-9a-fA-F]:){5}([0-9a-fA-F][0-9a-fA-F])$" "01:23:45:67:89:ab:
cd" | |
1451 "^([0-9a-fA-F][0-9a-fA-F]:){5}([0-9a-fA-F][0-9a-fA-F])$" "01:23:45:67:89:Az" | |
1452 "^([0-9a-fA-F][0-9a-fA-F]:){5}([0-9a-fA-F][0-9a-fA-F])$" "01:23:45:56:" | |
1453 "^(http|https|ftp)\://[a-zA-Z0-9\-\.]+\.[a-zA-Z]{2,3}(:[a-zA-Z0-9]*)?/?([a-zA-Z0
-9\-\._\?\,\'/\\\+\&%\$#\=~])*$" G "<0>http://www.blah.com/~joe</0>" | |
1454 "^(http|https|ftp)\://[a-zA-Z0-9\-\.]+\.[a-zA-Z]{2,3}(:[a-zA-Z0-9]*)?/?([a-zA-Z0
-9\-\._\?\,\'/\\\+\&%\$#\=~])*$" G "<0>ftp://ftp.blah.co.uk:2828/blah%20blah.g
if</0>" | |
1455 "^(http|https|ftp)\://[a-zA-Z0-9\-\.]+\.[a-zA-Z]{2,3}(:[a-zA-Z0-9]*)?/?([a-zA-Z0
-9\-\._\?\,\'/\\\+\&%\$#\=~])*$" G "<0>https://blah.gov/blah-blah.as</0>" | |
1456 "^(http|https|ftp)\://[a-zA-Z0-9\-\.]+\.[a-zA-Z]{2,3}(:[a-zA-Z0-9]*)?/?([a-zA-Z0
-9\-\._\?\,\'/\\\+\&%\$#\=~])*$" "www.blah.com" | |
1457 "^(http|https|ftp)\://[a-zA-Z0-9\-\.]+\.[a-zA-Z]{2,3}(:[a-zA-Z0-9]*)?/?([a-zA-Z0
-9\-\._\?\,\'/\\\+\&%\$#\=~])*$" "http://www.blah.com/I have spaces!" | |
1458 "^(http|https|ftp)\://[a-zA-Z0-9\-\.]+\.[a-zA-Z]{2,3}(:[a-zA-Z0-9]*)?/?([a-zA-Z0
-9\-\._\?\,\'/\\\+\&%\$#\=~])*$" "ftp://blah_underscore/[nope]" | |
1459 "^(([0-2]\d|[3][0-1])\/([0]\d|[1][0-2])\/[2][0]\d{2})$|^(([0-2]\d|[3][0-1])\/([0
]\d|[1][0-2])\/[2][0]\d{2}\s([0-1]\d|[2][0-3])\:[0-5]\d\:[0-5]\d)$" G "<0>12/0
1/2002</0>" | |
1460 "^(([0-2]\d|[3][0-1])\/([0]\d|[1][0-2])\/[2][0]\d{2})$|^(([0-2]\d|[3][0-1])\/([0
]\d|[1][0-2])\/[2][0]\d{2}\s([0-1]\d|[2][0-3])\:[0-5]\d\:[0-5]\d)$" G "<0>12/0
1/2002 12:32:10</0>" | |
1461 "^(([0-2]\d|[3][0-1])\/([0]\d|[1][0-2])\/[2][0]\d{2})$|^(([0-2]\d|[3][0-1])\/([0
]\d|[1][0-2])\/[2][0]\d{2}\s([0-1]\d|[2][0-3])\:[0-5]\d\:[0-5]\d)$" "32/12/2
002" | |
1462 "^(([0-2]\d|[3][0-1])\/([0]\d|[1][0-2])\/[2][0]\d{2})$|^(([0-2]\d|[3][0-1])\/([0
]\d|[1][0-2])\/[2][0]\d{2}\s([0-1]\d|[2][0-3])\:[0-5]\d\:[0-5]\d)$" "12/13/2
001" | |
1463 "^(([0-2]\d|[3][0-1])\/([0]\d|[1][0-2])\/[2][0]\d{2})$|^(([0-2]\d|[3][0-1])\/([0
]\d|[1][0-2])\/[2][0]\d{2}\s([0-1]\d|[2][0-3])\:[0-5]\d\:[0-5]\d)$" "12/02/0
6" | |
1464 "^[0-9](\.[0-9]+)?$" G "<0>1.2345</0>" | |
1465 "^[0-9](\.[0-9]+)?$" G "<0>0.00001</0>" | |
1466 "^[0-9](\.[0-9]+)?$" G "<0>7</0>" | |
1467 "^[0-9](\.[0-9]+)?$" "12.2" | |
1468 "^[0-9](\.[0-9]+)?$" "1.10.1" | |
1469 "^[0-9](\.[0-9]+)?$" "15.98" | |
1470 "^(?:[mM]{1,3})?(?:(?:[cC][dDmM])|(?:[dD]?(?:[cC]{1,3})?))?[lL]?(([xX])(?:\2{1,2
}|[lL]|[cC])?)?((([iI])((\5{1,2})|[vV]|[xX]|[lL])?)|([vV]?([iI]{1,3})?))?$" G
"<0>III</0>" | |
1471 "^(?:[mM]{1,3})?(?:(?:[cC][dDmM])|(?:[dD]?(?:[cC]{1,3})?))?[lL]?(([xX])(?:\2{1,2
}|[lL]|[cC])?)?((([iI])((\5{1,2})|[vV]|[xX]|[lL])?)|([vV]?([iI]{1,3})?))?$" G
"<0>xiv</0>" | |
1472 "^(?:[mM]{1,3})?(?:(?:[cC][dDmM])|(?:[dD]?(?:[cC]{1,3})?))?[lL]?(([xX])(?:\2{1,2
}|[lL]|[cC])?)?((([iI])((\5{1,2})|[vV]|[xX]|[lL])?)|([vV]?([iI]{1,3})?))?$" G
"<0>MCMLXLIX</0>" | |
1473 "^(?:[mM]{1,3})?(?:(?:[cC][dDmM])|(?:[dD]?(?:[cC]{1,3})?))?[lL]?(([xX])(?:\2{1,2
}|[lL]|[cC])?)?((([iI])((\5{1,2})|[vV]|[xX]|[lL])?)|([vV]?([iI]{1,3})?))?$"
"iiV" | |
1474 "^(?:[mM]{1,3})?(?:(?:[cC][dDmM])|(?:[dD]?(?:[cC]{1,3})?))?[lL]?(([xX])(?:\2{1,2
}|[lL]|[cC])?)?((([iI])((\5{1,2})|[vV]|[xX]|[lL])?)|([vV]?([iI]{1,3})?))?$"
"MCCM" | |
1475 "^(?:[mM]{1,3})?(?:(?:[cC][dDmM])|(?:[dD]?(?:[cC]{1,3})?))?[lL]?(([xX])(?:\2{1,2
}|[lL]|[cC])?)?((([iI])((\5{1,2})|[vV]|[xX]|[lL])?)|([vV]?([iI]{1,3})?))?$"
"XXXX" | |
1476 "^[-+]?[0-9]+[.]?[0-9]*([eE][-+]?[0-9]+)?$" G "<0>123</0>" | |
1477 "^[-+]?[0-9]+[.]?[0-9]*([eE][-+]?[0-9]+)?$" G "<0>-123.35</0>" | |
1478 "^[-+]?[0-9]+[.]?[0-9]*([eE][-+]?[0-9]+)?$" G "<0>-123.35e-2</0>" | |
1479 "^[-+]?[0-9]+[.]?[0-9]*([eE][-+]?[0-9]+)?$" "abc" | |
1480 "^[-+]?[0-9]+[.]?[0-9]*([eE][-+]?[0-9]+)?$" "123.32e" | |
1481 "^[-+]?[0-9]+[.]?[0-9]*([eE][-+]?[0-9]+)?$" "123.32.3" | |
1482 "^[a-zA-Z]+(([\'\,\.\- ][a-zA-Z ])?[a-zA-Z]*)*$" G "<0>T.F. Johnson</0>" | |
1483 "^[a-zA-Z]+(([\'\,\.\- ][a-zA-Z ])?[a-zA-Z]*)*$" G "<0>John O'Neil</0>" | |
1484 "^[a-zA-Z]+(([\'\,\.\- ][a-zA-Z ])?[a-zA-Z]*)*$" G "<0>Mary-Kate Johnson</0>" | |
1485 "^[a-zA-Z]+(([\'\,\.\- ][a-zA-Z ])?[a-zA-Z]*)*$" "sam_johnson" | |
1486 "^[a-zA-Z]+(([\'\,\.\- ][a-zA-Z ])?[a-zA-Z]*)*$" "Joe--Bob Jones" | |
1487 "^[a-zA-Z]+(([\'\,\.\- ][a-zA-Z ])?[a-zA-Z]*)*$" "dfjsd0rd" | |
1488 "^(20|21|22|23|[0-1]\d)[0-5]\d$" G "<0>1200</0>" | |
1489 "^(20|21|22|23|[0-1]\d)[0-5]\d$" G "<0>1645</0>" | |
1490 "^(20|21|22|23|[0-1]\d)[0-5]\d$" G "<0>2359</0>" | |
1491 "^(20|21|22|23|[0-1]\d)[0-5]\d$" "2400" | |
1492 "^(20|21|22|23|[0-1]\d)[0-5]\d$" "asbc" | |
1493 "^(20|21|22|23|[0-1]\d)[0-5]\d$" "12:45" | |
1494 /<[^>]*\n?.*=("|')?(.*\.jpg)("|')?.*\n?[^<]*>/ G '<0><td background="../img/im
g.jpg" ></0>' | |
1495 /<[^>]*\n?.*=("|')?(.*\.jpg)("|')?.*\n?[^<]*>/ G "<0><img src=img.jpg ></0>" | |
1496 /<[^>]*\n?.*=("|')?(.*\.jpg)("|')?.*\n?[^<]*>/ G "<0><img src='img.jpg'></0>" | |
1497 /<[^>]*\n?.*=("|')?(.*\.jpg)("|')?.*\n?[^<]*>/ "= img.jpg" | |
1498 /<[^>]*\n?.*=("|')?(.*\.jpg)("|')?.*\n?[^<]*>/ "img.jpg" | |
1499 "^(\d{5}-\d{4}|\d{5})$|^([a-zA-Z]\d[a-zA-Z] \d[a-zA-Z]\d)$" G "<0>78754</0>" | |
1500 "^(\d{5}-\d{4}|\d{5})$|^([a-zA-Z]\d[a-zA-Z] \d[a-zA-Z]\d)$" G "<0>78754-1234</
0>" | |
1501 "^(\d{5}-\d{4}|\d{5})$|^([a-zA-Z]\d[a-zA-Z] \d[a-zA-Z]\d)$" G "<0>G3H 6A3</0>" | |
1502 "^(\d{5}-\d{4}|\d{5})$|^([a-zA-Z]\d[a-zA-Z] \d[a-zA-Z]\d)$" "78754-12aA" | |
1503 "^(\d{5}-\d{4}|\d{5})$|^([a-zA-Z]\d[a-zA-Z] \d[a-zA-Z]\d)$" "7875A" | |
1504 "^(\d{5}-\d{4}|\d{5})$|^([a-zA-Z]\d[a-zA-Z] \d[a-zA-Z]\d)$" "g3h6a3" | |
1505 #"^([\w\-\.]+)@((\[([0-9]{1,3}\.){3}[0-9]{1,3}\])|(([\w\-]+\.)+)([a-zA-Z]{2,4}))
$" G "<0>bob@somewhere.com</0>" # TODO: \w in pattern | |
1506 #"^([\w\-\.]+)@((\[([0-9]{1,3}\.){3}[0-9]{1,3}\])|(([\w\-]+\.)+)([a-zA-Z]{2,4}))
$" G "<0>bob.jones@[1.1.1.1]</0 # TODO: \w in pattern>" | |
1507 #"^([\w\-\.]+)@((\[([0-9]{1,3}\.){3}[0-9]{1,3}\])|(([\w\-]+\.)+)([a-zA-Z]{2,4}))
$" G "<0>bob@a.b.c.d.info</0>" # TODO: \w in pattern | |
1508 #"^([\w\-\.]+)@((\[([0-9]{1,3}\.){3}[0-9]{1,3}\])|(([\w\-]+\.)+)([a-zA-Z]{2,4}))
$" "bob@com" # TODO: \w in pattern | |
1509 #"^([\w\-\.]+)@((\[([0-9]{1,3}\.){3}[0-9]{1,3}\])|(([\w\-]+\.)+)([a-zA-Z]{2,4}))
$" "bob.jones@some.where" # TODO: \w in pattern | |
1510 #"^([\w\-\.]+)@((\[([0-9]{1,3}\.){3}[0-9]{1,3}\])|(([\w\-]+\.)+)([a-zA-Z]{2,4}))
$" "bob@1.1.1.123" # TODO: \w in pattern | |
1511 #"^(([-\w \.]+)|(""[-\w \.]+"") )?<([\w\-\.]+)@((\[([0-9]{1,3}\.){3}[0-9]{1,3}\]
)|(([\w\-]+\.)+)([a-zA-Z]{2,4}))>$" G "<0><ab@cd.ef></0>" # TODO: \w in pat
tern | |
1512 #"^(([-\w \.]+)|(""[-\w \.]+"") )?<([\w\-\.]+)@((\[([0-9]{1,3}\.){3}[0-9]{1,3}\]
)|(([\w\-]+\.)+)([a-zA-Z]{2,4}))>$" G "<0>bob A. jones <ab@cd.ef></0>" # TOD
O: \w in pattern | |
1513 #"^(([-\w \.]+)|(""[-\w \.]+"") )?<([\w\-\.]+)@((\[([0-9]{1,3}\.){3}[0-9]{1,3}\]
)|(([\w\-]+\.)+)([a-zA-Z]{2,4}))>$" G "<0>bob A. jones <ab@[1.1.1.111]></0>"
# TODO: \w in pattern | |
1514 #"^(([-\w \.]+)|(""[-\w \.]+"") )?<([\w\-\.]+)@((\[([0-9]{1,3}\.){3}[0-9]{1,3}\]
)|(([\w\-]+\.)+)([a-zA-Z]{2,4}))>$" "ab@cd.ef" # TODO: \w in pattern | |
1515 #"^(([-\w \.]+)|(""[-\w \.]+"") )?<([\w\-\.]+)@((\[([0-9]{1,3}\.){3}[0-9]{1,3}\]
)|(([\w\-]+\.)+)([a-zA-Z]{2,4}))>$" ""bob A. jones <ab@cd.ef>" # TODO: \w
in pattern | |
1516 #"^(([-\w \.]+)|(""[-\w \.]+"") )?<([\w\-\.]+)@((\[([0-9]{1,3}\.){3}[0-9]{1,3}\]
)|(([\w\-]+\.)+)([a-zA-Z]{2,4}))>$" "bob A. jones <ab@1.1.1.111>" # TODO:
\w in pattern | |
1517 "^[A-Za-z]{1,2}[0-9A-Za-z]{1,2}[ ]?[0-9]{0,1}[A-Za-z]{2}$" G "<0>SW112LE</0>" | |
1518 "^[A-Za-z]{1,2}[0-9A-Za-z]{1,2}[ ]?[0-9]{0,1}[A-Za-z]{2}$" G "<0>SW11 2LE</0>" | |
1519 "^[A-Za-z]{1,2}[0-9A-Za-z]{1,2}[ ]?[0-9]{0,1}[A-Za-z]{2}$" G "<0>CR05LE</0>" | |
1520 "^[A-Za-z]{1,2}[0-9A-Za-z]{1,2}[ ]?[0-9]{0,1}[A-Za-z]{2}$" "12CR0LE" | |
1521 "^[A-Za-z]{1,2}[0-9A-Za-z]{1,2}[ ]?[0-9]{0,1}[A-Za-z]{2}$" "12CR 0LE" | |
1522 "^[A-Za-z]{1,2}[0-9A-Za-z]{1,2}[ ]?[0-9]{0,1}[A-Za-z]{2}$" "SWLE05" | |
1523 "20\d{2}(-|\/)((0[1-9])|(1[0-2]))(-|\/)((0[1-9])|([1-2][0-9])|(3[0-1]))(T|\s)(([
0-1][0-9])|(2[0-3])):([0-5][0-9]):([0-5][0-9])" G "<0>2099-12-31T23:59:59</0>" | |
1524 "20\d{2}(-|\/)((0[1-9])|(1[0-2]))(-|\/)((0[1-9])|([1-2][0-9])|(3[0-1]))(T|\s)(([
0-1][0-9])|(2[0-3])):([0-5][0-9]):([0-5][0-9])" G "<0>2002/02/09 16:30:00</0>" | |
1525 "20\d{2}(-|\/)((0[1-9])|(1[0-2]))(-|\/)((0[1-9])|([1-2][0-9])|(3[0-1]))(T|\s)(([
0-1][0-9])|(2[0-3])):([0-5][0-9]):([0-5][0-9])" G "<0>2000-01-01T00:00:00</0>" | |
1526 "20\d{2}(-|\/)((0[1-9])|(1[0-2]))(-|\/)((0[1-9])|([1-2][0-9])|(3[0-1]))(T|\s)(([
0-1][0-9])|(2[0-3])):([0-5][0-9]):([0-5][0-9])" "2000-13-31T00:00:00" | |
1527 "20\d{2}(-|\/)((0[1-9])|(1[0-2]))(-|\/)((0[1-9])|([1-2][0-9])|(3[0-1]))(T|\s)(([
0-1][0-9])|(2[0-3])):([0-5][0-9]):([0-5][0-9])" "2002/02/33 24:00:00" | |
1528 "20\d{2}(-|\/)((0[1-9])|(1[0-2]))(-|\/)((0[1-9])|([1-2][0-9])|(3[0-1]))(T|\s)(([
0-1][0-9])|(2[0-3])):([0-5][0-9]):([0-5][0-9])" "2000-01-01 60:00:00" | |
1529 "^((?:4\d{3})|(?:5[1-5]\d{2})|(?:6011)|(?:3[68]\d{2})|(?:30[012345]\d))[ -]?(\d{
4})[ -]?(\d{4})[ -]?(\d{4}|3[4,7]\d{13})$" G "<0>6011567812345678</0>" | |
1530 "^((?:4\d{3})|(?:5[1-5]\d{2})|(?:6011)|(?:3[68]\d{2})|(?:30[012345]\d))[ -]?(\d{
4})[ -]?(\d{4})[ -]?(\d{4}|3[4,7]\d{13})$" G "<0>6011 5678 1234 5678</0>" | |
1531 "^((?:4\d{3})|(?:5[1-5]\d{2})|(?:6011)|(?:3[68]\d{2})|(?:30[012345]\d))[ -]?(\d{
4})[ -]?(\d{4})[ -]?(\d{4}|3[4,7]\d{13})$" G "<0>6011-5678-1234-5678</0>" | |
1532 "^((?:4\d{3})|(?:5[1-5]\d{2})|(?:6011)|(?:3[68]\d{2})|(?:30[012345]\d))[ -]?(\d{
4})[ -]?(\d{4})[ -]?(\d{4}|3[4,7]\d{13})$" "1234567890123456" | |
1533 "^((((0[13578])|(1[02]))[\/]?(([0-2][0-9])|(3[01])))|(((0[469])|(11))[\/]?(([0-2
][0-9])|(30)))|(02[\/]?[0-2][0-9]))[\/]?\d{4}$" G "<0>01/01/2001</0>" | |
1534 "^((((0[13578])|(1[02]))[\/]?(([0-2][0-9])|(3[01])))|(((0[469])|(11))[\/]?(([0-2
][0-9])|(30)))|(02[\/]?[0-2][0-9]))[\/]?\d{4}$" G "<0>02/29/2002</0>" | |
1535 "^((((0[13578])|(1[02]))[\/]?(([0-2][0-9])|(3[01])))|(((0[469])|(11))[\/]?(([0-2
][0-9])|(30)))|(02[\/]?[0-2][0-9]))[\/]?\d{4}$" G "<0>12/31/2002</0>" | |
1536 "^((((0[13578])|(1[02]))[\/]?(([0-2][0-9])|(3[01])))|(((0[469])|(11))[\/]?(([0-2
][0-9])|(30)))|(02[\/]?[0-2][0-9]))[\/]?\d{4}$" "1/1/02" | |
1537 "^((((0[13578])|(1[02]))[\/]?(([0-2][0-9])|(3[01])))|(((0[469])|(11))[\/]?(([0-2
][0-9])|(30)))|(02[\/]?[0-2][0-9]))[\/]?\d{4}$" "02/30/2002" | |
1538 "^((((0[13578])|(1[02]))[\/]?(([0-2][0-9])|(3[01])))|(((0[469])|(11))[\/]?(([0-2
][0-9])|(30)))|(02[\/]?[0-2][0-9]))[\/]?\d{4}$" "1/25/2002" | |
1539 #"^(?=[^\&])(?:(?<scheme>[^:/?#]+):)?(?://(?<authority>[^/?#]*))?(?<path>[^?#]*)
(?:\?(?<query>[^#]*))?(?:#(?<fragment>.*))?" G "<0>http://regexlib.com/REDetai
ls.aspx?regexp_id=x#Details</0>" # out of context, can't work stand-alone | |
1540 #"^(?=[^\&])(?:(?<scheme>[^:/?#]+):)?(?://(?<authority>[^/?#]*))?(?<path>[^?#]*)
(?:\?(?<query>[^#]*))?(?:#(?<fragment>.*))?" "&" # out of context,
can't work stand-alone | |
1541 "^[-+]?\d+(\.\d+)?$" G "<0>123</0>" | |
1542 "^[-+]?\d+(\.\d+)?$" G "<0>-123.45</0>" | |
1543 "^[-+]?\d+(\.\d+)?$" G "<0>+123.56</0>" | |
1544 "^[-+]?\d+(\.\d+)?$" "123x" | |
1545 "^[-+]?\d+(\.\d+)?$" ".123" | |
1546 "^[-+]?\d+(\.\d+)?$" "-123." | |
1547 "^(\d{4}[- ]){3}\d{4}|\d{16}$" G "<0>1234-1234-1234-1234</0>" | |
1548 "^(\d{4}[- ]){3}\d{4}|\d{16}$" G "<0>1234 1234 1234 1234</0>" | |
1549 "^(\d{4}[- ]){3}\d{4}|\d{16}$" G "<0>1234123412341234</0>" | |
1550 "^(\d{4}[- ]){3}\d{4}|\d{16}$" "Visa" | |
1551 "^(\d{4}[- ]){3}\d{4}|\d{16}$" "1234" | |
1552 "^(\d{4}[- ]){3}\d{4}|\d{16}$" "123-1234-12345" | |
1553 "^((4\d{3})|(5[1-5]\d{2})|(6011))-?\d{4}-?\d{4}-?\d{4}|3[4,7]\d{13}$" G "<0>60
11-1111-1111-1111</0>" | |
1554 "^((4\d{3})|(5[1-5]\d{2})|(6011))-?\d{4}-?\d{4}-?\d{4}|3[4,7]\d{13}$" G "<0>54
23-1111-1111-1111</0>" | |
1555 "^((4\d{3})|(5[1-5]\d{2})|(6011))-?\d{4}-?\d{4}-?\d{4}|3[4,7]\d{13}$" G "<0>34
1111111111111</0>" | |
1556 "^((4\d{3})|(5[1-5]\d{2})|(6011))-?\d{4}-?\d{4}-?\d{4}|3[4,7]\d{13}$" "4111-
111-111-111" | |
1557 "^((4\d{3})|(5[1-5]\d{2})|(6011))-?\d{4}-?\d{4}-?\d{4}|3[4,7]\d{13}$" "3411-
1111-1111-111" | |
1558 "^((4\d{3})|(5[1-5]\d{2})|(6011))-?\d{4}-?\d{4}-?\d{4}|3[4,7]\d{13}$" "Visa" | |
1559 "^[A-Z0-9]{8}-[A-Z0-9]{4}-[A-Z0-9]{4}-[A-Z0-9]{4}-[A-Z0-9]{12}$" G "<0>4D28C5A
D-6482-41CD-B84E-4573F384BB5C</0>" | |
1560 "^[A-Z0-9]{8}-[A-Z0-9]{4}-[A-Z0-9]{4}-[A-Z0-9]{4}-[A-Z0-9]{12}$" G "<0>B1E1282
C-A35C-4D5A-BF8B-7A3A51D9E388</0>" | |
1561 "^[A-Z0-9]{8}-[A-Z0-9]{4}-[A-Z0-9]{4}-[A-Z0-9]{4}-[A-Z0-9]{12}$" G "91036A4A-A
0F4-43F0-8CD" | |
1562 "^[A-Z0-9]{8}-[A-Z0-9]{4}-[A-Z0-9]{4}-[A-Z0-9]{4}-[A-Z0-9]{12}$" "{B1E1282C-
A35C-4D3A-BF8B-7A3A51D9E388}" | |
1563 "^[A-Z0-9]{8}-[A-Z0-9]{4}-[A-Z0-9]{4}-[A-Z0-9]{4}-[A-Z0-9]{12}$" "AAAAAAAAAA
AAAAAAA" | |
1564 "^[A-Z0-9]{8}-[A-Z0-9]{4}-[A-Z0-9]{4}-[A-Z0-9]{4}-[A-Z0-9]{12}$" "B;E1282C-A
35C-4D3A-BF8B-7A3A51D9E38" | |
1565 "(^(4|5)\d{3}-?\d{4}-?\d{4}-?\d{4}|(4|5)\d{15})|(^(6011)-?\d{4}-?\d{4}-?\d{4}|(6
011)-?\d{12})|(^((3\d{3}))-\d{6}-\d{5}|^((3\d{14})))" G "<0>4111-1234-1234-123
4</0>" | |
1566 "(^(4|5)\d{3}-?\d{4}-?\d{4}-?\d{4}|(4|5)\d{15})|(^(6011)-?\d{4}-?\d{4}-?\d{4}|(6
011)-?\d{12})|(^((3\d{3}))-\d{6}-\d{5}|^((3\d{14})))" G "<0>6011123412341234</
0>" | |
1567 "(^(4|5)\d{3}-?\d{4}-?\d{4}-?\d{4}|(4|5)\d{15})|(^(6011)-?\d{4}-?\d{4}-?\d{4}|(6
011)-?\d{12})|(^((3\d{3}))-\d{6}-\d{5}|^((3\d{14})))" G "<0>3711-123456-12345<
/0>" | |
1568 "(^(4|5)\d{3}-?\d{4}-?\d{4}-?\d{4}|(4|5)\d{15})|(^(6011)-?\d{4}-?\d{4}-?\d{4}|(6
011)-?\d{12})|(^((3\d{3}))-\d{6}-\d{5}|^((3\d{14})))" "1234567890123456" | |
1569 "(^(4|5)\d{3}-?\d{4}-?\d{4}-?\d{4}|(4|5)\d{15})|(^(6011)-?\d{4}-?\d{4}-?\d{4}|(6
011)-?\d{12})|(^((3\d{3}))-\d{6}-\d{5}|^((3\d{14})))" "4111-123-1234-1234" | |
1570 "(^(4|5)\d{3}-?\d{4}-?\d{4}-?\d{4}|(4|5)\d{15})|(^(6011)-?\d{4}-?\d{4}-?\d{4}|(6
011)-?\d{12})|(^((3\d{3}))-\d{6}-\d{5}|^((3\d{14})))" "412-1234-1234-1234" | |
1571 #'\[link="(?<link>((.|\n)*?))"\](?<text>((.|\n)*?))\[\/link\]' G '<0>[link="ht
tp://www.yahoo.com"]Yahoo[/link]</0>' #named capture | |
1572 #'\[link="(?<link>((.|\n)*?))"\](?<text>((.|\n)*?))\[\/link\]' "[link]http:/
/www.yahoo.com[/link]" #named capture | |
1573 #'\[link="(?<link>((.|\n)*?))"\](?<text>((.|\n)*?))\[\/link\]' "[link=http:/
/www.yahoo.com]Yahoo[/link]" #named capture | |
1574 "^[a-zA-Z0-9]+$" G "<0>10a</0>" | |
1575 "^[a-zA-Z0-9]+$" G "<0>ABC</0>" | |
1576 "^[a-zA-Z0-9]+$" G "<0>A3fg</0>" | |
1577 "^[a-zA-Z0-9]+$" "45.3" | |
1578 "^[a-zA-Z0-9]+$" "this or that" | |
1579 "^[a-zA-Z0-9]+$" "$23" | |
1580 "((\(\d{3}\) ?)|(\d{3}-))?\d{3}-\d{4}" G "<0>(123) 456-7890</0>" | |
1581 "((\(\d{3}\) ?)|(\d{3}-))?\d{3}-\d{4}" G "<0>123-456-7890</0>" | |
1582 "((\(\d{3}\) ?)|(\d{3}-))?\d{3}-\d{4}" "1234567890" | |
1583 "^[a-zA-Z]\w{3,14}$" G "<0>abcd</0>" | |
1584 "^[a-zA-Z]\w{3,14}$" G "<0>aBc45DSD_sdf</0>" | |
1585 "^[a-zA-Z]\w{3,14}$" G "<0>password</0>" | |
1586 "^[a-zA-Z]\w{3,14}$" "afv" | |
1587 "^[a-zA-Z]\w{3,14}$" "1234" | |
1588 "^[a-zA-Z]\w{3,14}$" "reallylongpassword" | |
1589 "^[A-Z]{1,2}[1-9][0-9]?[A-Z]? [0-9][A-Z]{2,}|GIR 0AA$" G "<0>G1 1AA </0>" | |
1590 "^[A-Z]{1,2}[1-9][0-9]?[A-Z]? [0-9][A-Z]{2,}|GIR 0AA$" G "<0>GIR 0AA</0>" | |
1591 "^[A-Z]{1,2}[1-9][0-9]?[A-Z]? [0-9][A-Z]{2,}|GIR 0AA$" G "<0>SW1 1ZZ</0>" | |
1592 "^[A-Z]{1,2}[1-9][0-9]?[A-Z]? [0-9][A-Z]{2,}|GIR 0AA$" "BT01 3RT" | |
1593 "^[A-Z]{1,2}[1-9][0-9]?[A-Z]? [0-9][A-Z]{2,}|GIR 0AA$" "G111 1AA" | |
1594 "^0[23489]{1}(\-)?[^0\D]{1}\d{6}$" G "<0>03-6106666</0>" | |
1595 "^0[23489]{1}(\-)?[^0\D]{1}\d{6}$" G "<0>036106666</0>" | |
1596 "^0[23489]{1}(\-)?[^0\D]{1}\d{6}$" G "<0>02-5523344</0>" | |
1597 "^0[23489]{1}(\-)?[^0\D]{1}\d{6}$" "00-6106666" | |
1598 "^0[23489]{1}(\-)?[^0\D]{1}\d{6}$" "03-0106666" | |
1599 "^0[23489]{1}(\-)?[^0\D]{1}\d{6}$" "02-55812346" | |
1600 "^0(5[012345678]|6[47]){1}(\-)?[^0\D]{1}\d{5}$" G "<0>050-346634</0>" | |
1601 "^0(5[012345678]|6[47]){1}(\-)?[^0\D]{1}\d{5}$" G "<0>058633633</0>" | |
1602 "^0(5[012345678]|6[47]){1}(\-)?[^0\D]{1}\d{5}$" G "<0>064-228226</0>" | |
1603 "^0(5[012345678]|6[47]){1}(\-)?[^0\D]{1}\d{5}$" "059-336622" | |
1604 "^0(5[012345678]|6[47]){1}(\-)?[^0\D]{1}\d{5}$" "064-022663" | |
1605 "^0(5[012345678]|6[47]){1}(\-)?[^0\D]{1}\d{5}$" "0545454545" | |
1606 "^([A-Z]{1,2}[0-9]{1,2}|[A-Z]{3}|[A-Z]{1,2}[0-9][A-Z])( |-)[0-9][A-Z]{2}" G "<
0>AA11 1AA</0>" | |
1607 "^([A-Z]{1,2}[0-9]{1,2}|[A-Z]{3}|[A-Z]{1,2}[0-9][A-Z])( |-)[0-9][A-Z]{2}" G "<
0>AA1A 1AA</0>" | |
1608 "^([A-Z]{1,2}[0-9]{1,2}|[A-Z]{3}|[A-Z]{1,2}[0-9][A-Z])( |-)[0-9][A-Z]{2}" G "<
0>A11-1AA</0>" | |
1609 "^([A-Z]{1,2}[0-9]{1,2}|[A-Z]{3}|[A-Z]{1,2}[0-9][A-Z])( |-)[0-9][A-Z]{2}" "1
11 AAA" | |
1610 "^([A-Z]{1,2}[0-9]{1,2}|[A-Z]{3}|[A-Z]{1,2}[0-9][A-Z])( |-)[0-9][A-Z]{2}" "1
AAA 1AA" | |
1611 "^([A-Z]{1,2}[0-9]{1,2}|[A-Z]{3}|[A-Z]{1,2}[0-9][A-Z])( |-)[0-9][A-Z]{2}" "A
1AA 1AA" | |
1612 "@{2}((\S)+)@{2}" G "<0>@@test@@</0>" | |
1613 "@{2}((\S)+)@{2}" G "<0>@@name@@</0>" | |
1614 "@{2}((\S)+)@{2}" G "<0>@@2342@@</0>" | |
1615 "@{2}((\S)+)@{2}" "@test@" | |
1616 "@{2}((\S)+)@{2}" "@@na me@@" | |
1617 "@{2}((\S)+)@{2}" "@@ name@@" | |
1618 "([0-1][0-9]|2[0-3]):[0-5][0-9]" G "<0>00:00</0>" | |
1619 "([0-1][0-9]|2[0-3]):[0-5][0-9]" G "<0>13:59</0>" | |
1620 "([0-1][0-9]|2[0-3]):[0-5][0-9]" G "<0>23:59</0>" | |
1621 "([0-1][0-9]|2[0-3]):[0-5][0-9]" "24:00" | |
1622 "([0-1][0-9]|2[0-3]):[0-5][0-9]" "23:60" | |
1623 "^[+-]?([0-9]*\.?[0-9]+|[0-9]+\.?[0-9]*)([eE][+-]?[0-9]+)?$" G "<0>23</0>" | |
1624 "^[+-]?([0-9]*\.?[0-9]+|[0-9]+\.?[0-9]*)([eE][+-]?[0-9]+)?$" G "<0>-17.e23</0>
" | |
1625 "^[+-]?([0-9]*\.?[0-9]+|[0-9]+\.?[0-9]*)([eE][+-]?[0-9]+)?$" G "<0>+.23e+2</0>
" | |
1626 "^[+-]?([0-9]*\.?[0-9]+|[0-9]+\.?[0-9]*)([eE][+-]?[0-9]+)?$" "+.e2" | |
1627 "^[+-]?([0-9]*\.?[0-9]+|[0-9]+\.?[0-9]*)([eE][+-]?[0-9]+)?$" "23.17.5" | |
1628 "^[+-]?([0-9]*\.?[0-9]+|[0-9]+\.?[0-9]*)([eE][+-]?[0-9]+)?$" "10e2.0" | |
1629 "^([1-zA-Z0-1@.\s ]{1,255})$" G "<0>email@email.com</0>" | |
1630 "^([1-zA-Z0-1@.\s ]{1,255})$" G "<0>My Name</0>" | |
1631 "^([1-zA-Z0-1@.\s ]{1,255})$" G "<0>asdf12df</0>" | |
1632 "^([1-zA-Z0-1@.\s ]{1,255})$" "‘,\*&$<>" | |
1633 "^([1-zA-Z0-1@.\s ]{1,255})$" "1001' string" | |
1634 "^((0[1-9])|(1[0-2]))\/(\d{4})$" G "<0>12/2002</0>" | |
1635 "^((0[1-9])|(1[0-2]))\/(\d{4})$" G "<0>11/1900</0>" | |
1636 "^((0[1-9])|(1[0-2]))\/(\d{4})$" G "<0>02/1977</0>" | |
1637 "^((0[1-9])|(1[0-2]))\/(\d{4})$" "1/1977" | |
1638 "^((0[1-9])|(1[0-2]))\/(\d{4})$" "00/000" | |
1639 "^((0[1-9])|(1[0-2]))\/(\d{4})$" "15/2002" | |
1640 "^\(\d{1,2}(\s\d{1,2}){1,2}\)\s(\d{1,2}(\s\d{1,2}){1,2})((-(\d{1,4})){0,1})$"
G "<0>(0 34 56) 34 56 67</0>" | |
1641 "^\(\d{1,2}(\s\d{1,2}){1,2}\)\s(\d{1,2}(\s\d{1,2}){1,2})((-(\d{1,4})){0,1})$"
G "<0>(03 45) 5 67 67</0>" | |
1642 "^\(\d{1,2}(\s\d{1,2}){1,2}\)\s(\d{1,2}(\s\d{1,2}){1,2})((-(\d{1,4})){0,1})$"
G "<0>(0 45) 2 33 45-45</0>" | |
1643 "^\(\d{1,2}(\s\d{1,2}){1,2}\)\s(\d{1,2}(\s\d{1,2}){1,2})((-(\d{1,4})){0,1})$"
"(2345) 34 34" | |
1644 "^\(\d{1,2}(\s\d{1,2}){1,2}\)\s(\d{1,2}(\s\d{1,2}){1,2})((-(\d{1,4})){0,1})$"
"(0 56) 456 456" | |
1645 "^\(\d{1,2}(\s\d{1,2}){1,2}\)\s(\d{1,2}(\s\d{1,2}){1,2})((-(\d{1,4})){0,1})$"
"(3 45) 2 34-45678" | |
1646 "(?:\d|I{1,3})?\s?\w{2,}\.?\s*\d{1,}\:\d{1,}-?,?\d{0,2}(?:,\d{0,2}){0,2}" G "<
0>Genesis 3:3-4,6</0>" | |
1647 "(?:\d|I{1,3})?\s?\w{2,}\.?\s*\d{1,}\:\d{1,}-?,?\d{0,2}(?:,\d{0,2}){0,2}" G "<
0>II Sam 2:11,2</0>" | |
1648 "(?:\d|I{1,3})?\s?\w{2,}\.?\s*\d{1,}\:\d{1,}-?,?\d{0,2}(?:,\d{0,2}){0,2}" G "<
0>2 Tim 3:16</0>" | |
1649 "(?:\d|I{1,3})?\s?\w{2,}\.?\s*\d{1,}\:\d{1,}-?,?\d{0,2}(?:,\d{0,2}){0,2}" "G
enesis chap 3, verse 3" | |
1650 "(?:\d|I{1,3})?\s?\w{2,}\.?\s*\d{1,}\:\d{1,}-?,?\d{0,2}(?:,\d{0,2}){0,2}" "2
nd Samuel 2" | |
1651 "(\[[Ii][Mm][Gg]\])(\S+?)(\[\/[Ii][Mm][Gg]\])" G "<0>[IMG]http://bleh.jpg[/IMG
]</0>" | |
1652 "(\[[Ii][Mm][Gg]\])(\S+?)(\[\/[Ii][Mm][Gg]\])" G "<0>[ImG]bleh[/imG]</0>" | |
1653 "(\[[Ii][Mm][Gg]\])(\S+?)(\[\/[Ii][Mm][Gg]\])" G "<0>[img]ftp://login:pass@ble
h.gif[/img]</0>" | |
1654 "(\[[Ii][Mm][Gg]\])(\S+?)(\[\/[Ii][Mm][Gg]\])" '<img src="bleh.jpg">' | |
1655 "^([0-9]{1,2})[./-]+([0-9]{1,2})[./-]+([0-9]{2}|[0-9]{4})$" G "<0>10/03/1979</
0>" | |
1656 "^([0-9]{1,2})[./-]+([0-9]{1,2})[./-]+([0-9]{2}|[0-9]{4})$" G "<0>1-1-02</0>" | |
1657 "^([0-9]{1,2})[./-]+([0-9]{1,2})[./-]+([0-9]{2}|[0-9]{4})$" G "<0>01.1.2003</0
>" | |
1658 "^([0-9]{1,2})[./-]+([0-9]{1,2})[./-]+([0-9]{2}|[0-9]{4})$" "10/03/197" | |
1659 "^([0-9]{1,2})[./-]+([0-9]{1,2})[./-]+([0-9]{2}|[0-9]{4})$" "01-02-003" | |
1660 "^([0-9]{1,2})[./-]+([0-9]{1,2})[./-]+([0-9]{2}|[0-9]{4})$" "01 02 03" | |
1661 #"^(?(^00000(|-0000))|(\d{5}(|-\d{4})))$" G "<0>12345</0>" # No Condit
ionals? | |
1662 #"^(?(^00000(|-0000))|(\d{5}(|-\d{4})))$" G "<0>12345-6789</0>" # No Condit
ionals? | |
1663 #"^(?(^00000(|-0000))|(\d{5}(|-\d{4})))$" "00000" # No Condit
ionals? | |
1664 #"^(?(^00000(|-0000))|(\d{5}(|-\d{4})))$" "00000-0000" # No Condit
ionals? | |
1665 #"^(?(^00000(|-0000))|(\d{5}(|-\d{4})))$" "a4650-465s" # No Condit
ionals? | |
1666 "^((0?[1-9])|((1|2)[0-9])|30|31)$" G "<0>01</0>" | |
1667 "^((0?[1-9])|((1|2)[0-9])|30|31)$" G "<0>12</0>" | |
1668 "^((0?[1-9])|((1|2)[0-9])|30|31)$" G "<0>31</0>" | |
1669 "^((0?[1-9])|((1|2)[0-9])|30|31)$" "123" | |
1670 "^((0?[1-9])|((1|2)[0-9])|30|31)$" "32" | |
1671 "^((0?[1-9])|((1|2)[0-9])|30|31)$" "abc" | |
1672 "^([0-1]([\s\-./\\])?)?(\(?[2-9]\d{2}\)?|[2-9]\d{3})([\s\-./\\])?(\d{3}([\s\-./\
\])?\d{4}|[a-zA-Z0-9]{7})$" G "<0>1.222.333.1234</0>" | |
1673 "^([0-1]([\s\-./\\])?)?(\(?[2-9]\d{2}\)?|[2-9]\d{3})([\s\-./\\])?(\d{3}([\s\-./\
\])?\d{4}|[a-zA-Z0-9]{7})$" G "<0>1-223-123-1232</0>" | |
1674 "^([0-1]([\s\-./\\])?)?(\(?[2-9]\d{2}\)?|[2-9]\d{3})([\s\-./\\])?(\d{3}([\s\-./\
\])?\d{4}|[a-zA-Z0-9]{7})$" G "<0>12223334444</0>" | |
1675 "^([0-1]([\s\-./\\])?)?(\(?[2-9]\d{2}\)?|[2-9]\d{3})([\s\-./\\])?(\d{3}([\s\-./\
\])?\d{4}|[a-zA-Z0-9]{7})$" "1.1.123123.123" | |
1676 "^([0-1]([\s\-./\\])?)?(\(?[2-9]\d{2}\)?|[2-9]\d{3})([\s\-./\\])?(\d{3}([\s\-./\
\])?\d{4}|[a-zA-Z0-9]{7})$" "12-1322-112-31" | |
1677 "^([0-1]([\s\-./\\])?)?(\(?[2-9]\d{2}\)?|[2-9]\d{3})([\s\-./\\])?(\d{3}([\s\-./\
\])?\d{4}|[a-zA-Z0-9]{7})$" "11231321131" | |
1678 "^([A-PR-UWYZ0-9][A-HK-Y0-9][AEHMNPRTVXY0-9]?[ABEHMNPRVWXY0-9]? {1,2}[0-9][ABD-H
JLN-UW-Z]{2}|GIR 0AA)$" G "<0>DN3 6GB</0>" | |
1679 "^([A-PR-UWYZ0-9][A-HK-Y0-9][AEHMNPRTVXY0-9]?[ABEHMNPRVWXY0-9]? {1,2}[0-9][ABD-H
JLN-UW-Z]{2}|GIR 0AA)$" G "<0>SW42 4RG</0>" | |
1680 "^([A-PR-UWYZ0-9][A-HK-Y0-9][AEHMNPRTVXY0-9]?[ABEHMNPRVWXY0-9]? {1,2}[0-9][ABD-H
JLN-UW-Z]{2}|GIR 0AA)$" G "<0>GIR 0AA</0>" | |
1681 "^([A-PR-UWYZ0-9][A-HK-Y0-9][AEHMNPRTVXY0-9]?[ABEHMNPRVWXY0-9]? {1,2}[0-9][ABD-H
JLN-UW-Z]{2}|GIR 0AA)$" "SEW4 5TY" | |
1682 "^([A-PR-UWYZ0-9][A-HK-Y0-9][AEHMNPRTVXY0-9]?[ABEHMNPRVWXY0-9]? {1,2}[0-9][ABD-H
JLN-UW-Z]{2}|GIR 0AA)$" "AA2C 4FG" | |
1683 "^([A-PR-UWYZ0-9][A-HK-Y0-9][AEHMNPRTVXY0-9]?[ABEHMNPRVWXY0-9]? {1,2}[0-9][ABD-H
JLN-UW-Z]{2}|GIR 0AA)$" "AA2 4CV" | |
1684 "^(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{4,8}$" G "<0>asD1</0>" | |
1685 "^(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{4,8}$" G "<0>asDF1234</0>" | |
1686 "^(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{4,8}$" G "<0>ASPgo123</0>" | |
1687 "^(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{4,8}$" "asdf" | |
1688 "^(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{4,8}$" "1234" | |
1689 "^(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{4,8}$" "ASDF12345" | |
1690 "^([0-1]([\s\-./\\])?)?(\(?[2-9]\d{2}\)?|[2-9]\d{3})([\s\-./\\])?([0-9]{3}([\s\-
./\\])?[0-9]{4}|[a-zA-Z0-9]{7}|([0-9]{3}[-][a-zA-Z0-9]{4}))" G "<0>1.222.333.1
234</0>" | |
1691 "^([0-1]([\s\-./\\])?)?(\(?[2-9]\d{2}\)?|[2-9]\d{3})([\s\-./\\])?([0-9]{3}([\s\-
./\\])?[0-9]{4}|[a-zA-Z0-9]{7}|([0-9]{3}[-][a-zA-Z0-9]{4}))" G "<0>1-223-123-1
232</0>" | |
1692 "^([0-1]([\s\-./\\])?)?(\(?[2-9]\d{2}\)?|[2-9]\d{3})([\s\-./\\])?([0-9]{3}([\s\-
./\\])?[0-9]{4}|[a-zA-Z0-9]{7}|([0-9]{3}[-][a-zA-Z0-9]{4}))" G "<0>1-888-425-D
ELL</0>" | |
1693 "^([0-1]([\s\-./\\])?)?(\(?[2-9]\d{2}\)?|[2-9]\d{3})([\s\-./\\])?([0-9]{3}([\s\-
./\\])?[0-9]{4}|[a-zA-Z0-9]{7}|([0-9]{3}[-][a-zA-Z0-9]{4}))" "1.1.123123.123
" | |
1694 "^([0-1]([\s\-./\\])?)?(\(?[2-9]\d{2}\)?|[2-9]\d{3})([\s\-./\\])?([0-9]{3}([\s\-
./\\])?[0-9]{4}|[a-zA-Z0-9]{7}|([0-9]{3}[-][a-zA-Z0-9]{4}))" "12-1322-112-31
" | |
1695 "^([0-1]([\s\-./\\])?)?(\(?[2-9]\d{2}\)?|[2-9]\d{3})([\s\-./\\])?([0-9]{3}([\s\-
./\\])?[0-9]{4}|[a-zA-Z0-9]{7}|([0-9]{3}[-][a-zA-Z0-9]{4}))" "1-800-CALL-DEL
" | |
1696 "^(([0]?[1-9]|1[0-2])(:)([0-5][0-9]))$" G "<0>09:00</0>" | |
1697 "^(([0]?[1-9]|1[0-2])(:)([0-5][0-9]))$" G "<0>9:00</0>" | |
1698 "^(([0]?[1-9]|1[0-2])(:)([0-5][0-9]))$" G "<0>11:35</0>" | |
1699 "^(([0]?[1-9]|1[0-2])(:)([0-5][0-9]))$" "13:00" | |
1700 "^(([0]?[1-9]|1[0-2])(:)([0-5][0-9]))$" "9.00" | |
1701 "^(([0]?[1-9]|1[0-2])(:)([0-5][0-9]))$" "6:60" | |
1702 "^([1-9]|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])$" G "<0>1</0>" | |
1703 "^([1-9]|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])$" G "<0>108</0>" | |
1704 "^([1-9]|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])$" G "<0>255</0>" | |
1705 "^([1-9]|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])$" "01" | |
1706 "^([1-9]|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])$" "256" | |
1707 "^((((0[13578])|([13578])|(1[02]))[\/](([1-9])|([0-2][0-9])|(3[01])))|(((0[469])
|([469])|(11))[\/](([1-9])|([0-2][0-9])|(30)))|((2|02)[\/](([1-9])|([0-2][0-9]))
))[\/]\d{4}$|^\d{4}$" G "<0>01/01/2001</0>" | |
1708 "^((((0[13578])|([13578])|(1[02]))[\/](([1-9])|([0-2][0-9])|(3[01])))|(((0[469])
|([469])|(11))[\/](([1-9])|([0-2][0-9])|(30)))|((2|02)[\/](([1-9])|([0-2][0-9]))
))[\/]\d{4}$|^\d{4}$" G "<0>1/01/2001</0>" | |
1709 "^((((0[13578])|([13578])|(1[02]))[\/](([1-9])|([0-2][0-9])|(3[01])))|(((0[469])
|([469])|(11))[\/](([1-9])|([0-2][0-9])|(30)))|((2|02)[\/](([1-9])|([0-2][0-9]))
))[\/]\d{4}$|^\d{4}$" G "<0>2002</0>" | |
1710 "^((((0[13578])|([13578])|(1[02]))[\/](([1-9])|([0-2][0-9])|(3[01])))|(((0[469])
|([469])|(11))[\/](([1-9])|([0-2][0-9])|(30)))|((2|02)[\/](([1-9])|([0-2][0-9]))
))[\/]\d{4}$|^\d{4}$" "2/30/2002" | |
1711 "^((((0[13578])|([13578])|(1[02]))[\/](([1-9])|([0-2][0-9])|(3[01])))|(((0[469])
|([469])|(11))[\/](([1-9])|([0-2][0-9])|(30)))|((2|02)[\/](([1-9])|([0-2][0-9]))
))[\/]\d{4}$|^\d{4}$" "13/23/2002" | |
1712 "^((((0[13578])|([13578])|(1[02]))[\/](([1-9])|([0-2][0-9])|(3[01])))|(((0[469])
|([469])|(11))[\/](([1-9])|([0-2][0-9])|(30)))|((2|02)[\/](([1-9])|([0-2][0-9]))
))[\/]\d{4}$|^\d{4}$" "12345" | |
1713 "^[A-Za-z]{2}[0-9]{6}[A-Za-z]{1}$" G "<0>SP939393H</0>" | |
1714 "^[A-Za-z]{2}[0-9]{6}[A-Za-z]{1}$" G "<0>PX123456D</0>" | |
1715 "^[A-Za-z]{2}[0-9]{6}[A-Za-z]{1}$" G "<0>SW355667G</0>" | |
1716 "^[A-Za-z]{2}[0-9]{6}[A-Za-z]{1}$" "12SP9393H" | |
1717 "^[A-Za-z]{2}[0-9]{6}[A-Za-z]{1}$" "S3P93930D" | |
1718 "^[A-Za-z]{2}[0-9]{6}[A-Za-z]{1}$" "11223344SP00ddSS" | |
1719 "(^0[78][2347][0-9]{7})" G "<0>0834128458</0>" | |
1720 "(^0[78][2347][0-9]{7})" G "<0>0749526308</0>" | |
1721 "(^0[78][2347][0-9]{7})" "0861212308" | |
1722 "(^0[78][2347][0-9]{7})" "0892549851" | |
1723 "^([A-HJ-TP-Z]{1}\d{4}[A-Z]{3}|[a-z]{1}\d{4}[a-hj-tp-z]{3})$" G "<0>C1406HHA</
0>" | |
1724 "^([A-HJ-TP-Z]{1}\d{4}[A-Z]{3}|[a-z]{1}\d{4}[a-hj-tp-z]{3})$" G "<0>A4126AAB</
0>" | |
1725 "^([A-HJ-TP-Z]{1}\d{4}[A-Z]{3}|[a-z]{1}\d{4}[a-hj-tp-z]{3})$" G "<0>c1406hha</
0>" | |
1726 "^([A-HJ-TP-Z]{1}\d{4}[A-Z]{3}|[a-z]{1}\d{4}[a-hj-tp-z]{3})$" "c1406HHA" | |
1727 "^([A-HJ-TP-Z]{1}\d{4}[A-Z]{3}|[a-z]{1}\d{4}[a-hj-tp-z]{3})$" "4126" | |
1728 "^([A-HJ-TP-Z]{1}\d{4}[A-Z]{3}|[a-z]{1}\d{4}[a-hj-tp-z]{3})$" "C1406hha" | |
1729 "^(((25[0-5]|2[0-4][0-9]|19[0-1]|19[3-9]|18[0-9]|17[0-1]|17[3-9]|1[0-6][0-9]|1[1
-9]|[2-9][0-9]|[0-9])\.(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9]))|(192\
.(25[0-5]|2[0-4][0-9]|16[0-7]|169|1[0-5][0-9]|1[7-9][0-9]|[1-9][0-9]|[0-9]))|(17
2\.(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|1[0-5]|3[2-9]|[4-9][0-9]|[0-9])))\.(25[0-5]|
2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9
][0-9]|[0-9])$" G "<0>66.129.71.120</0>" | |
1730 "^(((25[0-5]|2[0-4][0-9]|19[0-1]|19[3-9]|18[0-9]|17[0-1]|17[3-9]|1[0-6][0-9]|1[1
-9]|[2-9][0-9]|[0-9])\.(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9]))|(192\
.(25[0-5]|2[0-4][0-9]|16[0-7]|169|1[0-5][0-9]|1[7-9][0-9]|[1-9][0-9]|[0-9]))|(17
2\.(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|1[0-5]|3[2-9]|[4-9][0-9]|[0-9])))\.(25[0-5]|
2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9
][0-9]|[0-9])$" G "<0>207.46.230.218</0>" | |
1731 "^(((25[0-5]|2[0-4][0-9]|19[0-1]|19[3-9]|18[0-9]|17[0-1]|17[3-9]|1[0-6][0-9]|1[1
-9]|[2-9][0-9]|[0-9])\.(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9]))|(192\
.(25[0-5]|2[0-4][0-9]|16[0-7]|169|1[0-5][0-9]|1[7-9][0-9]|[1-9][0-9]|[0-9]))|(17
2\.(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|1[0-5]|3[2-9]|[4-9][0-9]|[0-9])))\.(25[0-5]|
2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9
][0-9]|[0-9])$" G "<0>64.58.76.225</0>" | |
1732 "^(((25[0-5]|2[0-4][0-9]|19[0-1]|19[3-9]|18[0-9]|17[0-1]|17[3-9]|1[0-6][0-9]|1[1
-9]|[2-9][0-9]|[0-9])\.(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9]))|(192\
.(25[0-5]|2[0-4][0-9]|16[0-7]|169|1[0-5][0-9]|1[7-9][0-9]|[1-9][0-9]|[0-9]))|(17
2\.(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|1[0-5]|3[2-9]|[4-9][0-9]|[0-9])))\.(25[0-5]|
2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9
][0-9]|[0-9])$" "10.0.5.4" | |
1733 "^(((25[0-5]|2[0-4][0-9]|19[0-1]|19[3-9]|18[0-9]|17[0-1]|17[3-9]|1[0-6][0-9]|1[1
-9]|[2-9][0-9]|[0-9])\.(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9]))|(192\
.(25[0-5]|2[0-4][0-9]|16[0-7]|169|1[0-5][0-9]|1[7-9][0-9]|[1-9][0-9]|[0-9]))|(17
2\.(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|1[0-5]|3[2-9]|[4-9][0-9]|[0-9])))\.(25[0-5]|
2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9
][0-9]|[0-9])$" "192.168.0.1" | |
1734 "^(((25[0-5]|2[0-4][0-9]|19[0-1]|19[3-9]|18[0-9]|17[0-1]|17[3-9]|1[0-6][0-9]|1[1
-9]|[2-9][0-9]|[0-9])\.(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9]))|(192\
.(25[0-5]|2[0-4][0-9]|16[0-7]|169|1[0-5][0-9]|1[7-9][0-9]|[1-9][0-9]|[0-9]))|(17
2\.(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|1[0-5]|3[2-9]|[4-9][0-9]|[0-9])))\.(25[0-5]|
2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9
][0-9]|[0-9])$" "my ip address" | |
1735 "^([\w\d\-\.]+)@{1}(([\w\d\-]{1,67})|([\w\d\-]+\.[\w\d\-]{1,67}))\.(([a-zA-Z\d]{
2,4})(\.[a-zA-Z\d]{2})?)$" G "<0>foo@foo.com</0>" | |
1736 "^([\w\d\-\.]+)@{1}(([\w\d\-]{1,67})|([\w\d\-]+\.[\w\d\-]{1,67}))\.(([a-zA-Z\d]{
2,4})(\.[a-zA-Z\d]{2})?)$" G "<0>foo@foo-foo.com.au</0>" | |
1737 "^([\w\d\-\.]+)@{1}(([\w\d\-]{1,67})|([\w\d\-]+\.[\w\d\-]{1,67}))\.(([a-zA-Z\d]{
2,4})(\.[a-zA-Z\d]{2})?)$" G "<0>foo@foo.foo.info</0>" | |
1738 "^([\w\d\-\.]+)@{1}(([\w\d\-]{1,67})|([\w\d\-]+\.[\w\d\-]{1,67}))\.(([a-zA-Z\d]{
2,4})(\.[a-zA-Z\d]{2})?)$" "foo@.com" | |
1739 "^([\w\d\-\.]+)@{1}(([\w\d\-]{1,67})|([\w\d\-]+\.[\w\d\-]{1,67}))\.(([a-zA-Z\d]{
2,4})(\.[a-zA-Z\d]{2})?)$" "foo@foo..com" | |
1740 "^([\w\d\-\.]+)@{1}(([\w\d\-]{1,67})|([\w\d\-]+\.[\w\d\-]{1,67}))\.(([a-zA-Z\d]{
2,4})(\.[a-zA-Z\d]{2})?)$" "foo@me@.com" | |
1741 "/\*[\d\D]*?\*/" G "<0>/* my comment */</0>" | |
1742 "/\*[\d\D]*?\*/" G "<0>/* my multiline comment */</0>" | |
1743 "/\*[\d\D]*?\*/" G "<0>/* my nested comment */</0>" | |
1744 "/\*[\d\D]*?\*/" "*/ anything here /*" | |
1745 "/\*[\d\D]*?\*/" "anything between 2 seperate comments" | |
1746 "/\*[\d\D]*?\*/" "\* *\" | |
1747 "/\*[\p{N}\P{N}]*?\*/" G "<0>/* my comment */</0>" | |
1748 "/\*[\p{N}\P{N}]*?\*/" G "<0>/* my multiline comment */</0>" | |
1749 "/\*[\p{N}\P{N}]*?\*/" G "<0>/* my nested comment */</0>" | |
1750 "/\*[\p{N}\P{N}]*?\*/" "*/ anything here /*" | |
1751 "/\*[\p{N}\P{N}]*?\*/" "anything between 2 seperate comments" | |
1752 "/\*[\p{N}\P{N}]*?\*/" "\* *\" | |
1753 "((0?[13578]|10|12)(-|\/)((0[0-9])|([12])([0-9]?)|(3[01]?))(-|\/)((\d{4})|(\d{2}
))|(0?[2469]|11)(-|\/)((0[0-9])|([12])([0-9]?)|(3[0]?))(-|\/)((\d{4}|\d{2})))"
G "<0>1/31/2002</0>" | |
1754 "((0?[13578]|10|12)(-|\/)((0[0-9])|([12])([0-9]?)|(3[01]?))(-|\/)((\d{4})|(\d{2}
))|(0?[2469]|11)(-|\/)((0[0-9])|([12])([0-9]?)|(3[0]?))(-|\/)((\d{4}|\d{2})))"
G "<0>04-30-02</0>" | |
1755 "((0?[13578]|10|12)(-|\/)((0[0-9])|([12])([0-9]?)|(3[01]?))(-|\/)((\d{4})|(\d{2}
))|(0?[2469]|11)(-|\/)((0[0-9])|([12])([0-9]?)|(3[0]?))(-|\/)((\d{4}|\d{2})))"
G "<0>12-01/2002</0>" | |
1756 "((0?[13578]|10|12)(-|\/)((0[0-9])|([12])([0-9]?)|(3[01]?))(-|\/)((\d{4})|(\d{2}
))|(0?[2469]|11)(-|\/)((0[0-9])|([12])([0-9]?)|(3[0]?))(-|\/)((\d{4}|\d{2})))"
"2/31/2002" | |
1757 "((0?[13578]|10|12)(-|\/)((0[0-9])|([12])([0-9]?)|(3[01]?))(-|\/)((\d{4})|(\d{2}
))|(0?[2469]|11)(-|\/)((0[0-9])|([12])([0-9]?)|(3[0]?))(-|\/)((\d{4}|\d{2})))"
"13/0/02" | |
1758 "((0?[13578]|10|12)(-|\/)((0[0-9])|([12])([0-9]?)|(3[01]?))(-|\/)((\d{4})|(\d{2}
))|(0?[2469]|11)(-|\/)((0[0-9])|([12])([0-9]?)|(3[0]?))(-|\/)((\d{4}|\d{2})))"
"Jan 1, 2001" | |
1759 '^(([^<>;()\[\]\\.,;:@"]+(\.[^<>()\[\]\\.,;:@"]+)*)|(".+"))@((([a-z]([-a-z0-9]*[
a-z0-9])?)|(#[0-9]+)|(\[((([01]?[0-9]{0,2})|(2(([0-4][0-9])|(5[0-5]))))\.){3}(([
01]?[0-9]{0,2})|(2(([0-4][0-9])|(5[0-5]))))\]))\.)*(([a-z]([-a-z0-9]*[a-z0-9])?)
|(#[0-9]+)|(\[((([01]?[0-9]{0,2})|(2(([0-4][0-9])|(5[0-5]))))\.){3}(([01]?[0-9]{
0,2})|(2(([0-4][0-9])|(5[0-5]))))\]))$' G "<0>blah@[10.0.0.1]</0>" | |
1760 '^(([^<>;()\[\]\\.,;:@"]+(\.[^<>()\[\]\\.,;:@"]+)*)|(".+"))@((([a-z]([-a-z0-9]*[
a-z0-9])?)|(#[0-9]+)|(\[((([01]?[0-9]{0,2})|(2(([0-4][0-9])|(5[0-5]))))\.){3}(([
01]?[0-9]{0,2})|(2(([0-4][0-9])|(5[0-5]))))\]))\.)*(([a-z]([-a-z0-9]*[a-z0-9])?)
|(#[0-9]+)|(\[((([01]?[0-9]{0,2})|(2(([0-4][0-9])|(5[0-5]))))\.){3}(([01]?[0-9]{
0,2})|(2(([0-4][0-9])|(5[0-5]))))\]))$' G "<0>a@b.c</0>" | |
1761 '^(([^<>;()\[\]\\.,;:@"]+(\.[^<>()\[\]\\.,;:@"]+)*)|(".+"))@((([a-z]([-a-z0-9]*[
a-z0-9])?)|(#[0-9]+)|(\[((([01]?[0-9]{0,2})|(2(([0-4][0-9])|(5[0-5]))))\.){3}(([
01]?[0-9]{0,2})|(2(([0-4][0-9])|(5[0-5]))))\]))\.)*(([a-z]([-a-z0-9]*[a-z0-9])?)
|(#[0-9]+)|(\[((([01]?[0-9]{0,2})|(2(([0-4][0-9])|(5[0-5]))))\.){3}(([01]?[0-9]{
0,2})|(2(([0-4][0-9])|(5[0-5]))))\]))$' "non@match@." | |
1762 "^\d{9}[\d|X]$" G "<0>1234123412</0>" | |
1763 "^\d{9}[\d|X]$" G "<0>123412341X</0>" | |
1764 "^\d{9}[\d|X]$" "not an isbn" | |
1765 "^\d{9}(\d|X)$" G "<0>1234123412</0>" | |
1766 "^\d{9}(\d|X)$" G "<0>123412341X</0>" | |
1767 "^\d{9}(\d|X)$" "not an isbn" | |
1768 "^(([1-9])|(0[1-9])|(1[0-2]))\/(([0-9])|([0-2][0-9])|(3[0-1]))\/(([0-9][0-9])|([
1-2][0,9][0-9][0-9]))$" G "<0>01/01/2001</0>" | |
1769 "^(([1-9])|(0[1-9])|(1[0-2]))\/(([0-9])|([0-2][0-9])|(3[0-1]))\/(([0-9][0-9])|([
1-2][0,9][0-9][0-9]))$" G "<0>1/1/1999</0>" | |
1770 "^(([1-9])|(0[1-9])|(1[0-2]))\/(([0-9])|([0-2][0-9])|(3[0-1]))\/(([0-9][0-9])|([
1-2][0,9][0-9][0-9]))$" G "<0>10/20/2080</0>" | |
1771 "^(([1-9])|(0[1-9])|(1[0-2]))\/(([0-9])|([0-2][0-9])|(3[0-1]))\/(([0-9][0-9])|([
1-2][0,9][0-9][0-9]))$" "13/01/2001" | |
1772 "^(([1-9])|(0[1-9])|(1[0-2]))\/(([0-9])|([0-2][0-9])|(3[0-1]))\/(([0-9][0-9])|([
1-2][0,9][0-9][0-9]))$" "1/1/1800" | |
1773 "^(([1-9])|(0[1-9])|(1[0-2]))\/(([0-9])|([0-2][0-9])|(3[0-1]))\/(([0-9][0-9])|([
1-2][0,9][0-9][0-9]))$" "10/32/2080" | |
1774 "^\d*\.?((25)|(50)|(5)|(75)|(0)|(00))?$" G "<0>0.25</0>" | |
1775 "^\d*\.?((25)|(50)|(5)|(75)|(0)|(00))?$" G "<0>.75</0>" | |
1776 "^\d*\.?((25)|(50)|(5)|(75)|(0)|(00))?$" G "<0>123.50</0>" | |
1777 "^\d*\.?((25)|(50)|(5)|(75)|(0)|(00))?$" ".77" | |
1778 "^\d*\.?((25)|(50)|(5)|(75)|(0)|(00))?$" "1.435" | |
1779 "^(s-|S-){0,1}[0-9]{3}\s?[0-9]{2}$" G "<0>12345</0>" | |
1780 "^(s-|S-){0,1}[0-9]{3}\s?[0-9]{2}$" G "<0>932 68</0>" | |
1781 "^(s-|S-){0,1}[0-9]{3}\s?[0-9]{2}$" G "<0>S-621 46</0>" | |
1782 "^(s-|S-){0,1}[0-9]{3}\s?[0-9]{2}$" "5367" | |
1783 "^(s-|S-){0,1}[0-9]{3}\s?[0-9]{2}$" "425611" | |
1784 "^(s-|S-){0,1}[0-9]{3}\s?[0-9]{2}$" "31 545" | |
1785 "^\d{5}(-\d{4})?$" G "<0>48222</0>" | |
1786 "^\d{5}(-\d{4})?$" G "<0>48222-1746</0>" | |
1787 "^\d{5}(-\d{4})?$" "4632" | |
1788 "^\d{5}(-\d{4})?$" "Blake" | |
1789 "^\d{5}(-\d{4})?$" "37333-32" | |
1790 '^(?!^(PRN|AUX|CLOCK\$|NUL|CON|COM\d|LPT\d|\..*)(\..+)?$)[^\x00-\x1f\\?*:\";|/]+
$' G "<0>test.txt</0>" | |
1791 '^(?!^(PRN|AUX|CLOCK\$|NUL|CON|COM\d|LPT\d|\..*)(\..+)?$)[^\x00-\x1f\\?*:\";|/]+
$' G "<0>test.jpg.txt</0>" | |
1792 '^(?!^(PRN|AUX|CLOCK\$|NUL|CON|COM\d|LPT\d|\..*)(\..+)?$)[^\x00-\x1f\\?*:\";|/]+
$' G "<0>a&b c.bmp</0>" | |
1793 '^(?!^(PRN|AUX|CLOCK\$|NUL|CON|COM\d|LPT\d|\..*)(\..+)?$)[^\x00-\x1f\\?*:\";|/]+
$' "CON" | |
1794 '^(?!^(PRN|AUX|CLOCK\$|NUL|CON|COM\d|LPT\d|\..*)(\..+)?$)[^\x00-\x1f\\?*:\";|/]+
$' ".pdf" | |
1795 '^(?!^(PRN|AUX|CLOCK\$|NUL|CON|COM\d|LPT\d|\..*)(\..+)?$)[^\x00-\x1f\\?*:\";|/]+
$' "test:2.pdf" | |
1796 "^(\d{1,3}'(\d{3}')*\d{3}(\.\d{1,3})?|\d{1,3}(\.\d{3})?)$" G "<0>1'235.140</0>
" | |
1797 "^(\d{1,3}'(\d{3}')*\d{3}(\.\d{1,3})?|\d{1,3}(\.\d{3})?)$" G "<0>1'222'333.120
</0>" | |
1798 "^(\d{1,3}'(\d{3}')*\d{3}(\.\d{1,3})?|\d{1,3}(\.\d{3})?)$" G "<0>456</0>" | |
1799 "^(\d{1,3}'(\d{3}')*\d{3}(\.\d{1,3})?|\d{1,3}(\.\d{3})?)$" "1234.500" | |
1800 "^(\d{1,3}'(\d{3}')*\d{3}(\.\d{1,3})?|\d{1,3}(\.\d{3})?)$" "78'45.123" | |
1801 "^(\d{1,3}'(\d{3}')*\d{3}(\.\d{1,3})?|\d{1,3}(\.\d{3})?)$" "123,0012" | |
1802 "^[a-zA-Z][0-9][a-zA-Z]\s?[0-9][a-zA-Z][0-9]$" G "<0>T2p 3c7</0>" | |
1803 "^[a-zA-Z][0-9][a-zA-Z]\s?[0-9][a-zA-Z][0-9]$" G "<0>T3P3c7</0>" | |
1804 "^[a-zA-Z][0-9][a-zA-Z]\s?[0-9][a-zA-Z][0-9]$" G "<0>T2P 3C7</0>" | |
1805 "^[a-zA-Z][0-9][a-zA-Z]\s?[0-9][a-zA-Z][0-9]$" "123456" | |
1806 "^[a-zA-Z][0-9][a-zA-Z]\s?[0-9][a-zA-Z][0-9]$" "3C7T2P" | |
1807 "^[a-zA-Z][0-9][a-zA-Z]\s?[0-9][a-zA-Z][0-9]$" "11T21RWW" | |
1808 "^\$[0-9]+(\.[0-9][0-9])?$" G "<0>$1.50</0>" | |
1809 "^\$[0-9]+(\.[0-9][0-9])?$" G "<0>$49</0>" | |
1810 "^\$[0-9]+(\.[0-9][0-9])?$" G "<0>$0.50</0>" | |
1811 "^\$[0-9]+(\.[0-9][0-9])?$" "1.5" | |
1812 "^\$[0-9]+(\.[0-9][0-9])?$" "$1.333" | |
1813 "^\$[0-9]+(\.[0-9][0-9])?$" "this $5.12 fails" | |
1814 "\b((25[0-5]|2[0-4]\d|[01]\d\d|\d?\d)\.){3}(25[0-5]|2[0-4]\d|[01]\d\d|\d?\d)\b"
G "<0>217.6.9.89</0>" | |
1815 "\b((25[0-5]|2[0-4]\d|[01]\d\d|\d?\d)\.){3}(25[0-5]|2[0-4]\d|[01]\d\d|\d?\d)\b"
G "<0>0.0.0.0</0>" | |
1816 "\b((25[0-5]|2[0-4]\d|[01]\d\d|\d?\d)\.){3}(25[0-5]|2[0-4]\d|[01]\d\d|\d?\d)\b"
G "<0>255.255.255.255</0>" | |
1817 "\b((25[0-5]|2[0-4]\d|[01]\d\d|\d?\d)\.){3}(25[0-5]|2[0-4]\d|[01]\d\d|\d?\d)\b"
"256.0.0.0" | |
1818 "\b((25[0-5]|2[0-4]\d|[01]\d\d|\d?\d)\.){3}(25[0-5]|2[0-4]\d|[01]\d\d|\d?\d)\b"
"0978.3.3.3" | |
1819 "\b((25[0-5]|2[0-4]\d|[01]\d\d|\d?\d)\.){3}(25[0-5]|2[0-4]\d|[01]\d\d|\d?\d)\b"
"65.4t.54.3" | |
1820 "((mailto\:|(news|(ht|f)tp(s?))\://){1}\S+)" G "<0>http://www.aspemporium.com<
/0>" | |
1821 "((mailto\:|(news|(ht|f)tp(s?))\://){1}\S+)" G "<0>mailto:dominionx@hotmail.co
m</0>" | |
1822 "((mailto\:|(news|(ht|f)tp(s?))\://){1}\S+)" G "<0>ftp://ftp.test.com</0>" | |
1823 "((mailto\:|(news|(ht|f)tp(s?))\://){1}\S+)" "www.aspemporium.com" | |
1824 "((mailto\:|(news|(ht|f)tp(s?))\://){1}\S+)" "dominionx@hotmail.com" | |
1825 "((mailto\:|(news|(ht|f)tp(s?))\://){1}\S+)" "bloggs" | |
1826 "\(([0-9]{2}|0{1}((x|[0-9]){2}[0-9]{2}))\)\s*[0-9]{3,4}[- ]*[0-9]{4}" G "<0>(1
2) 123 1234</0>" | |
1827 "\(([0-9]{2}|0{1}((x|[0-9]){2}[0-9]{2}))\)\s*[0-9]{3,4}[- ]*[0-9]{4}" G "<0>(0
1512) 123 1234</0>" | |
1828 "\(([0-9]{2}|0{1}((x|[0-9]){2}[0-9]{2}))\)\s*[0-9]{3,4}[- ]*[0-9]{4}" G "<0>(0
xx12) 1234 1234</0>" | |
1829 "\(([0-9]{2}|0{1}((x|[0-9]){2}[0-9]{2}))\)\s*[0-9]{3,4}[- ]*[0-9]{4}" "12 12
3 1234" | |
1830 "\(([0-9]{2}|0{1}((x|[0-9]){2}[0-9]{2}))\)\s*[0-9]{3,4}[- ]*[0-9]{4}" "(012)
123/1234" | |
1831 "\(([0-9]{2}|0{1}((x|[0-9]){2}[0-9]{2}))\)\s*[0-9]{3,4}[- ]*[0-9]{4}" "(012)
123 12345" | |
1832 "^\w+[\w-\.]*\@\w+((-\w+)|(\w*))\.[a-z]{2,3}$" G "<0>bob-smith@foo.com</0>" | |
1833 "^\w+[\w-\.]*\@\w+((-\w+)|(\w*))\.[a-z]{2,3}$" G "<0>bob.smith@foo.com</0>" | |
1834 "^\w+[\w-\.]*\@\w+((-\w+)|(\w*))\.[a-z]{2,3}$" G "<0>bob_smith@foo.com</0>" | |
1835 "^\w+[\w-\.]*\@\w+((-\w+)|(\w*))\.[a-z]{2,3}$" "-smith@foo.com" | |
1836 "^\w+[\w-\.]*\@\w+((-\w+)|(\w*))\.[a-z]{2,3}$" ".smith@foo.com" | |
1837 "^\w+[\w-\.]*\@\w+((-\w+)|(\w*))\.[a-z]{2,3}$" "smith@foo_com" | |
1838 "^(?=.*\d).{4,8}$" G "<0>1234</0>" | |
1839 "^(?=.*\d).{4,8}$" G "<0>asdf1234</0>" | |
1840 "^(?=.*\d).{4,8}$" G "<0>asp123</0>" | |
1841 "^(?=.*\d).{4,8}$" "asdf" | |
1842 "^(?=.*\d).{4,8}$" "asdf12345" | |
1843 "^(?=.*\d).{4,8}$" "password" | |
1844 "[^A-Za-z0-9_@\.]|@{2,}|\.{5,}" G "<0>user name</0>" | |
1845 "[^A-Za-z0-9_@\.]|@{2,}|\.{5,}" G "<0>user#name</0>" | |
1846 "[^A-Za-z0-9_@\.]|@{2,}|\.{5,}" G "<0>.....</0>" | |
1847 "[^A-Za-z0-9_@\.]|@{2,}|\.{5,}" "User_Name1" | |
1848 "[^A-Za-z0-9_@\.]|@{2,}|\.{5,}" "username@foo.com" | |
1849 "[^A-Za-z0-9_@\.]|@{2,}|\.{5,}" "user.name@mail.foo.com" | |
1850 "^100$|^[0-9]{1,2}$|^[0-9]{1,2}\,[0-9]{1,3}$" G "<0>12,654</0>" | |
1851 "^100$|^[0-9]{1,2}$|^[0-9]{1,2}\,[0-9]{1,3}$" G "<0>1,987</0>" | |
1852 "^100$|^[0-9]{1,2}$|^[0-9]{1,2}\,[0-9]{1,3}$" "128,2" | |
1853 "^100$|^[0-9]{1,2}$|^[0-9]{1,2}\,[0-9]{1,3}$" "12," | |
1854 "^(http|https|ftp)\://[a-zA-Z0-9\-\.]+\.[a-zA-Z]{2,3}(:[a-zA-Z0-9]*)?/?([a-zA-Z0
-9\-\._\?\,\'/\\\+\&%\$#\=~])*[^\.\,\)\(\s]$" G "<0>https://www.restrictd.com/
~myhome/</0>" | |
1855 "^(http|https|ftp)\://[a-zA-Z0-9\-\.]+\.[a-zA-Z]{2,3}(:[a-zA-Z0-9]*)?/?([a-zA-Z0
-9\-\._\?\,\'/\\\+\&%\$#\=~])*[^\.\,\)\(\s]$" "http://www.krumedia.com." | |
1856 "^(http|https|ftp)\://[a-zA-Z0-9\-\.]+\.[a-zA-Z]{2,3}(:[a-zA-Z0-9]*)?/?([a-zA-Z0
-9\-\._\?\,\'/\\\+\&%\$#\=~])*[^\.\,\)\(\s]$" "(http://www.krumedia.com)" | |
1857 "^(http|https|ftp)\://[a-zA-Z0-9\-\.]+\.[a-zA-Z]{2,3}(:[a-zA-Z0-9]*)?/?([a-zA-Z0
-9\-\._\?\,\'/\\\+\&%\$#\=~])*[^\.\,\)\(\s]$" "http://www.krumedia.com," | |
1858 "(\d{1,3},(\d{3},)*\d{3}(\.\d{1,3})?|\d{1,3}(\.\d{3})?)$" G "<0>2&651.50</0>" | |
1859 "(\d{1,3},(\d{3},)*\d{3}(\.\d{1,3})?|\d{1,3}(\.\d{3})?)$" G "<0>987.895</0>" | |
1860 "(\d{1,3},(\d{3},)*\d{3}(\.\d{1,3})?|\d{1,3}(\.\d{3})?)$" "25$%787*" | |
1861 "\$[0-9]?[0-9]?[0-9]?((\,[0-9][0-9][0-9])*)?(\.[0-9][0-9]?)?$" G "<0>$1,456,98
3.00</0>" | |
1862 "\$[0-9]?[0-9]?[0-9]?((\,[0-9][0-9][0-9])*)?(\.[0-9][0-9]?)?$" G "<0>$1,700.07
</0>" | |
1863 "\$[0-9]?[0-9]?[0-9]?((\,[0-9][0-9][0-9])*)?(\.[0-9][0-9]?)?$" G "<0>$68,944.2
3</0>" | |
1864 "\$[0-9]?[0-9]?[0-9]?((\,[0-9][0-9][0-9])*)?(\.[0-9][0-9]?)?$" "$20,86.93" | |
1865 "\$[0-9]?[0-9]?[0-9]?((\,[0-9][0-9][0-9])*)?(\.[0-9][0-9]?)?$" "$1098.84" | |
1866 "\$[0-9]?[0-9]?[0-9]?((\,[0-9][0-9][0-9])*)?(\.[0-9][0-9]?)?$" "$150." | |
1867 "\$[0-9]?[0-9]?[0-9]?((\,[0-9][0-9][0-9])*)?(\.[0-9][0-9])?$" G "<0>$28,009,98
7.88</0>" | |
1868 "\$[0-9]?[0-9]?[0-9]?((\,[0-9][0-9][0-9])*)?(\.[0-9][0-9])?$" G "<0>$23,099.05
</0>" | |
1869 "\$[0-9]?[0-9]?[0-9]?((\,[0-9][0-9][0-9])*)?(\.[0-9][0-9])?$" G "<0>$.88</0>" | |
1870 "\$[0-9]?[0-9]?[0-9]?((\,[0-9][0-9][0-9])*)?(\.[0-9][0-9])?$" "$234,5.99" | |
1871 "^((((31\/(0?[13578]|1[02]))|((29|30)\/(0?[1,3-9]|1[0-2])))\/(1[6-9]|[2-9]\d)?\d
{2})|(29\/0?2\/(((1[6-9]|[2-9]\d)?(0[48]|[2468][048]|[13579][26])|((16|[2468][04
8]|[3579][26])00))))|(0?[1-9]|1\d|2[0-8])\/((0?[1-9])|(1[0-2]))\/((1[6-9]|[2-9]\
d)?\d{2})) (20|21|22|23|[0-1]?\d):[0-5]?\d:[0-5]?\d$" G "<0>29/02/2004 20:15:2
7</0>" | |
1872 "^((((31\/(0?[13578]|1[02]))|((29|30)\/(0?[1,3-9]|1[0-2])))\/(1[6-9]|[2-9]\d)?\d
{2})|(29\/0?2\/(((1[6-9]|[2-9]\d)?(0[48]|[2468][048]|[13579][26])|((16|[2468][04
8]|[3579][26])00))))|(0?[1-9]|1\d|2[0-8])\/((0?[1-9])|(1[0-2]))\/((1[6-9]|[2-9]\
d)?\d{2})) (20|21|22|23|[0-1]?\d):[0-5]?\d:[0-5]?\d$" G "<0>29/2/04 8:9:5</0>" | |
1873 "^((((31\/(0?[13578]|1[02]))|((29|30)\/(0?[1,3-9]|1[0-2])))\/(1[6-9]|[2-9]\d)?\d
{2})|(29\/0?2\/(((1[6-9]|[2-9]\d)?(0[48]|[2468][048]|[13579][26])|((16|[2468][04
8]|[3579][26])00))))|(0?[1-9]|1\d|2[0-8])\/((0?[1-9])|(1[0-2]))\/((1[6-9]|[2-9]\
d)?\d{2})) (20|21|22|23|[0-1]?\d):[0-5]?\d:[0-5]?\d$" G "<0>31/3/2004 9:20:17<
/0>" | |
1874 "^((((31\/(0?[13578]|1[02]))|((29|30)\/(0?[1,3-9]|1[0-2])))\/(1[6-9]|[2-9]\d)?\d
{2})|(29\/0?2\/(((1[6-9]|[2-9]\d)?(0[48]|[2468][048]|[13579][26])|((16|[2468][04
8]|[3579][26])00))))|(0?[1-9]|1\d|2[0-8])\/((0?[1-9])|(1[0-2]))\/((1[6-9]|[2-9]\
d)?\d{2})) (20|21|22|23|[0-1]?\d):[0-5]?\d:[0-5]?\d$" "29/02/2003 20:15:15" | |
1875 "^((((31\/(0?[13578]|1[02]))|((29|30)\/(0?[1,3-9]|1[0-2])))\/(1[6-9]|[2-9]\d)?\d
{2})|(29\/0?2\/(((1[6-9]|[2-9]\d)?(0[48]|[2468][048]|[13579][26])|((16|[2468][04
8]|[3579][26])00))))|(0?[1-9]|1\d|2[0-8])\/((0?[1-9])|(1[0-2]))\/((1[6-9]|[2-9]\
d)?\d{2})) (20|21|22|23|[0-1]?\d):[0-5]?\d:[0-5]?\d$" "2/29/04 20:15:15" | |
1876 "^((((31\/(0?[13578]|1[02]))|((29|30)\/(0?[1,3-9]|1[0-2])))\/(1[6-9]|[2-9]\d)?\d
{2})|(29\/0?2\/(((1[6-9]|[2-9]\d)?(0[48]|[2468][048]|[13579][26])|((16|[2468][04
8]|[3579][26])00))))|(0?[1-9]|1\d|2[0-8])\/((0?[1-9])|(1[0-2]))\/((1[6-9]|[2-9]\
d)?\d{2})) (20|21|22|23|[0-1]?\d):[0-5]?\d:[0-5]?\d$" "31/3/4 9:20:17" | |
1877 "^([a-zA-Z0-9_\-\.]+)@([a-zA-Z0-9_\-\.]+)\.([a-zA-Z]{2,5})$" G "<0>somthing@so
meserver.com</0>" | |
1878 "^([a-zA-Z0-9_\-\.]+)@([a-zA-Z0-9_\-\.]+)\.([a-zA-Z]{2,5})$" G "<0>firstname.l
astname@mailserver.domain.com</0>" | |
1879 "^([a-zA-Z0-9_\-\.]+)@([a-zA-Z0-9_\-\.]+)\.([a-zA-Z]{2,5})$" G "<0>username-so
mething@some-server.nl</0>" | |
1880 "^([a-zA-Z0-9_\-\.]+)@([a-zA-Z0-9_\-\.]+)\.([a-zA-Z]{2,5})$" "username@somes
erver.domain.c" | |
1881 "^([a-zA-Z0-9_\-\.]+)@([a-zA-Z0-9_\-\.]+)\.([a-zA-Z]{2,5})$" "somename@serve
r.domain-com" | |
1882 "^([a-zA-Z0-9_\-\.]+)@([a-zA-Z0-9_\-\.]+)\.([a-zA-Z]{2,5})$" "someone@someth
ing.se_eo" | |
1883 "(^([0-9]|[0-1][0-9]|[2][0-3]):([0-5][0-9])(\s{0,1})(AM|PM|am|pm|aM|Am|pM|Pm{2,2
})$)|(^([0-9]|[1][0-9]|[2][0-3])(\s{0,1})(AM|PM|am|pm|aM|Am|pM|Pm{2,2})$)" G "
<0>8am</0>" | |
1884 "(^([0-9]|[0-1][0-9]|[2][0-3]):([0-5][0-9])(\s{0,1})(AM|PM|am|pm|aM|Am|pM|Pm{2,2
})$)|(^([0-9]|[1][0-9]|[2][0-3])(\s{0,1})(AM|PM|am|pm|aM|Am|pM|Pm{2,2})$)" G "
<0>8 am</0>" | |
1885 "(^([0-9]|[0-1][0-9]|[2][0-3]):([0-5][0-9])(\s{0,1})(AM|PM|am|pm|aM|Am|pM|Pm{2,2
})$)|(^([0-9]|[1][0-9]|[2][0-3])(\s{0,1})(AM|PM|am|pm|aM|Am|pM|Pm{2,2})$)" G "
<0>8:00 am</0>" | |
1886 "(^([0-9]|[0-1][0-9]|[2][0-3]):([0-5][0-9])(\s{0,1})(AM|PM|am|pm|aM|Am|pM|Pm{2,2
})$)|(^([0-9]|[1][0-9]|[2][0-3])(\s{0,1})(AM|PM|am|pm|aM|Am|pM|Pm{2,2})$)" "
8a" | |
1887 "(^([0-9]|[0-1][0-9]|[2][0-3]):([0-5][0-9])(\s{0,1})(AM|PM|am|pm|aM|Am|pM|Pm{2,2
})$)|(^([0-9]|[1][0-9]|[2][0-3])(\s{0,1})(AM|PM|am|pm|aM|Am|pM|Pm{2,2})$)" "
8 a" | |
1888 "(^([0-9]|[0-1][0-9]|[2][0-3]):([0-5][0-9])(\s{0,1})(AM|PM|am|pm|aM|Am|pM|Pm{2,2
})$)|(^([0-9]|[1][0-9]|[2][0-3])(\s{0,1})(AM|PM|am|pm|aM|Am|pM|Pm{2,2})$)" "
8:00 a" | |
1889 "^([0-9]{2})?(\([0-9]{2})\)([0-9]{3}|[0-9]{4})-[0-9]{4}$" G "<0>55(21)123-4567
</0>" | |
1890 "^([0-9]{2})?(\([0-9]{2})\)([0-9]{3}|[0-9]{4})-[0-9]{4}$" G "<0>(11)1234-5678<
/0>" | |
1891 "^([0-9]{2})?(\([0-9]{2})\)([0-9]{3}|[0-9]{4})-[0-9]{4}$" G "<0>55(71)4562-223
4</0>" | |
1892 "^([0-9]{2})?(\([0-9]{2})\)([0-9]{3}|[0-9]{4})-[0-9]{4}$" "3434-3432" | |
1893 "^([0-9]{2})?(\([0-9]{2})\)([0-9]{3}|[0-9]{4})-[0-9]{4}$" "4(23)232-3232" | |
1894 "^([0-9]{2})?(\([0-9]{2})\)([0-9]{3}|[0-9]{4})-[0-9]{4}$" "55(2)232-232" | |
1895 "^((([0]?[1-9]|1[0-2])(:|\.)[0-5][0-9]((:|\.)[0-5][0-9])?( )?(AM|am|aM|Am|PM|pm|
pM|Pm))|(([0]?[0-9]|1[0-9]|2[0-3])(:|\.)[0-5][0-9]((:|\.)[0-5][0-9])?))$" G "<
0>1:01 AM</0>" | |
1896 "^((([0]?[1-9]|1[0-2])(:|\.)[0-5][0-9]((:|\.)[0-5][0-9])?( )?(AM|am|aM|Am|PM|pm|
pM|Pm))|(([0]?[0-9]|1[0-9]|2[0-3])(:|\.)[0-5][0-9]((:|\.)[0-5][0-9])?))$" G "<
0>23:52:01</0>" | |
1897 "^((([0]?[1-9]|1[0-2])(:|\.)[0-5][0-9]((:|\.)[0-5][0-9])?( )?(AM|am|aM|Am|PM|pm|
pM|Pm))|(([0]?[0-9]|1[0-9]|2[0-3])(:|\.)[0-5][0-9]((:|\.)[0-5][0-9])?))$" G "<
0>03.24.36 AM</0>" | |
1898 "^((([0]?[1-9]|1[0-2])(:|\.)[0-5][0-9]((:|\.)[0-5][0-9])?( )?(AM|am|aM|Am|PM|pm|
pM|Pm))|(([0]?[0-9]|1[0-9]|2[0-3])(:|\.)[0-5][0-9]((:|\.)[0-5][0-9])?))$" "1
9:31 AM" | |
1899 "^((([0]?[1-9]|1[0-2])(:|\.)[0-5][0-9]((:|\.)[0-5][0-9])?( )?(AM|am|aM|Am|PM|pm|
pM|Pm))|(([0]?[0-9]|1[0-9]|2[0-3])(:|\.)[0-5][0-9]((:|\.)[0-5][0-9])?))$" "9
:9 PM" | |
1900 "^((([0]?[1-9]|1[0-2])(:|\.)[0-5][0-9]((:|\.)[0-5][0-9])?( )?(AM|am|aM|Am|PM|pm|
pM|Pm))|(([0]?[0-9]|1[0-9]|2[0-3])(:|\.)[0-5][0-9]((:|\.)[0-5][0-9])?))$" "2
5:60:61" | |
1901 "^\d{0,2}(\.\d{1,2})?$" G "<0>99.99</0>" | |
1902 "^\d{0,2}(\.\d{1,2})?$" G "<0>99</0>" | |
1903 "^\d{0,2}(\.\d{1,2})?$" G "<0>.99</0>" | |
1904 "^\d{0,2}(\.\d{1,2})?$" "999.999" | |
1905 "^\d{0,2}(\.\d{1,2})?$" "999" | |
1906 "^\d{0,2}(\.\d{1,2})?$" ".999" | |
1907 "^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?!.*\s).{4,8}$" G "<0>1agdA*$#</0>" | |
1908 "^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?!.*\s).{4,8}$" G "<0>1agdA*$#</0>" | |
1909 "^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?!.*\s).{4,8}$" G "<0>1agdA*$#</0>" | |
1910 "^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?!.*\s).{4,8}$" "wyrn%@*&$# f" | |
1911 "^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?!.*\s).{4,8}$" "mbndkfh782" | |
1912 "^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?!.*\s).{4,8}$" "BNfhjdhfjd&*)%#$)" | |
1913 "^([a-zA-Z0-9][-a-zA-Z0-9]*[a-zA-Z0-9]\.)+([a-zA-Z0-9]{3,5})$" G "<0>freshmeat
.net</0>" | |
1914 "^([a-zA-Z0-9][-a-zA-Z0-9]*[a-zA-Z0-9]\.)+([a-zA-Z0-9]{3,5})$" G "<0>123.com</
0>" | |
1915 "^([a-zA-Z0-9][-a-zA-Z0-9]*[a-zA-Z0-9]\.)+([a-zA-Z0-9]{3,5})$" G "<0>TempLate-
toolkKt.orG</0>" | |
1916 "^([a-zA-Z0-9][-a-zA-Z0-9]*[a-zA-Z0-9]\.)+([a-zA-Z0-9]{3,5})$" "-dog.com" | |
1917 "^([a-zA-Z0-9][-a-zA-Z0-9]*[a-zA-Z0-9]\.)+([a-zA-Z0-9]{3,5})$" "?boy.net" | |
1918 "^([a-zA-Z0-9][-a-zA-Z0-9]*[a-zA-Z0-9]\.)+([a-zA-Z0-9]{3,5})$" "this.domain" | |
1919 "^[^']*$" G "<0>asljas</0>" | |
1920 "^[^']*$" G "<0>%/&89uhuhadjkh</0>" | |
1921 "^[^']*$" G '<0>"hi there!"</0>' | |
1922 "^[^']*$" "'hi there!'" | |
1923 "^[^']*$" "It's 9 o'clock" | |
1924 "^[^']*$" "'''''" | |
1925 "(^\(\)$|^\(((\([0-9]+,(\((\([0-9]+,[0-9]+,[0-9]+\),)*(\([0-9]+,[0-9]+,[0-9]+\))
{1}\))+\),)*(\([0-9]+,(\((\([0-9]+,[0-9]+,[0-9]+\),)*(\([0-9]+,[0-9]+,[0-9]+\)){
1}\))+\)){1}\)))$" G "<0>((24,((1,2,3),(3,4,5))))</0>" | |
1926 "(^\(\)$|^\(((\([0-9]+,(\((\([0-9]+,[0-9]+,[0-9]+\),)*(\([0-9]+,[0-9]+,[0-9]+\))
{1}\))+\),)*(\([0-9]+,(\((\([0-9]+,[0-9]+,[0-9]+\),)*(\([0-9]+,[0-9]+,[0-9]+\)){
1}\))+\)){1}\)))$" G "<0>((1,((2,3,4),(4,5,6),(96,34,26))),(12,((1,3,4),(4,5,6
),(7,8,9))))</0>" | |
1927 "(^\(\)$|^\(((\([0-9]+,(\((\([0-9]+,[0-9]+,[0-9]+\),)*(\([0-9]+,[0-9]+,[0-9]+\))
{1}\))+\),)*(\([0-9]+,(\((\([0-9]+,[0-9]+,[0-9]+\),)*(\([0-9]+,[0-9]+,[0-9]+\)){
1}\))+\)){1}\)))$" G "<0>()</0>" | |
1928 "(^\(\)$|^\(((\([0-9]+,(\((\([0-9]+,[0-9]+,[0-9]+\),)*(\([0-9]+,[0-9]+,[0-9]+\))
{1}\))+\),)*(\([0-9]+,(\((\([0-9]+,[0-9]+,[0-9]+\),)*(\([0-9]+,[0-9]+,[0-9]+\)){
1}\))+\)){1}\)))$" "(24,((1,2,3),(3,4,5)))" | |
1929 "(^\(\)$|^\(((\([0-9]+,(\((\([0-9]+,[0-9]+,[0-9]+\),)*(\([0-9]+,[0-9]+,[0-9]+\))
{1}\))+\),)*(\([0-9]+,(\((\([0-9]+,[0-9]+,[0-9]+\),)*(\([0-9]+,[0-9]+,[0-9]+\)){
1}\))+\)){1}\)))$" "( )" | |
1930 "(^\(\)$|^\(((\([0-9]+,(\((\([0-9]+,[0-9]+,[0-9]+\),)*(\([0-9]+,[0-9]+,[0-9]+\))
{1}\))+\),)*(\([0-9]+,(\((\([0-9]+,[0-9]+,[0-9]+\),)*(\([0-9]+,[0-9]+,[0-9]+\)){
1}\))+\)){1}\)))$" "((23,(12,3,4),(4,5,6)))" | |
1931 "^[a-zA-Z0-9\s .\-_']+$" G "<0>dony d'gsa</0>" | |
1932 "^[a-zA-Z0-9\s .\-_']+$" "^[a-zA-Z0-9\s.\-_']+$" | |
1933 "^[_a-zA-Z0-9-]+(\.[_a-zA-Z0-9-]+)*@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*\.(([0-9]{1,3
})|([a-zA-Z]{2,3})|(aero|coop|info|museum|name))$" G "<0>example@example.com</
0>" | |
1934 "^[_a-zA-Z0-9-]+(\.[_a-zA-Z0-9-]+)*@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*\.(([0-9]{1,3
})|([a-zA-Z]{2,3})|(aero|coop|info|museum|name))$" G "<0>foo@bar.info</0>" | |
1935 "^[_a-zA-Z0-9-]+(\.[_a-zA-Z0-9-]+)*@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*\.(([0-9]{1,3
})|([a-zA-Z]{2,3})|(aero|coop|info|museum|name))$" G "<0>blah@127.0.0.1</0>" | |
1936 "^[_a-zA-Z0-9-]+(\.[_a-zA-Z0-9-]+)*@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*\.(([0-9]{1,3
})|([a-zA-Z]{2,3})|(aero|coop|info|museum|name))$" "broken@@example.com" | |
1937 "^[_a-zA-Z0-9-]+(\.[_a-zA-Z0-9-]+)*@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*\.(([0-9]{1,3
})|([a-zA-Z]{2,3})|(aero|coop|info|museum|name))$" "foo@bar.infp" | |
1938 "^[_a-zA-Z0-9-]+(\.[_a-zA-Z0-9-]+)*@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*\.(([0-9]{1,3
})|([a-zA-Z]{2,3})|(aero|coop|info|museum|name))$" "blah@.nospam.biz" | |
1939 "^\d{5}(-\d{3})?$" G "<0>13165-000</0>" | |
1940 "^\d{5}(-\d{3})?$" G "<0>38175-000</0>" | |
1941 "^\d{5}(-\d{3})?$" G "<0>81470-276</0>" | |
1942 "^\d{5}(-\d{3})?$" "13165-00" | |
1943 "^\d{5}(-\d{3})?$" "38175-abc" | |
1944 "^\d{5}(-\d{3})?$" "81470-2763" | |
1945 "^\$(\d{1,3}(\,\d{3})*|(\d+))(\.\d{2})?$" G "<0>$0.84</0>" | |
1946 "^\$(\d{1,3}(\,\d{3})*|(\d+))(\.\d{2})?$" G "<0>$123458</0>" | |
1947 "^\$(\d{1,3}(\,\d{3})*|(\d+))(\.\d{2})?$" G "<0>$1,234,567.89</0>" | |
1948 "^\$(\d{1,3}(\,\d{3})*|(\d+))(\.\d{2})?$" "$12,3456.01" | |
1949 "^\$(\d{1,3}(\,\d{3})*|(\d+))(\.\d{2})?$" "12345" | |
1950 "^\$(\d{1,3}(\,\d{3})*|(\d+))(\.\d{2})?$" "$1.234" | |
1951 "([A-Z]:\\[^/:\*\?<>\|]+\.\w{2,6})|(\\{2}[^/:\*\?<>\|]+\.\w{2,6})" G "<0>C:\\t
emp\\this allows spaces\\web.config</0>" | |
1952 "([A-Z]:\\[^/:\*\?<>\|]+\.\w{2,6})|(\\{2}[^/:\*\?<>\|]+\.\w{2,6})" G "<0>\\\\A
ndromeda\\share\\file name.123</0>" | |
1953 "([A-Z]:\\[^/:\*\?<>\|]+\.\w{2,6})|(\\{2}[^/:\*\?<>\|]+\.\w{2,6})" "tz:\temp
\ fi*le?na:m<e>.doc" | |
1954 "([A-Z]:\\[^/:\*\?<>\|]+\.\w{2,6})|(\\{2}[^/:\*\?<>\|]+\.\w{2,6})" "\\Androm
eda\share\filename.a" | |
1955 "(^([0-9]|[0-1][0-9]|[2][0-3]):([0-5][0-9])$)|(^([0-9]|[1][0-9]|[2][0-3])$)" G
"<0>10:35</0>" | |
1956 "(^([0-9]|[0-1][0-9]|[2][0-3]):([0-5][0-9])$)|(^([0-9]|[1][0-9]|[2][0-3])$)" G
"<0>9:20</0>" | |
1957 "(^([0-9]|[0-1][0-9]|[2][0-3]):([0-5][0-9])$)|(^([0-9]|[1][0-9]|[2][0-3])$)" G
"<0>23</0>" | |
1958 "(^([0-9]|[0-1][0-9]|[2][0-3]):([0-5][0-9])$)|(^([0-9]|[1][0-9]|[2][0-3])$)"
"24:00" | |
1959 "(^([0-9]|[0-1][0-9]|[2][0-3]):([0-5][0-9])$)|(^([0-9]|[1][0-9]|[2][0-3])$)"
"20 PM" | |
1960 "(^([0-9]|[0-1][0-9]|[2][0-3]):([0-5][0-9])$)|(^([0-9]|[1][0-9]|[2][0-3])$)"
"20:15 PM" | |
1961 "^\$?([0-9]{1,3},([0-9]{3},)*[0-9]{3}|[0-9]+)(\.[0-9][0-9])?$" G "<0>$3,023,12
3.34</0>" | |
1962 "^\$?([0-9]{1,3},([0-9]{3},)*[0-9]{3}|[0-9]+)(\.[0-9][0-9])?$" G "<0>9,876,453
</0>" | |
1963 "^\$?([0-9]{1,3},([0-9]{3},)*[0-9]{3}|[0-9]+)(\.[0-9][0-9])?$" G "<0>123456.78
</0>" | |
1964 "^\$?([0-9]{1,3},([0-9]{3},)*[0-9]{3}|[0-9]+)(\.[0-9][0-9])?$" "4,33,234.34" | |
1965 "^\$?([0-9]{1,3},([0-9]{3},)*[0-9]{3}|[0-9]+)(\.[0-9][0-9])?$" "$1.234" | |
1966 "^\$?([0-9]{1,3},([0-9]{3},)*[0-9]{3}|[0-9]+)(\.[0-9][0-9])?$" "abc" | |
1967 "^\$?\d+(\.(\d{2}))?$" G "<0>$2.43</0>" | |
1968 "^\$?\d+(\.(\d{2}))?$" G "<0>2.02</0>" | |
1969 "^\$?\d+(\.(\d{2}))?$" G "<0>$2112</0>" | |
1970 "^\$?\d+(\.(\d{2}))?$" "2.1" | |
1971 "^\$?\d+(\.(\d{2}))?$" "$.14" | |
1972 "^\$?\d+(\.(\d{2}))?$" "$2,222.12" | |
1973 /("[^"]*")|('[^\r]*)(\r\n)?/ G '<0>"my string"</0>' | |
1974 /("[^"]*")|('[^\r]*)(\r\n)?/ G '<0>"a string with \u0027 in it"</0>' | |
1975 /("[^"]*")|('[^\r]*)(\r\n)?/ G "<0>' comment</0>" | |
1976 /("[^"]*")|('[^\r]*)(\r\n)?/ /asd "/ | |
1977 "^[A-Za-z0-9]{8}-[A-Za-z0-9]{4}-[A-Za-z0-9]{4}-[A-Za-z0-9]{4}-[A-Za-z0-9]{12}$"
G "<0>BFDB4D31-3E35-4DAB-AFCA-5E6E5C8F61EA</0>" | |
1978 "^[A-Za-z0-9]{8}-[A-Za-z0-9]{4}-[A-Za-z0-9]{4}-[A-Za-z0-9]{4}-[A-Za-z0-9]{12}$"
G "<0>BFDB4d31-3e35-4dab-afca-5e6e5c8f61ea</0>" | |
1979 "^[A-Za-z0-9]{8}-[A-Za-z0-9]{4}-[A-Za-z0-9]{4}-[A-Za-z0-9]{4}-[A-Za-z0-9]{12}$"
"qqqBFDB4D31-3E35-4DAB-AFCA-5E6E5C8F61EA" | |
1980 "^[A-Za-z0-9]{8}-[A-Za-z0-9]{4}-[A-Za-z0-9]{4}-[A-Za-z0-9]{4}-[A-Za-z0-9]{12}$"
"BFDB4D31-3E-4DAB-AFCA-5E6E5C8F61EA" | |
1981 "^[A-Za-z0-9]{8}-[A-Za-z0-9]{4}-[A-Za-z0-9]{4}-[A-Za-z0-9]{4}-[A-Za-z0-9]{12}$"
"BFDB4D31-3E35-4DAB-AF" | |
1982 "^\d{2}(\x2e)(\d{3})(-\d{3})?$" G "<0>12.345-678</0>" | |
1983 "^\d{2}(\x2e)(\d{3})(-\d{3})?$" G "<0>23.345-123</0>" | |
1984 "^\d{2}(\x2e)(\d{3})(-\d{3})?$" G "<0>99.999</0>" | |
1985 "^\d{2}(\x2e)(\d{3})(-\d{3})?$" "41222-222" | |
1986 "^\d{2}(\x2e)(\d{3})(-\d{3})?$" "3.444-233" | |
1987 "^\d{2}(\x2e)(\d{3})(-\d{3})?$" "43.324444" | |
1988 "^\d{2}(\u002e)(\d{3})(-\d{3})?$" G "<0>12.345-678</0>" | |
1989 "^\d{2}(\u002e)(\d{3})(-\d{3})?$" G "<0>23.345-123</0>" | |
1990 "^\d{2}(\u002e)(\d{3})(-\d{3})?$" G "<0>99.999</0>" | |
1991 "^\d{2}(\u002e)(\d{3})(-\d{3})?$" "41222-222" | |
1992 "^\d{2}(\u002e)(\d{3})(-\d{3})?$" "3.444-233" | |
1993 "^\d{2}(\u002e)(\d{3})(-\d{3})?$" "43.324444" | |
1994 #"^(([a-zA-Z]:)|(\\{2}\w+)\$?)(\\(\w[\w ]*))+\.(txt|TXT)$" G "<0>c:\file.txt</
0>" # TODO: debug | |
1995 #"^(([a-zA-Z]:)|(\\{2}\w+)\$?)(\\(\w[\w ]*))+\.(txt|TXT)$" G "<0>c:\folder\sub
folder\file.txt</0>" # TODO: debug | |
1996 #"^(([a-zA-Z]:)|(\\{2}\w+)\$?)(\\(\w[\w ]*))+\.(txt|TXT)$" G "<0>\\network\fol
der\file.txt</0>" # TODO: debug | |
1997 "^(([a-zA-Z]:)|(\\{2}\w+)\$?)(\\(\w[\w ]*))+\.(txt|TXT)$" "C:" | |
1998 "^(([a-zA-Z]:)|(\\{2}\w+)\$?)(\\(\w[\w ]*))+\.(txt|TXT)$" "C:\file.xls" | |
1999 "^(([a-zA-Z]:)|(\\{2}\w+)\$?)(\\(\w[\w ]*))+\.(txt|TXT)$" "folder.txt" | |
2000 "^[a-zA-Z0-9]+([a-zA-Z0-9\-\.]+)?\.(com|org|net|mil|edu|COM|ORG|NET|MIL|EDU)$"
G "<0>my.domain.com</0>" | |
2001 "^[a-zA-Z0-9]+([a-zA-Z0-9\-\.]+)?\.(com|org|net|mil|edu|COM|ORG|NET|MIL|EDU)$"
G "<0>regexlib.com</0>" | |
2002 "^[a-zA-Z0-9]+([a-zA-Z0-9\-\.]+)?\.(com|org|net|mil|edu|COM|ORG|NET|MIL|EDU)$"
G "<0>big-reg.com</0>" | |
2003 "^[a-zA-Z0-9]+([a-zA-Z0-9\-\.]+)?\.(com|org|net|mil|edu|COM|ORG|NET|MIL|EDU)$"
".mydomain.com" | |
2004 "^[a-zA-Z0-9]+([a-zA-Z0-9\-\.]+)?\.(com|org|net|mil|edu|COM|ORG|NET|MIL|EDU)$"
"regexlib.comm" | |
2005 "^[a-zA-Z0-9]+([a-zA-Z0-9\-\.]+)?\.(com|org|net|mil|edu|COM|ORG|NET|MIL|EDU)$"
"-bigreg.com" | |
2006 "^\d{4}[\-\/\s]?((((0[13578])|(1[02]))[\-\/\s]?(([0-2][0-9])|(3[01])))|(((0[469]
)|(11))[\-\/\s]?(([0-2][0-9])|(30)))|(02[\-\/\s]?[0-2][0-9]))$" G "<0>0001-12-
31</0>" | |
2007 "^\d{4}[\-\/\s ]?((((0[13578])|(1[02]))[\-\/\s ]?(([0-2][0-9])|(3[01])))|(((0[46
9])|(11))[\-\/\s ]?(([0-2][0-9])|(30)))|(02[\-\/\s ]?[0-2][0-9]))$" G "<0>9999
09 30</0>" | |
2008 "^\d{4}[\-\/\s]?((((0[13578])|(1[02]))[\-\/\s]?(([0-2][0-9])|(3[01])))|(((0[469]
)|(11))[\-\/\s]?(([0-2][0-9])|(30)))|(02[\-\/\s]?[0-2][0-9]))$" G "<0>2002/03/
03</0>" | |
2009 "^\d{4}[\-\/\s]?((((0[13578])|(1[02]))[\-\/\s]?(([0-2][0-9])|(3[01])))|(((0[469]
)|(11))[\-\/\s]?(([0-2][0-9])|(30)))|(02[\-\/\s]?[0-2][0-9]))$" "0001\02\30" | |
2010 "^\d{4}[\-\/\s]?((((0[13578])|(1[02]))[\-\/\s]?(([0-2][0-9])|(3[01])))|(((0[469]
)|(11))[\-\/\s]?(([0-2][0-9])|(30)))|(02[\-\/\s]?[0-2][0-9]))$" "9999.15.01" | |
2011 "^\d{4}[\-\/\s]?((((0[13578])|(1[02]))[\-\/\s]?(([0-2][0-9])|(3[01])))|(((0[469]
)|(11))[\-\/\s]?(([0-2][0-9])|(30)))|(02[\-\/\s]?[0-2][0-9]))$" "2002/3/3" | |
2012 "^http\://[a-zA-Z0-9\-\.]+\.[a-zA-Z]{2,3}(/\S*)?$" G "<0>http://psychopop.org<
/0>" | |
2013 "^http\://[a-zA-Z0-9\-\.]+\.[a-zA-Z]{2,3}(/\S*)?$" G "<0>http://www.edsroom.co
m/newUser.asp</0>" | |
2014 "^http\://[a-zA-Z0-9\-\.]+\.[a-zA-Z]{2,3}(/\S*)?$" G "<0>http://unpleasant.jar
rin.net/markov/inde</0>" | |
2015 "^http\://[a-zA-Z0-9\-\.]+\.[a-zA-Z]{2,3}(/\S*)?$" "ftp://psychopop.org" | |
2016 "^http\://[a-zA-Z0-9\-\.]+\.[a-zA-Z]{2,3}(/\S*)?$" "http://www.edsroom/" | |
2017 "^http\://[a-zA-Z0-9\-\.]+\.[a-zA-Z]{2,3}(/\S*)?$" "http://un/pleasant.jarri
n.net/markov/index.asp" | |
2018 "^( [1-9]|[1-9]|0[1-9]|10|11|12)[0-5]\d$" G "<0>1145</0>" | |
2019 "^( [1-9]|[1-9]|0[1-9]|10|11|12)[0-5]\d$" G "<0>933</0>" | |
2020 "^( [1-9]|[1-9]|0[1-9]|10|11|12)[0-5]\d$" G "<0> 801</0>" | |
2021 "^( [1-9]|[1-9]|0[1-9]|10|11|12)[0-5]\d$" "0000" | |
2022 "^( [1-9]|[1-9]|0[1-9]|10|11|12)[0-5]\d$" "1330" | |
2023 "^( [1-9]|[1-9]|0[1-9]|10|11|12)[0-5]\d$" "8:30" | |
2024 "^\d{1,2}\/\d{2,4}$" G "<0>9/02</0>" | |
2025 "^\d{1,2}\/\d{2,4}$" G "<0>09/2002</0>" | |
2026 "^\d{1,2}\/\d{2,4}$" G "<0>09/02</0>" | |
2027 "^\d{1,2}\/\d{2,4}$" "Fall 2002" | |
2028 "^\d{1,2}\/\d{2,4}$" "Sept 2002" | |
2029 "^(|(0[1-9])|(1[0-2]))\/((0[1-9])|(1\d)|(2\d)|(3[0-1]))\/((\d{4}))$" G "<0>01/
01/2001</0>" | |
2030 "^(|(0[1-9])|(1[0-2]))\/((0[1-9])|(1\d)|(2\d)|(3[0-1]))\/((\d{4}))$" G "<0>02/
30/2001</0>" | |
2031 "^(|(0[1-9])|(1[0-2]))\/((0[1-9])|(1\d)|(2\d)|(3[0-1]))\/((\d{4}))$" G "<0>12/
31/2002</0>" | |
2032 "^(|(0[1-9])|(1[0-2]))\/((0[1-9])|(1\d)|(2\d)|(3[0-1]))\/((\d{4}))$" "1/1/02
" | |
2033 "^(|(0[1-9])|(1[0-2]))\/((0[1-9])|(1\d)|(2\d)|(3[0-1]))\/((\d{4}))$" "1/1/20
02" | |
2034 "^(|(0[1-9])|(1[0-2]))\/((0[1-9])|(1\d)|(2\d)|(3[0-1]))\/((\d{4}))$" "1/25/2
002" | |
2035 "^(1?(-?\d{3})-?)?(\d{3})(-?\d{4})$" G "<0>15615552323</0>" | |
2036 "^(1?(-?\d{3})-?)?(\d{3})(-?\d{4})$" G "<0>1-561-555-1212</0>" | |
2037 "^(1?(-?\d{3})-?)?(\d{3})(-?\d{4})$" G "<0>5613333</0>" | |
2038 "^(1?(-?\d{3})-?)?(\d{3})(-?\d{4})$" "1-555-5555" | |
2039 "^(1?(-?\d{3})-?)?(\d{3})(-?\d{4})$" "15553333" | |
2040 "^(1?(-?\d{3})-?)?(\d{3})(-?\d{4})$" "0-561-555-1212" | |
2041 '<[^>]*name[\s]*=[\s]*"?[^\w_]*"?[^>]*>' G '<0><input type = text name = "bob"
></0>' | |
2042 '<[^>]*name[\s]*=[\s]*"?[^\w_]*"?[^>]*>' G '<0><select name = "fred"></0>' | |
2043 #'<[^>]*name[\s]*=[\s]*"?[^\w_]*"?[^>]*>' G '<0><form></0>' #TODO: Debug | |
2044 '<[^>]*name[\s]*=[\s]*"?[^\w_]*"?[^>]*>' "<input type = submit>" # TODO:
\w in pattern | |
2045 '<[^>]*name[\s]*=[\s]*"?[^\w_]*"?[^>]*>' '<font face = "arial">' # TODO:
\w in pattern | |
2046 '<[^>]*name[\s]*=[\s]*"?[^\w_]*"?[^>]*>' "The drity brown fox stank like" | |
2047 "^(1|01|2|02|3|03|4|04|5|05|6|06|7|07|8|08|9|09|10|11|12{1,2}):(([0-5]{1}[0-9]{1
}\s{0,1})([AM|PM|am|pm]{2,2}))\W{0}$" G "<0>1:00 AM</0>" | |
2048 "^(1|01|2|02|3|03|4|04|5|05|6|06|7|07|8|08|9|09|10|11|12{1,2}):(([0-5]{1}[0-9]{1
}\s{0,1})([AM|PM|am|pm]{2,2}))\W{0}$" G "<0>12:00 PM</0>" | |
2049 "^(1|01|2|02|3|03|4|04|5|05|6|06|7|07|8|08|9|09|10|11|12{1,2}):(([0-5]{1}[0-9]{1
}\s{0,1})([AM|PM|am|pm]{2,2}))\W{0}$" G "<0>1:00am</0>" | |
2050 "^(1|01|2|02|3|03|4|04|5|05|6|06|7|07|8|08|9|09|10|11|12{1,2}):(([0-5]{1}[0-9]{1
}\s{0,1})([AM|PM|am|pm]{2,2}))\W{0}$" "24:00" | |
2051 "^\d*$" G "<0>123</0>" | |
2052 "^\d*$" G "<0>000</0>" | |
2053 "^\d*$" G "<0>43</0>" | |
2054 "^\d*$" "asbc" | |
2055 "^\d*$" "-34" | |
2056 "^\d*$" "3.1415" | |
2057 "^[-+]?\d*$" G "<0>123</0>" | |
2058 "^[-+]?\d*$" G "<0>-123</0>" | |
2059 "^[-+]?\d*$" G "<0>+123</0>" | |
2060 "^[-+]?\d*$" "abc" | |
2061 "^[-+]?\d*$" "3.14159" | |
2062 "^[-+]?\d*$" "-3.14159" | |
2063 "^\d*\.?\d*$" G "<0>123</0>" | |
2064 "^\d*\.?\d*$" G "<0>3.14159</0>" | |
2065 "^\d*\.?\d*$" G "<0>.234</0>" | |
2066 "^\d*\.?\d*$" "abc" | |
2067 "^\d*\.?\d*$" "-3.14159" | |
2068 "^\d*\.?\d*$" "3.4.2" | |
2069 "^((\d{5}-\d{4})|(\d{5})|([A-Z]\d[A-Z]\s\d[A-Z]\d))$" G "<0>44240</0>" | |
2070 "^((\d{5}-\d{4})|(\d{5})|([A-Z]\d[A-Z]\s\d[A-Z]\d))$" G "<0>44240-5555</0>" | |
2071 "^((\d{5}-\d{4})|(\d{5})|([A-Z]\d[A-Z]\s\d[A-Z]\d))$" G "<0>T2P 3C7</0>" | |
2072 "^((\d{5}-\d{4})|(\d{5})|([A-Z]\d[A-Z]\s\d[A-Z]\d))$" "44240ddd" | |
2073 "^((\d{5}-\d{4})|(\d{5})|([A-Z]\d[A-Z]\s\d[A-Z]\d))$" "t44240-55" | |
2074 "^((\d{5}-\d{4})|(\d{5})|([A-Z]\d[A-Z]\s\d[A-Z]\d))$" "t2p3c7" | |
2075 "^[\\(]{0,1}([0-9]){3}[\\)]{0,1}[ ]?([^0-1]){1}([0-9]){2}[ ]?[-]?[ ]?([0-9]){4}[
]*((x){0,1}([0-9]){1,5}){0,1}$" G "<0>(910)456-7890</0>" | |
2076 "^[\\(]{0,1}([0-9]){3}[\\)]{0,1}[ ]?([^0-1]){1}([0-9]){2}[ ]?[-]?[ ]?([0-9]){4}[
]*((x){0,1}([0-9]){1,5}){0,1}$" G "<0>(910)456-8970 x12</0>" | |
2077 "^[\\(]{0,1}([0-9]){3}[\\)]{0,1}[ ]?([^0-1]){1}([0-9]){2}[ ]?[-]?[ ]?([0-9]){4}[
]*((x){0,1}([0-9]){1,5}){0,1}$" G "<0>(910)456-8970 1211</0>" | |
2078 "^[\\(]{0,1}([0-9]){3}[\\)]{0,1}[ ]?([^0-1]){1}([0-9]){2}[ ]?[-]?[ ]?([0-9]){4}[
]*((x){0,1}([0-9]){1,5}){0,1}$" "(910) 156-7890" | |
2079 "^[\\(]{0,1}([0-9]){3}[\\)]{0,1}[ ]?([^0-1]){1}([0-9]){2}[ ]?[-]?[ ]?([0-9]){4}[
]*((x){0,1}([0-9]){1,5}){0,1}$" "(910) 056-7890" | |
2080 "^[\\(]{0,1}([0-9]){3}[\\)]{0,1}[ ]?([^0-1]){1}([0-9]){2}[ ]?[-]?[ ]?([0-9]){4}[
]*((x){0,1}([0-9]){1,5}){0,1}$" "(910) 556-7890 x" | |
2081 "^((0?[1-9]|[12][1-9]|3[01])\.(0?[13578]|1[02])\.20[0-9]{2}|(0?[1-9]|[12][1-9]|3
0)\.(0?[13456789]|1[012])\.20[0-9]{2}|(0?[1-9]|1[1-9]|2[0-8])\.(0?[123456789]|1[
012])\.20[0-9]{2}|(0?[1-9]|[12][1-9])\.(0?[123456789]|1[012])\.20(00|04|08|12|16
|20|24|28|32|36|40|44|48|52|56|60|64|68|72|76|80|84|88|92|96))$" G "<0>31.01.2
002</0>" | |
2082 "^((0?[1-9]|[12][1-9]|3[01])\.(0?[13578]|1[02])\.20[0-9]{2}|(0?[1-9]|[12][1-9]|3
0)\.(0?[13456789]|1[012])\.20[0-9]{2}|(0?[1-9]|1[1-9]|2[0-8])\.(0?[123456789]|1[
012])\.20[0-9]{2}|(0?[1-9]|[12][1-9])\.(0?[123456789]|1[012])\.20(00|04|08|12|16
|20|24|28|32|36|40|44|48|52|56|60|64|68|72|76|80|84|88|92|96))$" G "<0>29.2.20
04</0>" | |
2083 "^((0?[1-9]|[12][1-9]|3[01])\.(0?[13578]|1[02])\.20[0-9]{2}|(0?[1-9]|[12][1-9]|3
0)\.(0?[13456789]|1[012])\.20[0-9]{2}|(0?[1-9]|1[1-9]|2[0-8])\.(0?[123456789]|1[
012])\.20[0-9]{2}|(0?[1-9]|[12][1-9])\.(0?[123456789]|1[012])\.20(00|04|08|12|16
|20|24|28|32|36|40|44|48|52|56|60|64|68|72|76|80|84|88|92|96))$" G "<0>09.02.2
005</0>" | |
2084 "^((0?[1-9]|[12][1-9]|3[01])\.(0?[13578]|1[02])\.20[0-9]{2}|(0?[1-9]|[12][1-9]|3
0)\.(0?[13456789]|1[012])\.20[0-9]{2}|(0?[1-9]|1[1-9]|2[0-8])\.(0?[123456789]|1[
012])\.20[0-9]{2}|(0?[1-9]|[12][1-9])\.(0?[123456789]|1[012])\.20(00|04|08|12|16
|20|24|28|32|36|40|44|48|52|56|60|64|68|72|76|80|84|88|92|96))$" "31.11.2002
" | |
2085 "^((0?[1-9]|[12][1-9]|3[01])\.(0?[13578]|1[02])\.20[0-9]{2}|(0?[1-9]|[12][1-9]|3
0)\.(0?[13456789]|1[012])\.20[0-9]{2}|(0?[1-9]|1[1-9]|2[0-8])\.(0?[123456789]|1[
012])\.20[0-9]{2}|(0?[1-9]|[12][1-9])\.(0?[123456789]|1[012])\.20(00|04|08|12|16
|20|24|28|32|36|40|44|48|52|56|60|64|68|72|76|80|84|88|92|96))$" "29.2.2002" | |
2086 "^((0?[1-9]|[12][1-9]|3[01])\.(0?[13578]|1[02])\.20[0-9]{2}|(0?[1-9]|[12][1-9]|3
0)\.(0?[13456789]|1[012])\.20[0-9]{2}|(0?[1-9]|1[1-9]|2[0-8])\.(0?[123456789]|1[
012])\.20[0-9]{2}|(0?[1-9]|[12][1-9])\.(0?[123456789]|1[012])\.20(00|04|08|12|16
|20|24|28|32|36|40|44|48|52|56|60|64|68|72|76|80|84|88|92|96))$" "33.06.2000
" | |
2087 "^(0[1-9]|1[0-2])\/((0[1-9]|2\d)|3[0-1])\/(19\d\d|200[0-3])$" G "<0>12/31/2003
</0>" | |
2088 "^(0[1-9]|1[0-2])\/((0[1-9]|2\d)|3[0-1])\/(19\d\d|200[0-3])$" G "<0>01/01/1900
</0>" | |
2089 "^(0[1-9]|1[0-2])\/((0[1-9]|2\d)|3[0-1])\/(19\d\d|200[0-3])$" G "<0>11/31/2002
</0>" | |
2090 "^(0[1-9]|1[0-2])\/((0[1-9]|2\d)|3[0-1])\/(19\d\d|200[0-3])$" "1/1/2002" | |
2091 "^(0[1-9]|1[0-2])\/((0[1-9]|2\d)|3[0-1])\/(19\d\d|200[0-3])$" "01/01/02" | |
2092 "^(0[1-9]|1[0-2])\/((0[1-9]|2\d)|3[0-1])\/(19\d\d|200[0-3])$" "01/01/2004" | |
2093 "^((((([13578])|(1[0-2]))[\-\/\s]?(([1-9])|([1-2][0-9])|(3[01])))|((([469])|(11)
)[\-\/\s]?(([1-9])|([1-2][0-9])|(30)))|(2[\-\/\s]?(([1-9])|([1-2][0-9]))))[\-\/\
s]?\d{4})(\s((([1-9])|(1[02]))\:([0-5][0-9])((\s)|(\:([0-5][0-9])\s))([AM|PM|am|
pm]{2,2})))?$" G "<0>3/3/2003</0>" | |
2094 "^((((([13578])|(1[0-2]))[\-\/\s]?(([1-9])|([1-2][0-9])|(3[01])))|((([469])|(11)
)[\-\/\s]?(([1-9])|([1-2][0-9])|(30)))|(2[\-\/\s]?(([1-9])|([1-2][0-9]))))[\-\/\
s]?\d{4})(\s((([1-9])|(1[02]))\:([0-5][0-9])((\s)|(\:([0-5][0-9])\s))([AM|PM|am|
pm]{2,2})))?$" G "<0>3/3/2002 3:33 pm</0>" | |
2095 "^((((([13578])|(1[0-2]))[\-\/\s]?(([1-9])|([1-2][0-9])|(3[01])))|((([469])|(11)
)[\-\/\s]?(([1-9])|([1-2][0-9])|(30)))|(2[\-\/\s]?(([1-9])|([1-2][0-9]))))[\-\/\
s]?\d{4})(\s((([1-9])|(1[02]))\:([0-5][0-9])((\s)|(\:([0-5][0-9])\s))([AM|PM|am|
pm]{2,2})))?$" G "<0>3/3/2003 3:33:33 am</0>" | |
2096 "^((((([13578])|(1[0-2]))[\-\/\s]?(([1-9])|([1-2][0-9])|(3[01])))|((([469])|(11)
)[\-\/\s]?(([1-9])|([1-2][0-9])|(30)))|(2[\-\/\s]?(([1-9])|([1-2][0-9]))))[\-\/\
s]?\d{4})(\s((([1-9])|(1[02]))\:([0-5][0-9])((\s)|(\:([0-5][0-9])\s))([AM|PM|am|
pm]{2,2})))?$" "13/1/2002" | |
2097 "^((((([13578])|(1[0-2]))[\-\/\s]?(([1-9])|([1-2][0-9])|(3[01])))|((([469])|(11)
)[\-\/\s]?(([1-9])|([1-2][0-9])|(30)))|(2[\-\/\s]?(([1-9])|([1-2][0-9]))))[\-\/\
s]?\d{4})(\s((([1-9])|(1[02]))\:([0-5][0-9])((\s)|(\:([0-5][0-9])\s))([AM|PM|am|
pm]{2,2})))?$" "3/3/2002 3:33" | |
2098 "^((((([13578])|(1[0-2]))[\-\/\s]?(([1-9])|([1-2][0-9])|(3[01])))|((([469])|(11)
)[\-\/\s]?(([1-9])|([1-2][0-9])|(30)))|(2[\-\/\s]?(([1-9])|([1-2][0-9]))))[\-\/\
s]?\d{4})(\s((([1-9])|(1[02]))\:([0-5][0-9])((\s)|(\:([0-5][0-9])\s))([AM|PM|am|
pm]{2,2})))?$" "31/3/2002" | |
2099 "([a-zA-Z]:(\\w+)*\\[a-zA-Z0_9]+)?.xls" G "<0>E:\DyAGT\SD01A_specV2.xls</0>" | |
2100 "([a-zA-Z]:(\\w+)*\\[a-zA-Z0_9]+)?.xls" "E:\DyAGT\SD01A_specV2.txt" | |
2101 "(((0[13578]|10|12)([-./])(0[1-9]|[12][0-9]|3[01])([-./])(\d{4}))|((0[469]|11)([
-./])([0][1-9]|[12][0-9]|30)([-./])(\d{4}))|((2)([-./])(0[1-9]|1[0-9]|2[0-8])([-
./])(\d{4}))|((2)(\.|-|\/)(29)([-./])([02468][048]00))|((2)([-./])(29)([-./])([1
3579][26]00))|((2)([-./])(29)([-./])([0-9][0-9][0][48]))|((2)([-./])(29)([-./])(
[0-9][0-9][2468][048]))|((2)([-./])(29)([-./])([0-9][0-9][13579][26])))" G "<0
>02/29/2084</0>" | |
2102 "(((0[13578]|10|12)([-./])(0[1-9]|[12][0-9]|3[01])([-./])(\d{4}))|((0[469]|11)([
-./])([0][1-9]|[12][0-9]|30)([-./])(\d{4}))|((2)([-./])(0[1-9]|1[0-9]|2[0-8])([-
./])(\d{4}))|((2)(\.|-|\/)(29)([-./])([02468][048]00))|((2)([-./])(29)([-./])([1
3579][26]00))|((2)([-./])(29)([-./])([0-9][0-9][0][48]))|((2)([-./])(29)([-./])(
[0-9][0-9][2468][048]))|((2)([-./])(29)([-./])([0-9][0-9][13579][26])))" G "<0
>01/31/2000</0>" | |
2103 "(((0[13578]|10|12)([-./])(0[1-9]|[12][0-9]|3[01])([-./])(\d{4}))|((0[469]|11)([
-./])([0][1-9]|[12][0-9]|30)([-./])(\d{4}))|((2)([-./])(0[1-9]|1[0-9]|2[0-8])([-
./])(\d{4}))|((2)(\.|-|\/)(29)([-./])([02468][048]00))|((2)([-./])(29)([-./])([1
3579][26]00))|((2)([-./])(29)([-./])([0-9][0-9][0][48]))|((2)([-./])(29)([-./])(
[0-9][0-9][2468][048]))|((2)([-./])(29)([-./])([0-9][0-9][13579][26])))" G "<0
>11/30/2000</0>" | |
2104 "(((0[13578]|10|12)([-./])(0[1-9]|[12][0-9]|3[01])([-./])(\d{4}))|((0[469]|11)([
-./])([0][1-9]|[12][0-9]|30)([-./])(\d{4}))|((2)([-./])(0[1-9]|1[0-9]|2[0-8])([-
./])(\d{4}))|((2)(\.|-|\/)(29)([-./])([02468][048]00))|((2)([-./])(29)([-./])([1
3579][26]00))|((2)([-./])(29)([-./])([0-9][0-9][0][48]))|((2)([-./])(29)([-./])(
[0-9][0-9][2468][048]))|((2)([-./])(29)([-./])([0-9][0-9][13579][26])))" "02
/29/2083" | |
2105 "(((0[13578]|10|12)([-./])(0[1-9]|[12][0-9]|3[01])([-./])(\d{4}))|((0[469]|11)([
-./])([0][1-9]|[12][0-9]|30)([-./])(\d{4}))|((2)([-./])(0[1-9]|1[0-9]|2[0-8])([-
./])(\d{4}))|((2)(\.|-|\/)(29)([-./])([02468][048]00))|((2)([-./])(29)([-./])([1
3579][26]00))|((2)([-./])(29)([-./])([0-9][0-9][0][48]))|((2)([-./])(29)([-./])(
[0-9][0-9][2468][048]))|((2)([-./])(29)([-./])([0-9][0-9][13579][26])))" "11
/31/2000" | |
2106 "(((0[13578]|10|12)([-./])(0[1-9]|[12][0-9]|3[01])([-./])(\d{4}))|((0[469]|11)([
-./])([0][1-9]|[12][0-9]|30)([-./])(\d{4}))|((2)([-./])(0[1-9]|1[0-9]|2[0-8])([-
./])(\d{4}))|((2)(\.|-|\/)(29)([-./])([02468][048]00))|((2)([-./])(29)([-./])([1
3579][26]00))|((2)([-./])(29)([-./])([0-9][0-9][0][48]))|((2)([-./])(29)([-./])(
[0-9][0-9][2468][048]))|((2)([-./])(29)([-./])([0-9][0-9][13579][26])))" "01
/32/2000" | |
2107 "^[a-zA-Z0-9\s .\-]+$" G "<0>2222 Mock St.</0>" # TODO: \s in patterns not
implemented | |
2108 "^[a-zA-Z0-9\s .\-]+$" G "<0>1 A St.</0>" | |
2109 "^[a-zA-Z0-9\s .\-]+$" G "<0>555-1212</0>" | |
2110 "^[a-zA-Z0-9\s.\-]+$" "[A Street]" | |
2111 "^[a-zA-Z0-9\s.\-]+$" "(3 A St.)" | |
2112 "^[a-zA-Z0-9\s.\-]+$" "{34 C Ave.}" | |
2113 "^[a-zA-Z0-9\s.\-]+$" "Last.*?(\d+.?\d*)" | |
2114 "^[a-zA-Z0-9\s .\-]+$" G "<TR><TD ALIGN=RIGHT> </TD><TD>Last</TD><TD ALIGN=RIG
HT NOW" | |
2115 "^[a-zA-Z0-9\s.\-]+$" "[AADDSS]" | |
2116 "^([0-9]( |-)?)?(\(?[0-9]{3}\)?|[0-9]{3})( |-)?([0-9]{3}( |-)?[0-9]{4}|[a-zA-Z0-
9]{7})$" G "<0>1-(123)-123-1234</0>" | |
2117 "^([0-9]( |-)?)?(\(?[0-9]{3}\)?|[0-9]{3})( |-)?([0-9]{3}( |-)?[0-9]{4}|[a-zA-Z0-
9]{7})$" G "<0>123 123 1234</0>" | |
2118 "^([0-9]( |-)?)?(\(?[0-9]{3}\)?|[0-9]{3})( |-)?([0-9]{3}( |-)?[0-9]{4}|[a-zA-Z0-
9]{7})$" G "<0>1-800-ALPHNUM</0>" | |
2119 "^([0-9]( |-)?)?(\(?[0-9]{3}\)?|[0-9]{3})( |-)?([0-9]{3}( |-)?[0-9]{4}|[a-zA-Z0-
9]{7})$" "1.123.123.1234" | |
2120 "^([0-9]( |-)?)?(\(?[0-9]{3}\)?|[0-9]{3})( |-)?([0-9]{3}( |-)?[0-9]{4}|[a-zA-Z0-
9]{7})$" "(123)-1234-123" | |
2121 "^([0-9]( |-)?)?(\(?[0-9]{3}\)?|[0-9]{3})( |-)?([0-9]{3}( |-)?[0-9]{4}|[a-zA-Z0-
9]{7})$" "123-1234" | |
2122 "^([0-1][0-9]|[2][0-3]):([0-5][0-9])$" G "<0>02:04</0>" | |
2123 "^([0-1][0-9]|[2][0-3]):([0-5][0-9])$" G "<0>16:56</0>" | |
2124 "^([0-1][0-9]|[2][0-3]):([0-5][0-9])$" G "<0>23:59</0>" | |
2125 "^([0-1][0-9]|[2][0-3]):([0-5][0-9])$" "02:00 PM" | |
2126 "^([0-1][0-9]|[2][0-3]):([0-5][0-9])$" "PM2:00" | |
2127 "^([0-1][0-9]|[2][0-3]):([0-5][0-9])$" "24:00" | |
2128 "^[0,1]?\d{1}\/(([0-2]?\d{1})|([3][0,1]{1}))\/(([1]{1}[9]{1}[9]{1}\d{1})|([2-9]{
1}\d{3}))$" G "<0>01/01/1990</0>" | |
2129 "^[0,1]?\d{1}\/(([0-2]?\d{1})|([3][0,1]{1}))\/(([1]{1}[9]{1}[9]{1}\d{1})|([2-9]{
1}\d{3}))$" G "<0>12/12/9999</0>" | |
2130 "^[0,1]?\d{1}\/(([0-2]?\d{1})|([3][0,1]{1}))\/(([1]{1}[9]{1}[9]{1}\d{1})|([2-9]{
1}\d{3}))$" G "<0>3/28/2001</0>" | |
2131 "^[0,1]?\d{1}\/(([0-2]?\d{1})|([3][0,1]{1}))\/(([1]{1}[9]{1}[9]{1}\d{1})|([2-9]{
1}\d{3}))$" "3-8-01" | |
2132 "^[0,1]?\d{1}\/(([0-2]?\d{1})|([3][0,1]{1}))\/(([1]{1}[9]{1}[9]{1}\d{1})|([2-9]{
1}\d{3}))$" "13/32/1001" | |
2133 "^[0,1]?\d{1}\/(([0-2]?\d{1})|([3][0,1]{1}))\/(([1]{1}[9]{1}[9]{1}\d{1})|([2-9]{
1}\d{3}))$" "03/32/1989" | |
2134 "((\(\d{3}\)?)|(\d{3}))([\s \-./]?)(\d{3})([\s \-./]?)(\d{4})" G "<0>1.2123644
567</0>" | |
2135 "((\(\d{3}\)?)|(\d{3}))([\s \-./]?)(\d{3})([\s \-./]?)(\d{4})" G "<0>0-234.567
/8912</0>" | |
2136 "((\(\d{3}\)?)|(\d{3}))([\s \-./]?)(\d{3})([\s \-./]?)(\d{4})" G "<0>1-(212)-1
23 4567</0>" | |
2137 "((\(\d{3}\)?)|(\d{3}))([\s \-./]?)(\d{3})([\s \-./]?)(\d{4})" "0-212364345" | |
2138 "((\(\d{3}\)?)|(\d{3}))([\s \-./]?)(\d{3})([\s \-./]?)(\d{4})" "1212-364,432
1" | |
2139 "((\(\d{3}\)?)|(\d{3}))([\s \-./]?)(\d{3})([\s \-./]?)(\d{4})" "0212\345/678
9" | |
2140 "^([0-9]{6}[\s \-]{1}[0-9]{12}|[0-9]{18})$" G "<0>000000 000000000000</0>" | |
2141 "^([0-9]{6}[\s \-]{1}[0-9]{12}|[0-9]{18})$" G "<0>000000-000000000000</0>" | |
2142 "^([0-9]{6}[\s \-]{1}[0-9]{12}|[0-9]{18})$" G "<0>000000000000000000</0>" | |
2143 "^([0-9]{6}[\s \-]{1}[0-9]{12}|[0-9]{18})$" "000000_000000000000" | |
2144 "^(([1-9])|(0[1-9])|(1[0-2]))\/((0[1-9])|([1-31]))\/((\d{2})|(\d{4}))$" G "<0>
01/01/2001</0>" | |
2145 "^(([1-9])|(0[1-9])|(1[0-2]))\/((0[1-9])|([1-31]))\/((\d{2})|(\d{4}))$" G "<0>
1/1/2001</0>" | |
2146 "^(([1-9])|(0[1-9])|(1[0-2]))\/((0[1-9])|([1-31]))\/((\d{2})|(\d{4}))$" G "<0>
01/1/01</0>" | |
2147 "^(([1-9])|(0[1-9])|(1[0-2]))\/((0[1-9])|([1-31]))\/((\d{2})|(\d{4}))$" "13/
01/2001" | |
2148 "^(([1-9])|(0[1-9])|(1[0-2]))\/((0[1-9])|([1-31]))\/((\d{2})|(\d{4}))$" "1/2
/100" | |
2149 "^(([1-9])|(0[1-9])|(1[0-2]))\/((0[1-9])|([1-31]))\/((\d{2})|(\d{4}))$" "09/
32/2001" | |
2150 "^\$?([0-9]{1,3},([0-9]{3},)*[0-9]{3}|[0-9]+)(.[0-9][0-9])?$" G "<0>$3,023,123
.34</0>" | |
2151 "^\$?([0-9]{1,3},([0-9]{3},)*[0-9]{3}|[0-9]+)(.[0-9][0-9])?$" G "<0>9,876,453<
/0>" | |
2152 "^\$?([0-9]{1,3},([0-9]{3},)*[0-9]{3}|[0-9]+)(.[0-9][0-9])?$" G "<0>123456.78<
/0>" | |
2153 "^\$?([0-9]{1,3},([0-9]{3},)*[0-9]{3}|[0-9]+)(.[0-9][0-9])?$" "4,33,234.34" | |
2154 "^\$?([0-9]{1,3},([0-9]{3},)*[0-9]{3}|[0-9]+)(.[0-9][0-9])?$" "$1.234" | |
2155 "^\$?([0-9]{1,3},([0-9]{3},)*[0-9]{3}|[0-9]+)(.[0-9][0-9])?$" "abc" | |
2156 "^\d{5}$|^\d{5}-\d{4}$" G "<0>55555-5555</0>" | |
2157 "^\d{5}$|^\d{5}-\d{4}$" G "<0>34564-3342</0>" | |
2158 "^\d{5}$|^\d{5}-\d{4}$" G "<0>90210</0>" | |
2159 "^\d{5}$|^\d{5}-\d{4}$" "434454444" | |
2160 "^\d{5}$|^\d{5}-\d{4}$" "645-32-2345" | |
2161 "^\d{5}$|^\d{5}-\d{4}$" "abc" | |
2162 "^\d{3}-\d{2}-\d{4}$" G "<0>333-22-4444</0>" | |
2163 "^\d{3}-\d{2}-\d{4}$" G "<0>123-45-6789</0>" | |
2164 "^\d{3}-\d{2}-\d{4}$" "123456789" | |
2165 "^\d{3}-\d{2}-\d{4}$" "SSN" | |
2166 "^[2-9]\d{2}-\d{3}-\d{4}$" G "<0>800-555-5555</0>" | |
2167 "^[2-9]\d{2}-\d{3}-\d{4}$" G "<0>333-444-5555</0>" | |
2168 "^[2-9]\d{2}-\d{3}-\d{4}$" G "<0>212-666-1234</0>" | |
2169 "^[2-9]\d{2}-\d{3}-\d{4}$" "000-000-0000" | |
2170 "^[2-9]\d{2}-\d{3}-\d{4}$" "123-456-7890" | |
2171 "^[2-9]\d{2}-\d{3}-\d{4}$" "2126661234" | |
2172 "^\d{5}-\d{4}|\d{5}|[A-Z]\d[A-Z] \d[A-Z]\d$" G "<0>44240</0>" | |
2173 "^\d{5}-\d{4}|\d{5}|[A-Z]\d[A-Z] \d[A-Z]\d$" G "<0>44240-5555</0>" | |
2174 "^\d{5}-\d{4}|\d{5}|[A-Z]\d[A-Z] \d[A-Z]\d$" G "<0>G3H 6A3</0>" | |
2175 "^\d{5}-\d{4}|\d{5}|[A-Z]\d[A-Z] \d[A-Z]\d$" "Ohio" | |
2176 "^\d{5}-\d{4}|\d{5}|[A-Z]\d[A-Z] \d[A-Z]\d$" "abc" | |
2177 "^\d{5}-\d{4}|\d{5}|[A-Z]\d[A-Z] \d[A-Z]\d$" "g3h6a3" | |
2178 "[0-9]{4}\s*[a-zA-Z]{2}" G "<0>1054 WD</0>" | |
2179 "[0-9]{4}\s*[a-zA-Z]{2}" G "<0>1054WD</0>" | |
2180 "[0-9]{4}\s*[a-zA-Z]{2}" G "<0>1054 wd</0>" | |
2181 "[0-9]{4}\s*[a-zA-Z]{2}" "10543" | |
2182 "(^1300\d{6}$)|(^1800|1900|1902\d{6}$)|(^0[2|3|7|8]{1}[0-9]{8}$)|(^13\d{4}$)|(^0
4\d{2,3}\d{6}$)" G "<0>0732105432</0>" | |
2183 "(^1300\d{6}$)|(^1800|1900|1902\d{6}$)|(^0[2|3|7|8]{1}[0-9]{8}$)|(^13\d{4}$)|(^0
4\d{2,3}\d{6}$)" G "<0>1300333444</0>" | |
2184 "(^1300\d{6}$)|(^1800|1900|1902\d{6}$)|(^0[2|3|7|8]{1}[0-9]{8}$)|(^13\d{4}$)|(^0
4\d{2,3}\d{6}$)" G "<0>131313</0>" | |
2185 "(^1300\d{6}$)|(^1800|1900|1902\d{6}$)|(^0[2|3|7|8]{1}[0-9]{8}$)|(^13\d{4}$)|(^0
4\d{2,3}\d{6}$)" "32105432" | |
2186 "(^1300\d{6}$)|(^1800|1900|1902\d{6}$)|(^0[2|3|7|8]{1}[0-9]{8}$)|(^13\d{4}$)|(^0
4\d{2,3}\d{6}$)" "13000456" | |
2187 "^((https?|ftp)\://((\[?(\d{1,3}\.){3}\d{1,3}\]?)|(([\-a-zA-Z0-9]+\.)+[a-zA-Z]{2
,4}))(\:\d+)?(/[\-a-zA-Z0-9._?,'+\&%$#=~\\]+)*/?)$" G "<0>http://207.68.172.25
4/home.ashx</0>" | |
2188 "^((https?|ftp)\://((\[?(\d{1,3}\.){3}\d{1,3}\]?)|(([\-a-zA-Z0-9]+\.)+[a-zA-Z]{2
,4}))(\:\d+)?(/[\-a-zA-Z0-9._?,'+\&%$#=~\\]+)*/?)$" G "<0>ftp://ftp.netscape.c
om/</0>" | |
2189 "^((https?|ftp)\://((\[?(\d{1,3}\.){3}\d{1,3}\]?)|(([\-a-zA-Z0-9]+\.)+[a-zA-Z]{2
,4}))(\:\d+)?(/[\-a-zA-Z0-9._?,'+\&%$#=~\\]+)*/?)$" G "<0>https://www.brinkste
r.com/login.asp</0>" | |
2190 "^((https?|ftp)\://((\[?(\d{1,3}\.){3}\d{1,3}\]?)|(([\-a-zA-Z0-9]+\.)+[a-zA-Z]{2
,4}))(\:\d+)?(/[\-a-zA-Z0-9._?,'+\&%$#=~\\]+)*/?)$" "htp://mistake.com/" | |
2191 "^((https?|ftp)\://((\[?(\d{1,3}\.){3}\d{1,3}\]?)|(([\-a-zA-Z0-9]+\.)+[a-zA-Z]{2
,4}))(\:\d+)?(/[\-a-zA-Z0-9._?,'+\&%$#=~\\]+)*/?)$" "http://www_address.com/
" | |
2192 "^((https?|ftp)\://((\[?(\d{1,3}\.){3}\d{1,3}\]?)|(([\-a-zA-Z0-9]+\.)+[a-zA-Z]{2
,4}))(\:\d+)?(/[\-a-zA-Z0-9._?,'+\&%$#=~\\]+)*/?)$" "ftp://www.files.com/fil
e with spaces.txt" | |
2193 "([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})" G "<0>2002-11-03</0>" | |
2194 "([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})" G "<0>2007-17-08</0>" | |
2195 "([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})" G "<0>9999-99-99</0>" | |
2196 "([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})" "2002/17/18" | |
2197 "([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})" "2002.18.45" | |
2198 "([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})" "18.45.2002" | |
2199 "^\$?(\d{1,3}(\,\d{3})*|(\d+))(\.\d{0,2})?$" G "<0>$0,234.50</0>" | |
2200 "^\$?(\d{1,3}(\,\d{3})*|(\d+))(\.\d{0,2})?$" G "<0>0234.5</0>" | |
2201 "^\$?(\d{1,3}(\,\d{3})*|(\d+))(\.\d{0,2})?$" G "<0>0,234.</0>" | |
2202 "^\$?(\d{1,3}(\,\d{3})*|(\d+))(\.\d{0,2})?$" "$1,23,50" | |
2203 "^\$?(\d{1,3}(\,\d{3})*|(\d+))(\.\d{0,2})?$" "$123.123" | |
2204 "(^\d{5}-\d{3}|^\d{2}.\d{3}-\d{3}|\d{8})" G "<0>12.345-678</0>" | |
2205 "(^\d{5}-\d{3}|^\d{2}.\d{3}-\d{3}|\d{8})" G "<0>12345-678</0>" | |
2206 "(^\d{5}-\d{3}|^\d{2}.\d{3}-\d{3}|\d{8})" G "<0>12345678</0>" | |
2207 "(^\d{5}-\d{3}|^\d{2}.\d{3}-\d{3}|\d{8})" "12.345678" | |
2208 "(^\d{5}-\d{3}|^\d{2}.\d{3}-\d{3}|\d{8})" "12345-1" | |
2209 "(^\d{5}-\d{3}|^\d{2}.\d{3}-\d{3}|\d{8})" "123" | |
2210 '^([a-zA-Z]\:|\\)\\([^\\]+\\)*[^\/:*?"<>|]+\.htm(l)?$' G "<0>x:\\test\\testing
.htm</0>" | |
2211 '^([a-zA-Z]\:|\\)\\([^\\]+\\)*[^\/:*?"<>|]+\.htm(l)?$' G "<0>x:\\test\\test#$
ing.html</0>" | |
2212 '^([a-zA-Z]\:|\\)\\([^\\]+\\)*[^\/:*?"<>|]+\.htm(l)?$' G "<0>\\\\test\testing.
html</0>" | |
2213 '^([a-zA-Z]\:|\\)\\([^\\]+\\)*[^\/:*?"<>|]+\.htm(l)?$' "x:\test\test/ing.htm
" | |
2214 '^([a-zA-Z]\:|\\)\\([^\\]+\\)*[^\/:*?"<>|]+\.htm(l)?$' "x:\test\test*.htm" | |
2215 '^([a-zA-Z]\:|\\)\\([^\\]+\\)*[^\/:*?"<>|]+\.htm(l)?$' "\\test?<.htm" | |
2216 "^[1-9]{1}[0-9]{3}$" G "<0>1234</0>" | |
2217 "^[1-9]{1}[0-9]{3}$" "123" | |
2218 "^[1-9]{1}[0-9]{3}$" "123A" | |
2219 "^[A-Z]{1}( |-)?[1-9]{1}[0-9]{3}$" G "<0>A-1234</0>" | |
2220 "^[A-Z]{1}( |-)?[1-9]{1}[0-9]{3}$" G "<0>A 1234</0>" | |
2221 "^[A-Z]{1}( |-)?[1-9]{1}[0-9]{3}$" G "<0>A1234</0>" | |
2222 "^[A-Z]{1}( |-)?[1-9]{1}[0-9]{3}$" "AA-1234" | |
2223 "^[A-Z]{1}( |-)?[1-9]{1}[0-9]{3}$" "A12345" | |
2224 "^(F-)?[0-9]{5}$" G "<0>12345</0>" | |
2225 "^(F-)?[0-9]{5}$" G "<0>F-12345</0>" | |
2226 "^(F-)?[0-9]{5}$" "F12345" | |
2227 "^(F-)?[0-9]{5}$" "F-123456" | |
2228 "^(F-)?[0-9]{5}$" "123456" | |
2229 "^(V-|I-)?[0-9]{4}$" G "<0>1234</0>" | |
2230 "^(V-|I-)?[0-9]{4}$" G "<0>V-1234</0>" | |
2231 "^(V-|I-)?[0-9]{4}$" "12345" | |
2232 "^[1-9]{1}[0-9]{3} ?[A-Z]{2}$" G "<0>1234 AB</0>" | |
2233 "^[1-9]{1}[0-9]{3} ?[A-Z]{2}$" G "<0>1234AB</0>" | |
2234 "^[1-9]{1}[0-9]{3} ?[A-Z]{2}$" "123AB" | |
2235 "^[1-9]{1}[0-9]{3} ?[A-Z]{2}$" "1234AAA" | |
2236 "^([1-9]{2}|[0-9][1-9]|[1-9][0-9])[0-9]{3}$" G "<0>12345</0>" | |
2237 "^([1-9]{2}|[0-9][1-9]|[1-9][0-9])[0-9]{3}$" G "<0>10234</0>" | |
2238 "^([1-9]{2}|[0-9][1-9]|[1-9][0-9])[0-9]{3}$" G "<0>01234</0>" | |
2239 "^([1-9]{2}|[0-9][1-9]|[1-9][0-9])[0-9]{3}$" "00123" | |
2240 "^(/w|/W|[^<>+?$%\{}\&])+$" G "<0>John Doe Sr.</0>" | |
2241 "^(/w|/W|[^<>+?$%\{}\&])+$" G "<0>100 Elm St., Suite 25</0>" | |
2242 "^(/w|/W|[^<>+?$%\{}\&])+$" G "<0>Valerie's Gift Shop</0>" | |
2243 "^(/w|/W|[^<>+?$%\{}\&])+$" "<h1>Hey</h1>" | |
2244 /<[a-zA-Z][^>]*\son\w+=(\w+|'[^']*'|"[^"]*")[^>]*>/ G '<0><IMG onmouseover="wi
ndow.close()"></0>' | |
2245 /<[a-zA-Z][^>]*\son\w+=(\w+|'[^']*'|"[^"]*")[^>]*>/ '<IMG src="star.gif">' | |
2246 "(?!^0*$)(?!^0*\.0*$)^\d{1,5}(\.\d{1,3})?$" G "<0>1</0>" | |
2247 "(?!^0*$)(?!^0*\.0*$)^\d{1,5}(\.\d{1,3})?$" G "<0>12345.123</0>" | |
2248 "(?!^0*$)(?!^0*\.0*$)^\d{1,5}(\.\d{1,3})?$" G "<0>0.5</0>" | |
2249 "(?!^0*$)(?!^0*\.0*$)^\d{1,5}(\.\d{1,3})?$" "0" | |
2250 "(?!^0*$)(?!^0*\.0*$)^\d{1,5}(\.\d{1,3})?$" "0.0" | |
2251 "(?!^0*$)(?!^0*\.0*$)^\d{1,5}(\.\d{1,3})?$" "123456.1234" | |
2252 "^.+@[^\.].*\.[a-z]{2,}$" G "<0>whatever@somewhere.museum</0>" | |
2253 "^.+@[^\.].*\.[a-z]{2,}$" G "<0>foreignchars@myforeigncharsdomain.nu</0>" | |
2254 "^.+@[^\.].*\.[a-z]{2,}$" G "<0>me+mysomething@mydomain.com</0>" | |
2255 "^.+@[^\.].*\.[a-z]{2,}$" "a@b.c" | |
2256 "^.+@[^\.].*\.[a-z]{2,}$" "me@.my.com" | |
2257 "^.+@[^\.].*\.[a-z]{2,}$" "a@b.comFOREIGNCHAR" | |
2258 "^(\d{5}-\d{4}|\d{5})$" G "<0>12345</0>" | |
2259 "^(\d{5}-\d{4}|\d{5})$" G "<0>12345-1234</0>" | |
2260 "^(\d{5}-\d{4}|\d{5})$" "12345-12345" | |
2261 "^(\d{5}-\d{4}|\d{5})$" "123" | |
2262 "^(\d{5}-\d{4}|\d{5})$" "12345-abcd" | |
2263 "^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1
\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$" G "<0>0.0.0.0</0>" | |
2264 "^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1
\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$" G "<0>255.255.255.0
2</0>" | |
2265 "^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1
\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$" G "<0>192.168.0.136
</0>" | |
2266 "^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1
\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$" "256.1.3.4" | |
2267 "^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1
\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$" "023.44.33.22" | |
2268 "^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1
\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$" "10.57.98.23." | |
2269 "<img([^>]*[^/])>" G '<0><img src="bob"></0>' | |
2270 "<img([^>]*[^/])>" '<img src="bob" />' | |
2271 "<!--[\s\S]*?-->" G "<0><!-- comments --></0>" | |
2272 "<!--[\s\S]*?-->" G "<0><!-- x = a > b - 3 --></0>" | |
2273 "<!--[\s\S]*?-->" "<COMMENTS>this is a comment</COMMENTS>" | |
2274 "<!--[\p{Zs}\P{Zs}]*?-->" G "<0><!-- comments --></0>" | |
2275 "<!--[\p{Zs}\P{Zs}]*?-->" G "<0><!-- x = a > b - 3 --></0>" | |
2276 "<!--[\p{Zs}\P{Zs}]*?-->" "<COMMENTS>this is a comment</COMMENTS>" | |
2277 /<\u002f?(\w+)(\s+\w+=(\w+|"[^"]*"|'[^']*'))*>/ G "<0><TD></0>" | |
2278 /<\u002f?(\w+)(\s+\w+=(\w+|"[^"]*"|'[^']*'))*>/ G '<0><TD bgColor="FFFFFF"></0
>' | |
2279 /<\u002f?(\w+)(\s+\w+=(\w+|"[^"]*"|'[^']*'))*>/ G "<0></TD></0>" | |
2280 /<\u002f?(\w+)(\s+\w+=(\w+|"[^"]*"|'[^']*'))*>/ "No Tag Here ..." | |
2281 "(\{\\f\d*)\\([^;]+;)" G "<0>{\\f0\\Some Font names here;</0>" | |
2282 "(\{\\f\d*)\\([^;]+;)" G "<0>{\\f1\\fswiss\\fcharset0\\fprq2{\\*\\panose 020b0
604020202020204}Arial;</0>" | |
2283 "(\{\\f\d*)\\([^;]+;)" G "{\\f" | |
2284 "(\{\\f\d*)\\([^;]+;)" "{f0fs20 some text}" | |
2285 #"</?([a-zA-Z][-A-Za-z\d\.]{0,71})(\s+(\S+)(\s*=\s*([-\w\.]{1,1024}|"[^"]{0,1024
}"|'[^']{0,1024}'))?)*\s*>" G '<0><IMG src='stars.gif' alt="space" height=1></
0>' # TODO: Can't quote this pattern with the test syntax! | |
2286 #"</?([a-zA-Z][-A-Za-z\d\.]{0,71})(\s+(\S+)(\s*=\s*([-\w\.]{1,1024}|"[^"]{0,1024
}"|'[^']{0,1024}'))?)*\s*>" "this is not a tag" | |
2287 "^([0]\d|[1][0-2])\/([0-2]\d|[3][0-1])\/([2][01]|[1][6-9])\d{2}(\s([0-1]\d|[2][0
-3])(\:[0-5]\d){1,2})?$" G "<0>12/30/2002</0>" | |
2288 "^([0]\d|[1][0-2])\/([0-2]\d|[3][0-1])\/([2][01]|[1][6-9])\d{2}(\s([0-1]\d|[2][0
-3])(\:[0-5]\d){1,2})?$" G "<0>01/12/1998 13:30</0>" | |
2289 "^([0]\d|[1][0-2])\/([0-2]\d|[3][0-1])\/([2][01]|[1][6-9])\d{2}(\s([0-1]\d|[2][0
-3])(\:[0-5]\d){1,2})?$" G "<0>01/28/2002 22:35:00</0>" | |
2290 "^([0]\d|[1][0-2])\/([0-2]\d|[3][0-1])\/([2][01]|[1][6-9])\d{2}(\s([0-1]\d|[2][0
-3])(\:[0-5]\d){1,2})?$" "13/30/2002" | |
2291 "^([0]\d|[1][0-2])\/([0-2]\d|[3][0-1])\/([2][01]|[1][6-9])\d{2}(\s([0-1]\d|[2][0
-3])(\:[0-5]\d){1,2})?$" "01/12/1998 24:30" | |
2292 "^([0]\d|[1][0-2])\/([0-2]\d|[3][0-1])\/([2][01]|[1][6-9])\d{2}(\s([0-1]\d|[2][0
-3])(\:[0-5]\d){1,2})?$" "01/28/2002 22:35:64" | |
2293 #"((?<strElement>(^[A-Z0-9-;=]*:))(?<strValue>(.*)))" G "<0>BEGIN:</0>"
#named capture | |
2294 #"((?<strElement>(^[A-Z0-9-;=]*:))(?<strValue>(.*)))" G "<0>TEL;WORK;VOICE:</0
>" #named capture | |
2295 #"((?<strElement>(^[A-Z0-9-;=]*:))(?<strValue>(.*)))" G "<0>TEL:</0>"
#named capture | |
2296 #"((?<strElement>(^[A-Z0-9-;=]*:))(?<strValue>(.*)))" "begin:"
#named capture | |
2297 #"((?<strElement>(^[A-Z0-9-;=]*:))(?<strValue>(.*)))" "TEL;PREF;"
#named capture | |
2298 '^<a\s+href\s*=\s*"http:\/\/([^"]*)"([^>]*)>(.*?(?=<\/a>))<\/a>$' G '<0><a hre
f="http://www.mysite.com">my external link</a></0>' | |
2299 '^<a\s+href\s*=\s*"http:\/\/([^"]*)"([^>]*)>(.*?(?=<\/a>))<\/a>$' G '<a href="
http:/' | |
2300 '^<a\s+href\s*=\s*"http:\/\/([^"]*)"([^>]*)>(.*?(?=<\/a>))<\/a>$' '<a href="
myinternalpage.html">my internal link</a>' | |
2301 "^([0]\d|[1][0-2])\/([0-2]\d|[3][0-1])\/([2][01]|[1][6-9])\d{2}(\s([0]\d|[1][0-2
])(\:[0-5]\d){1,2})*\s*([aApP][mM]{0,2})?$" G "<0>12/31/2002</0>" | |
2302 "^([0]\d|[1][0-2])\/([0-2]\d|[3][0-1])\/([2][01]|[1][6-9])\d{2}(\s([0]\d|[1][0-2
])(\:[0-5]\d){1,2})*\s*([aApP][mM]{0,2})?$" G "<0>12/31/2002 08:00</0>" | |
2303 "^([0]\d|[1][0-2])\/([0-2]\d|[3][0-1])\/([2][01]|[1][6-9])\d{2}(\s([0]\d|[1][0-2
])(\:[0-5]\d){1,2})*\s*([aApP][mM]{0,2})?$" G "<0>12/31/2002 08:00 AM</0>" | |
2304 "^([0]\d|[1][0-2])\/([0-2]\d|[3][0-1])\/([2][01]|[1][6-9])\d{2}(\s([0]\d|[1][0-2
])(\:[0-5]\d){1,2})*\s*([aApP][mM]{0,2})?$" "12/31/02" | |
2305 "^([0]\d|[1][0-2])\/([0-2]\d|[3][0-1])\/([2][01]|[1][6-9])\d{2}(\s([0]\d|[1][0-2
])(\:[0-5]\d){1,2})*\s*([aApP][mM]{0,2})?$" "12/31/2002 14:00" | |
2306 "<blockquote>(?:\s*([^<]+)<br>\s*)+</blockquote>" G "<0><blockquote>string1<br
>string2<br>string3<br></blockquote></0>" | |
2307 "<blockquote>(?:\s*([^<]+)<br>\s*)+</blockquote>" ".." | |
2308 "^((0?[13578]|10|12)(-|\/)((0[0-9])|([12])([0-9]?)|(3[01]?))(-|\/)((19)([2-9])(\
d{1})|(20)([01])(\d{1})|([8901])(\d{1}))|(0?[2469]|11)(-|\/)((0[0-9])|([12])([0-
9]?)|(3[0]?))(-|\/)((19)([2-9])(\d{1})|(20)([01])(\d{1})|([8901])(\d{1})))$" G
"<0>1/2/03</0>" | |
2309 "^((0?[13578]|10|12)(-|\/)((0[0-9])|([12])([0-9]?)|(3[01]?))(-|\/)((19)([2-9])(\
d{1})|(20)([01])(\d{1})|([8901])(\d{1}))|(0?[2469]|11)(-|\/)((0[0-9])|([12])([0-
9]?)|(3[0]?))(-|\/)((19)([2-9])(\d{1})|(20)([01])(\d{1})|([8901])(\d{1})))$" G
"<0>2/30/1999</0>" | |
2310 "^((0?[13578]|10|12)(-|\/)((0[0-9])|([12])([0-9]?)|(3[01]?))(-|\/)((19)([2-9])(\
d{1})|(20)([01])(\d{1})|([8901])(\d{1}))|(0?[2469]|11)(-|\/)((0[0-9])|([12])([0-
9]?)|(3[0]?))(-|\/)((19)([2-9])(\d{1})|(20)([01])(\d{1})|([8901])(\d{1})))$" G
"<0>03/04/19</0>" | |
2311 "^((0?[13578]|10|12)(-|\/)((0[0-9])|([12])([0-9]?)|(3[01]?))(-|\/)((19)([2-9])(\
d{1})|(20)([01])(\d{1})|([8901])(\d{1}))|(0?[2469]|11)(-|\/)((0[0-9])|([12])([0-
9]?)|(3[0]?))(-|\/)((19)([2-9])(\d{1})|(20)([01])(\d{1})|([8901])(\d{1})))$"
"3/4/2020" | |
2312 "^((0?[13578]|10|12)(-|\/)((0[0-9])|([12])([0-9]?)|(3[01]?))(-|\/)((19)([2-9])(\
d{1})|(20)([01])(\d{1})|([8901])(\d{1}))|(0?[2469]|11)(-|\/)((0[0-9])|([12])([0-
9]?)|(3[0]?))(-|\/)((19)([2-9])(\d{1})|(20)([01])(\d{1})|([8901])(\d{1})))$"
"3/4/1919" | |
2313 '</?(\w+)(\s*\w*\s*=\s*("[^"]*"|\u0027[^\u0027]\u0027|[^>]*))*|/?>' G '<0><fon
t color="blue"></0>' | |
2314 '</?(\w+)(\s*\w*\s*=\s*("[^"]*"|\u0027[^\u0027]\u0027|[^>]*))*|/?>' G "<0></fo
nt></0>" | |
2315 '</?(\w+)(\s*\w*\s*=\s*("[^"]*"|\u0027[^\u0027]\u0027|[^>]*))*|/?>' G "<0><br
/></0>" | |
2316 '</?(\w+)(\s*\w*\s*=\s*("[^"]*"|\u0027[^\u0027]\u0027|[^>]*))*|/?>' "this is
a test..." | |
2317 "^ *(1[0-2]|[1-9]):[0-5][0-9] *(a|p|A|P)(m|M) *$" G "<0>12:00am</0>" | |
2318 "^ *(1[0-2]|[1-9]):[0-5][0-9] *(a|p|A|P)(m|M) *$" G "<0>1:00 PM</0>" | |
2319 "^ *(1[0-2]|[1-9]):[0-5][0-9] *(a|p|A|P)(m|M) *$" G "<0> 12:59 pm</0>" | |
2320 "^ *(1[0-2]|[1-9]):[0-5][0-9] *(a|p|A|P)(m|M) *$" "0:00" | |
2321 "^ *(1[0-2]|[1-9]):[0-5][0-9] *(a|p|A|P)(m|M) *$" "0:01 am" | |
2322 "^ *(1[0-2]|[1-9]):[0-5][0-9] *(a|p|A|P)(m|M) *$" "13:00 pm" | |
2323 "\({1}[0-9]{3}\){1}\-{1}[0-9]{3}\-{1}[0-9]{4}" G "<0>(111)-111-1111</0>" | |
2324 "\({1}[0-9]{3}\){1}\-{1}[0-9]{3}\-{1}[0-9]{4}" "11111111111" | |
2325 "[^abc]" G "<0>def</0>" | |
2326 "[^abc]" "abc" | |
2327 "^(([0]?[1-9]|[1][0-2])[\/|\-|\.]([0-2]\d|[3][0-1]|[1-9])[\/|\-|\.]([2][0])?\d{2
}\s+((([0][0-9]|[1][0-2]|[0-9])[\:|\-|\.]([0-5]\d)\s*([aApP][mM])?)|(([0-1][0-9]
|[2][0-3]|[0-9])[\:|\-|\.]([0-5]\d))))$" G "<0>01/01/2002 04:42</0>" | |
2328 "^(([0]?[1-9]|[1][0-2])[\/|\-|\.]([0-2]\d|[3][0-1]|[1-9])[\/|\-|\.]([2][0])?\d{2
}\s+((([0][0-9]|[1][0-2]|[0-9])[\:|\-|\.]([0-5]\d)\s*([aApP][mM])?)|(([0-1][0-9]
|[2][0-3]|[0-9])[\:|\-|\.]([0-5]\d))))$" G "<0>5-12-02 04:42 AM</0>" | |
2329 "^(([0]?[1-9]|[1][0-2])[\/|\-|\.]([0-2]\d|[3][0-1]|[1-9])[\/|\-|\.]([2][0])?\d{2
}\s+((([0][0-9]|[1][0-2]|[0-9])[\:|\-|\.]([0-5]\d)\s*([aApP][mM])?)|(([0-1][0-9]
|[2][0-3]|[0-9])[\:|\-|\.]([0-5]\d))))$" G "<0>01.01/02 04-42aM</0>" | |
2330 "^(([0]?[1-9]|[1][0-2])[\/|\-|\.]([0-2]\d|[3][0-1]|[1-9])[\/|\-|\.]([2][0])?\d{2
}\s+((([0][0-9]|[1][0-2]|[0-9])[\:|\-|\.]([0-5]\d)\s*([aApP][mM])?)|(([0-1][0-9]
|[2][0-3]|[0-9])[\:|\-|\.]([0-5]\d))))$" "01-12-1999 4:50PM" | |
2331 "^(([0]?[1-9]|[1][0-2])[\/|\-|\.]([0-2]\d|[3][0-1]|[1-9])[\/|\-|\.]([2][0])?\d{2
}\s+((([0][0-9]|[1][0-2]|[0-9])[\:|\-|\.]([0-5]\d)\s*([aApP][mM])?)|(([0-1][0-9]
|[2][0-3]|[0-9])[\:|\-|\.]([0-5]\d))))$" "01-12-2002 15:10PM" | |
2332 "^(([0]?[1-9]|[1][0-2])[\/|\-|\.]([0-2]\d|[3][0-1]|[1-9])[\/|\-|\.]([2][0])?\d{2
}\s+((([0][0-9]|[1][0-2]|[0-9])[\:|\-|\.]([0-5]\d)\s*([aApP][mM])?)|(([0-1][0-9]
|[2][0-3]|[0-9])[\:|\-|\.]([0-5]\d))))$" "01-12-002 8:20PM" | |
2333 "^([1][12]|[0]?[1-9])[\/-]([3][01]|[12]\d|[0]?[1-9])[\/-](\d{4}|\d{2})$" G "<0
>11-02-02</0>" | |
2334 "^([1][12]|[0]?[1-9])[\/-]([3][01]|[12]\d|[0]?[1-9])[\/-](\d{4}|\d{2})$" G "<0
>1-25-2002</0>" | |
2335 "^([1][12]|[0]?[1-9])[\/-]([3][01]|[12]\d|[0]?[1-9])[\/-](\d{4}|\d{2})$" G "<0
>01/25/2002</0>" | |
2336 "^([1][12]|[0]?[1-9])[\/-]([3][01]|[12]\d|[0]?[1-9])[\/-](\d{4}|\d{2})$" "13
-02-02" | |
2337 "^([1][12]|[0]?[1-9])[\/-]([3][01]|[12]\d|[0]?[1-9])[\/-](\d{4}|\d{2})$" "11
.02.02" | |
2338 "^([1][12]|[0]?[1-9])[\/-]([3][01]|[12]\d|[0]?[1-9])[\/-](\d{4}|\d{2})$" "11
/32/2002" | |
2339 "(([0-1][0-9])|([2][0-3])):([0-5][0-9]):([0-5][0-9])" G "<0>09:30:00</0>" | |
2340 "(([0-1][0-9])|([2][0-3])):([0-5][0-9]):([0-5][0-9])" G "<0>17:45:20</0>" | |
2341 "(([0-1][0-9])|([2][0-3])):([0-5][0-9]):([0-5][0-9])" G "<0>23:59:59</0>" | |
2342 "(([0-1][0-9])|([2][0-3])):([0-5][0-9]):([0-5][0-9])" "24:00:00" | |
2343 "(((0[1-9]|[12][0-9]|3[01])([-./])(0[13578]|10|12)([-./])(\d{4}))|(([0][1-9]|[12
][0-9]|30)([-./])(0[469]|11)([-./])(\d{4}))|((0[1-9]|1[0-9]|2[0-8])([-./])(02)([
-./])(\d{4}))|((29)(\.|-|\/)(02)([-./])([02468][048]00))|((29)([-./])(02)([-./])
([13579][26]00))|((29)([-./])(02)([-./])([0-9][0-9][0][48]))|((29)([-./])(02)([-
./])([0-9][0-9][2468][048]))|((29)([-./])(02)([-./])([0-9][0-9][13579][26])))"
G "<0>29/02/2000</0>" | |
2344 "(((0[1-9]|[12][0-9]|3[01])([-./])(0[13578]|10|12)([-./])(\d{4}))|(([0][1-9]|[12
][0-9]|30)([-./])(0[469]|11)([-./])(\d{4}))|((0[1-9]|1[0-9]|2[0-8])([-./])(02)([
-./])(\d{4}))|((29)(\.|-|\/)(02)([-./])([02468][048]00))|((29)([-./])(02)([-./])
([13579][26]00))|((29)([-./])(02)([-./])([0-9][0-9][0][48]))|((29)([-./])(02)([-
./])([0-9][0-9][2468][048]))|((29)([-./])(02)([-./])([0-9][0-9][13579][26])))"
G "<0>31/01/2000</0>" | |
2345 "(((0[1-9]|[12][0-9]|3[01])([-./])(0[13578]|10|12)([-./])(\d{4}))|(([0][1-9]|[12
][0-9]|30)([-./])(0[469]|11)([-./])(\d{4}))|((0[1-9]|1[0-9]|2[0-8])([-./])(02)([
-./])(\d{4}))|((29)(\.|-|\/)(02)([-./])([02468][048]00))|((29)([-./])(02)([-./])
([13579][26]00))|((29)([-./])(02)([-./])([0-9][0-9][0][48]))|((29)([-./])(02)([-
./])([0-9][0-9][2468][048]))|((29)([-./])(02)([-./])([0-9][0-9][13579][26])))"
G "<0>30-01-2000</0>" | |
2346 "(((0[1-9]|[12][0-9]|3[01])([-./])(0[13578]|10|12)([-./])(\d{4}))|(([0][1-9]|[12
][0-9]|30)([-./])(0[469]|11)([-./])(\d{4}))|((0[1-9]|1[0-9]|2[0-8])([-./])(02)([
-./])(\d{4}))|((29)(\.|-|\/)(02)([-./])([02468][048]00))|((29)([-./])(02)([-./])
([13579][26]00))|((29)([-./])(02)([-./])([0-9][0-9][0][48]))|((29)([-./])(02)([-
./])([0-9][0-9][2468][048]))|((29)([-./])(02)([-./])([0-9][0-9][13579][26])))"
"29/02/2002" | |
2347 "(((0[1-9]|[12][0-9]|3[01])([-./])(0[13578]|10|12)([-./])(\d{4}))|(([0][1-9]|[12
][0-9]|30)([-./])(0[469]|11)([-./])(\d{4}))|((0[1-9]|1[0-9]|2[0-8])([-./])(02)([
-./])(\d{4}))|((29)(\.|-|\/)(02)([-./])([02468][048]00))|((29)([-./])(02)([-./])
([13579][26]00))|((29)([-./])(02)([-./])([0-9][0-9][0][48]))|((29)([-./])(02)([-
./])([0-9][0-9][2468][048]))|((29)([-./])(02)([-./])([0-9][0-9][13579][26])))"
"32/01/2002" | |
2348 "(((0[1-9]|[12][0-9]|3[01])([-./])(0[13578]|10|12)([-./])(\d{4}))|(([0][1-9]|[12
][0-9]|30)([-./])(0[469]|11)([-./])(\d{4}))|((0[1-9]|1[0-9]|2[0-8])([-./])(02)([
-./])(\d{4}))|((29)(\.|-|\/)(02)([-./])([02468][048]00))|((29)([-./])(02)([-./])
([13579][26]00))|((29)([-./])(02)([-./])([0-9][0-9][0][48]))|((29)([-./])(02)([-
./])([0-9][0-9][2468][048]))|((29)([-./])(02)([-./])([0-9][0-9][13579][26])))"
"10/2/2002" | |
2349 "^0[1-6]{1}(([0-9]{2}){4})|((\s[0-9]{2}){4})|((-[0-9]{2}){4})$" G "<0>01 46 70
89 12</0>" | |
2350 "^0[1-6]{1}(([0-9]{2}){4})|((\s[0-9]{2}){4})|((-[0-9]{2}){4})$" G "<0>01-46-70
-89-12</0>" | |
2351 "^0[1-6]{1}(([0-9]{2}){4})|((\s[0-9]{2}){4})|((-[0-9]{2}){4})$" G "<0>01467089
12</0>" | |
2352 "^0[1-6]{1}(([0-9]{2}){4})|((\s[0-9]{2}){4})|((-[0-9]{2}){4})$" "01-46708912
" | |
2353 "^0[1-6]{1}(([0-9]{2}){4})|((\s[0-9]{2}){4})|((-[0-9]{2}){4})$" "01 46708912
" | |
2354 "^0[1-6]{1}(([0-9]{2}){4})|((\s[0-9]{2}){4})|((-[0-9]{2}){4})$" "+3323525667
7" | |
2355 "^[0-9A-Za-z_ ]+(.[jJ][pP][gG]|.[gG][iI][fF])$" G "<0>good.gif</0>" | |
2356 "^[0-9A-Za-z_ ]+(.[jJ][pP][gG]|.[gG][iI][fF])$" G "<0>go d.GIf</0>" | |
2357 "^[0-9A-Za-z_ ]+(.[jJ][pP][gG]|.[gG][iI][fF])$" G "<0>goo_d.jPg</0>" | |
2358 "^[0-9A-Za-z_ ]+(.[jJ][pP][gG]|.[gG][iI][fF])$" "junk" | |
2359 "^[0-9A-Za-z_ ]+(.[jJ][pP][gG]|.[gG][iI][fF])$" "bad.bad.gif" | |
2360 "^[0-9A-Za-z_ ]+(.[jJ][pP][gG]|.[gG][iI][fF])$" "slash\gif." | |
2361 "<[^>\s]*\bauthor\b[^>]*>" G '<0><author name="Daniel"></0>' | |
2362 "<[^>\s]*\bauthor\b[^>]*>" G "<0></sch:author></0>" | |
2363 # "<[^>\s]*\bauthor\b[^>]*>" G '<0><pp:author name="Daniel"</0>' #Debug shou
ld work | |
2364 "<[^> ]*\bauthor\b[^>]*>" G "<0></sch:author></0>" | |
2365 "<[^> ]*\bauthor\b[^>]*>" G '<0><pp:author name="Daniel"></0>' | |
2366 "<[^>\s]*\bauthor\b[^>]*>" "<other>" | |
2367 "<[^>\s]*\bauthor\b[^>]*>" "</authors>" | |
2368 "<[^>\s]*\bauthor\b[^>]*>" "<work>author</work>" | |
2369 "^(?:(?:(?:(?:1[6-9]|[2-9]\d)?(?:0[48]|[2468][048]|[13579][26])|(?:(?:16|[2468][
048]|[3579][26])00)))(\/|-|\.)(?:0?2\1(?:29))$)|(?:(?:1[6-9]|[2-9]\d)?\d{2})(\/|
-|\.)(?:(?:(?:0?[13578]|1[02])\2(?:31))|(?:(?:0?[1,3-9]|1[0-2])\2(29|30))|(?:(?:
0?[1-9])|(?:1[0-2]))\2(?:0?[1-9]|1\d|2[0-8]))$" G "<0>04/2/29</0>" | |
2370 "^(?:(?:(?:(?:1[6-9]|[2-9]\d)?(?:0[48]|[2468][048]|[13579][26])|(?:(?:16|[2468][
048]|[3579][26])00)))(\/|-|\.)(?:0?2\1(?:29))$)|(?:(?:1[6-9]|[2-9]\d)?\d{2})(\/|
-|\.)(?:(?:(?:0?[13578]|1[02])\2(?:31))|(?:(?:0?[1,3-9]|1[0-2])\2(29|30))|(?:(?:
0?[1-9])|(?:1[0-2]))\2(?:0?[1-9]|1\d|2[0-8]))$" G "<0>2002-4-30</0>" | |
2371 "^(?:(?:(?:(?:1[6-9]|[2-9]\d)?(?:0[48]|[2468][048]|[13579][26])|(?:(?:16|[2468][
048]|[3579][26])00)))(\/|-|\.)(?:0?2\1(?:29))$)|(?:(?:1[6-9]|[2-9]\d)?\d{2})(\/|
-|\.)(?:(?:(?:0?[13578]|1[02])\2(?:31))|(?:(?:0?[1,3-9]|1[0-2])\2(29|30))|(?:(?:
0?[1-9])|(?:1[0-2]))\2(?:0?[1-9]|1\d|2[0-8]))$" G "<0>02.10.31</0>" | |
2372 "^(?:(?:(?:(?:1[6-9]|[2-9]\d)?(?:0[48]|[2468][048]|[13579][26])|(?:(?:16|[2468][
048]|[3579][26])00)))(\/|-|\.)(?:0?2\1(?:29))$)|(?:(?:1[6-9]|[2-9]\d)?\d{2})(\/|
-|\.)(?:(?:(?:0?[13578]|1[02])\2(?:31))|(?:(?:0?[1,3-9]|1[0-2])\2(29|30))|(?:(?:
0?[1-9])|(?:1[0-2]))\2(?:0?[1-9]|1\d|2[0-8]))$" "2003/2/29" | |
2373 "^(?:(?:(?:(?:1[6-9]|[2-9]\d)?(?:0[48]|[2468][048]|[13579][26])|(?:(?:16|[2468][
048]|[3579][26])00)))(\/|-|\.)(?:0?2\1(?:29))$)|(?:(?:1[6-9]|[2-9]\d)?\d{2})(\/|
-|\.)(?:(?:(?:0?[13578]|1[02])\2(?:31))|(?:(?:0?[1,3-9]|1[0-2])\2(29|30))|(?:(?:
0?[1-9])|(?:1[0-2]))\2(?:0?[1-9]|1\d|2[0-8]))$" "02.4.31" | |
2374 "^(?:(?:(?:(?:1[6-9]|[2-9]\d)?(?:0[48]|[2468][048]|[13579][26])|(?:(?:16|[2468][
048]|[3579][26])00)))(\/|-|\.)(?:0?2\1(?:29))$)|(?:(?:1[6-9]|[2-9]\d)?\d{2})(\/|
-|\.)(?:(?:(?:0?[13578]|1[02])\2(?:31))|(?:(?:0?[1,3-9]|1[0-2])\2(29|30))|(?:(?:
0?[1-9])|(?:1[0-2]))\2(?:0?[1-9]|1\d|2[0-8]))$" "00/00/00" | |
2375 '(\d*)\u0027*-*(\d*)/*(\d*)"' G '<0>5\u0027-3/16"</0>' | |
2376 '(\d*)\u0027*-*(\d*)/*(\d*)"' G '<0>1\u0027-2"</0>' | |
2377 '(\d*)\u0027*-*(\d*)/*(\d*)"' G '<0>5/16"</0>' | |
2378 '(\d*)\u0027*-*(\d*)/*(\d*)"' '1 3/16' | |
2379 "^[1-9]{1}$|^[1-4]{1}[0-9]{1}$|^50$" G "<0>1</0>" | |
2380 "^[1-9]{1}$|^[1-4]{1}[0-9]{1}$|^50$" G "<0>23</0>" | |
2381 "^[1-9]{1}$|^[1-4]{1}[0-9]{1}$|^50$" G "<0>50</0>" | |
2382 "^[1-9]{1}$|^[1-4]{1}[0-9]{1}$|^50$" "0" | |
2383 "^[1-9]{1}$|^[1-4]{1}[0-9]{1}$|^50$" "111" | |
2384 "^[1-9]{1}$|^[1-4]{1}[0-9]{1}$|^50$" "xyz" | |
2385 "^([ \u00c0-\u01ffa-zA-Z'])+$" G "<0>Jon Doe</0>" | |
2386 "^([ \u00c0-\u01ffa-zA-Z'])+$" G "<0>J\u00f8rn</0>" | |
2387 "^([ \u00c0-\u01ffa-zA-Z'])+$" G "<0>Mc'Neelan</0>" | |
2388 "^([ \u00c0-\u01ffa-zA-Z'])+$" "Henry); hacking attempt" | |
2389 "^((([0]?[1-9]|1[0-2])(:|\.)(00|15|30|45)?( )?(AM|am|aM|Am|PM|pm|pM|Pm))|(([0]?[
0-9]|1[0-9]|2[0-3])(:|\.)(00|15|30|45)?))$" G "<0>1:00 PM</0>" | |
2390 "^((([0]?[1-9]|1[0-2])(:|\.)(00|15|30|45)?( )?(AM|am|aM|Am|PM|pm|pM|Pm))|(([0]?[
0-9]|1[0-9]|2[0-3])(:|\.)(00|15|30|45)?))$" G "<0>6:45 am</0>" | |
2391 "^((([0]?[1-9]|1[0-2])(:|\.)(00|15|30|45)?( )?(AM|am|aM|Am|PM|pm|pM|Pm))|(([0]?[
0-9]|1[0-9]|2[0-3])(:|\.)(00|15|30|45)?))$" G "<0>17:30</0>" | |
2392 "^((([0]?[1-9]|1[0-2])(:|\.)(00|15|30|45)?( )?(AM|am|aM|Am|PM|pm|pM|Pm))|(([0]?[
0-9]|1[0-9]|2[0-3])(:|\.)(00|15|30|45)?))$" "4:32 am" | |
2393 "^((([0]?[1-9]|1[0-2])(:|\.)(00|15|30|45)?( )?(AM|am|aM|Am|PM|pm|pM|Pm))|(([0]?[
0-9]|1[0-9]|2[0-3])(:|\.)(00|15|30|45)?))$" "5:30:00 am" | |
2394 "^((([0]?[1-9]|1[0-2])(:|\.)(00|15|30|45)?( )?(AM|am|aM|Am|PM|pm|pM|Pm))|(([0]?[
0-9]|1[0-9]|2[0-3])(:|\.)(00|15|30|45)?))$" "17:01" | |
2395 "(^\d*\.?\d*[1-9]+\d*$)|(^[1-9]+\d*\.\d*$)" G "<0>0.050</0>" | |
2396 "(^\d*\.?\d*[1-9]+\d*$)|(^[1-9]+\d*\.\d*$)" G "<0>5.0000</0>" | |
2397 "(^\d*\.?\d*[1-9]+\d*$)|(^[1-9]+\d*\.\d*$)" G "<0>5000</0>" | |
2398 "(^\d*\.?\d*[1-9]+\d*$)|(^[1-9]+\d*\.\d*$)" "0" | |
2399 "(^\d*\.?\d*[1-9]+\d*$)|(^[1-9]+\d*\.\d*$)" "0.0" | |
2400 "(^\d*\.?\d*[1-9]+\d*$)|(^[1-9]+\d*\.\d*$)" ".0" | |
2401 "^([A-Z]{1}[a-z]{1,})$|^([A-Z]{1}[a-z]{1,}\040[A-Z]{1}[a-z]{1,})$|^([A-Z]{1}[a-z
]{1,}\040[A-Z]{1}[a-z]{1,}\040[A-Z]{1}[a-z]{1,})$|^$" G "<0>Sacramento</0>" | |
2402 "^([A-Z]{1}[a-z]{1,})$|^([A-Z]{1}[a-z]{1,}\040[A-Z]{1}[a-z]{1,})$|^([A-Z]{1}[a-z
]{1,}\040[A-Z]{1}[a-z]{1,}\040[A-Z]{1}[a-z]{1,})$|^$" "<0><2>San Francisco</
2></0>" | |
2403 "^([A-Z]{1}[a-z]{1,})$|^([A-Z]{1}[a-z]{1,}\040[A-Z]{1}[a-z]{1,})$|^([A-Z]{1}[a-z
]{1,}\040[A-Z]{1}[a-z]{1,}\040[A-Z]{1}[a-z]{1,})$|^$" "<0><3>San Luis Obispo
</3></0>" | |
2404 "^([A-Z]{1}[a-z]{1,})$|^([A-Z]{1}[a-z]{1,}\040[A-Z]{1}[a-z]{1,})$|^([A-Z]{1}[a-z
]{1,}\040[A-Z]{1}[a-z]{1,}\040[A-Z]{1}[a-z]{1,})$|^$" "SanFrancisco" | |
2405 "^([A-Z]{1}[a-z]{1,})$|^([A-Z]{1}[a-z]{1,}\040[A-Z]{1}[a-z]{1,})$|^([A-Z]{1}[a-z
]{1,}\040[A-Z]{1}[a-z]{1,}\040[A-Z]{1}[a-z]{1,})$|^$" "SanLuisObispo" | |
2406 "^([A-Z]{1}[a-z]{1,})$|^([A-Z]{1}[a-z]{1,}\040[A-Z]{1}[a-z]{1,})$|^([A-Z]{1}[a-z
]{1,}\040[A-Z]{1}[a-z]{1,}\040[A-Z]{1}[a-z]{1,})$|^$" "San francisco" | |
2407 "^\{?[a-fA-F\d]{8}-([a-fA-F\d]{4}-){3}[a-fA-F\d]{12}\}?$" G "<0>{e02ff0e4-00ad
-090A-c030-0d00a0008ba0}</0>" | |
2408 "^\{?[a-fA-F\d]{8}-([a-fA-F\d]{4}-){3}[a-fA-F\d]{12}\}?$" G "<0>e02ff0e4-00ad-
090A-c030-0d00a0008ba0</0>" | |
2409 "^\{?[a-fA-F\d]{8}-([a-fA-F\d]{4}-){3}[a-fA-F\d]{12}\}?$" "0xe02ff0e400ad090
Ac0300d00a0008ba0" | |
2410 "^\{?[a-fA-F0-9]{8}-([a-fA-F0-9]{4}-){3}[a-fA-F0-9]{12}\}?$" G "<0>{e02ff0e4-0
0ad-090A-c030-0d00a0008ba0}</0>" | |
2411 "^\{?[a-fA-F0-9]{8}-([a-fA-F0-9]{4}-){3}[a-fA-F0-9]{12}\}?$" G "<0>e02ff0e4-00
ad-090A-c030-0d00a0008ba0</0>" | |
2412 "^\{?[a-fA-F0-9]{8}-([a-fA-F0-9]{4}-){3}[a-fA-F0-9]{12}\}?$" "0xe02ff0e400ad
090Ac0300d00a0008ba0" | |
2413 "^([a-zA-Z0-9@*#]{8,15})$" G "<0>@12X*567</0>" | |
2414 "^([a-zA-Z0-9@*#]{8,15})$" G "<0>1#Zv96g@*Yfasd4</0>" | |
2415 "^([a-zA-Z0-9@*#]{8,15})$" G "<0>#67jhgt@erd</0>" | |
2416 "^([a-zA-Z0-9@*#]{8,15})$" "$12X*567" | |
2417 "^([a-zA-Z0-9@*#]{8,15})$" "1#Zv_96" | |
2418 "^([a-zA-Z0-9@*#]{8,15})$" "+678jhgt@erd" | |
2419 '(("|\u0027)[a-z0-9\/\.\?\=\&]*(\.htm|\.asp|\.php|\.jsp)[a-z0-9\/\.\?\=\&]*("|\u
0027))|(href=*?[a-z0-9\/\.\?\=\&"\u0027]*)' G '<0>href="produktsida.asp?katego
ri2=218"</0>' | |
2420 '(("|\u0027)[a-z0-9\/\.\?\=\&]*(\.htm|\.asp|\.php|\.jsp)[a-z0-9\/\.\?\=\&]*("|\u
0027))|(href=*?[a-z0-9\/\.\?\=\&"\u0027]*)' G '<0>href="NuclearTesting.htm"</0
>' | |
2421 '(("|\u0027)[a-z0-9\/\.\?\=\&]*(\.htm|\.asp|\.php|\.jsp)[a-z0-9\/\.\?\=\&]*("|\u
0027))|(href=*?[a-z0-9\/\.\?\=\&"\u0027]*)' 'U Suck' | |
2422 "^(((((0[1-9])|(1\d)|(2[0-8]))-((0[1-9])|(1[0-2])))|((31-((0[13578])|(1[02])))|(
(29|30)-((0[1,3-9])|(1[0-2])))))-((20[0-9][0-9]))|(29-02-20(([02468][048])|([135
79][26]))))$" G "<0>05-01-2002</0>" | |
2423 "^(((((0[1-9])|(1\d)|(2[0-8]))-((0[1-9])|(1[0-2])))|((31-((0[13578])|(1[02])))|(
(29|30)-((0[1,3-9])|(1[0-2])))))-((20[0-9][0-9]))|(29-02-20(([02468][048])|([135
79][26]))))$" G "<0>29-02-2004</0>" | |
2424 "^(((((0[1-9])|(1\d)|(2[0-8]))-((0[1-9])|(1[0-2])))|((31-((0[13578])|(1[02])))|(
(29|30)-((0[1,3-9])|(1[0-2])))))-((20[0-9][0-9]))|(29-02-20(([02468][048])|([135
79][26]))))$" G "<0>31-12-2002</0>" | |
2425 "^(((((0[1-9])|(1\d)|(2[0-8]))-((0[1-9])|(1[0-2])))|((31-((0[13578])|(1[02])))|(
(29|30)-((0[1,3-9])|(1[0-2])))))-((20[0-9][0-9]))|(29-02-20(([02468][048])|([135
79][26]))))$" "1-1-02" | |
2426 "^(((((0[1-9])|(1\d)|(2[0-8]))-((0[1-9])|(1[0-2])))|((31-((0[13578])|(1[02])))|(
(29|30)-((0[1,3-9])|(1[0-2])))))-((20[0-9][0-9]))|(29-02-20(([02468][048])|([135
79][26]))))$" "29-02-2002" | |
2427 "^(((((0[1-9])|(1\d)|(2[0-8]))-((0[1-9])|(1[0-2])))|((31-((0[13578])|(1[02])))|(
(29|30)-((0[1,3-9])|(1[0-2])))))-((20[0-9][0-9]))|(29-02-20(([02468][048])|([135
79][26]))))$" "31-11-2002" | |
2428 "^\d*[0-9](|.\d*[0-9]|,\d*[0-9])?$" G "<0>123456.123456</0>" | |
2429 "^\d*[0-9](|.\d*[0-9]|,\d*[0-9])?$" G "<0>123456,123456</0>" | |
2430 "^\d*[0-9](|.\d*[0-9]|,\d*[0-9])?$" G "<0>123456</0>" | |
2431 "^\d*[0-9](|.\d*[0-9]|,\d*[0-9])?$" "123a.123" | |
2432 "^\d*[0-9](|.\d*[0-9]|,\d*[0-9])?$" "123a,123" | |
2433 "^\d*[0-9](|.\d*[0-9]|,\d*[0-9])?$" "a" | |
2434 "^(ac|AC|al|AL|am|AM|ap|AP|ba|BA|ce|CE|df|DF|es|ES|go|GO|ma|MA|mg|MG|ms|MS|mt|MT
|pa|PA|pb|PB|pe|PE|pi|PI|pr|PR|rj|RJ|rn|RN|ro|RO|rr|RR|rs|RS|sc|SC|se|SE|sp|SP|t
o|TO)$" G "<0>AC</0>" | |
2435 "^(ac|AC|al|AL|am|AM|ap|AP|ba|BA|ce|CE|df|DF|es|ES|go|GO|ma|MA|mg|MG|ms|MS|mt|MT
|pa|PA|pb|PB|pe|PE|pi|PI|pr|PR|rj|RJ|rn|RN|ro|RO|rr|RR|rs|RS|sc|SC|se|SE|sp|SP|t
o|TO)$" G "<0>RJ</0>" | |
2436 "^(ac|AC|al|AL|am|AM|ap|AP|ba|BA|ce|CE|df|DF|es|ES|go|GO|ma|MA|mg|MG|ms|MS|mt|MT
|pa|PA|pb|PB|pe|PE|pi|PI|pr|PR|rj|RJ|rn|RN|ro|RO|rr|RR|rs|RS|sc|SC|se|SE|sp|SP|t
o|TO)$" G "<0>SP</0>" | |
2437 "^(ac|AC|al|AL|am|AM|ap|AP|ba|BA|ce|CE|df|DF|es|ES|go|GO|ma|MA|mg|MG|ms|MS|mt|MT
|pa|PA|pb|PB|pe|PE|pi|PI|pr|PR|rj|RJ|rn|RN|ro|RO|rr|RR|rs|RS|sc|SC|se|SE|sp|SP|t
o|TO)$" "XX" | |
2438 "^(ac|AC|al|AL|am|AM|ap|AP|ba|BA|ce|CE|df|DF|es|ES|go|GO|ma|MA|mg|MG|ms|MS|mt|MT
|pa|PA|pb|PB|pe|PE|pi|PI|pr|PR|rj|RJ|rn|RN|ro|RO|rr|RR|rs|RS|sc|SC|se|SE|sp|SP|t
o|TO)$" "AB" | |
2439 "^(ac|AC|al|AL|am|AM|ap|AP|ba|BA|ce|CE|df|DF|es|ES|go|GO|ma|MA|mg|MG|ms|MS|mt|MT
|pa|PA|pb|PB|pe|PE|pi|PI|pr|PR|rj|RJ|rn|RN|ro|RO|rr|RR|rs|RS|sc|SC|se|SE|sp|SP|t
o|TO)$" "HJ" | |
2440 "^[+]?\d*$" G "<0>0123456789</0>" | |
2441 "^[+]?\d*$" G "<0>1234</0>" | |
2442 "^[+]?\d*$" G "<0>1</0>" | |
2443 "^[+]?\d*$" "1.0?&" | |
2444 "^[+]?\d*$" "a1" | |
2445 "^[+]?\d*$" "2a-" | |
2446 #/<[aA][ ]{0,}([a-zA-Z0-9"'_,.:;!?@$\&()%=\u002f ]|[\-]|[ \f]){0,}>((<(([a-zA
-Z0-9"'_,.:;!?@$\&()%=\u002f ]|[\-]|[ \f]){0,})>([a-zA-Z0-9"'_,.:;!?@$\&()%=\
u002f ]|[\-]|[ \f]){0,})|(([a-zA-Z0-9"'_,.:;!?@$\&()%=\u002f ]|[\-]|[ \f]){0,}
)){1,}/ G "<0><a href='javascript:functionA();'><i>this text is italicized</i
></a></0>" #TODO: Need infinite loop breaking | |
2447 #/<[aA][ ]{0,}([a-zA-Z0-9"'_,.:;!?@$\&()%=\u002f ]|[\-]|[ \f]){0,}>((<(([a-zA
-Z0-9"'_,.:;!?@$\&()%=\u002f ]|[\-]|[ \f]){0,})>([a-zA-Z0-9"'_,.:;!?@$\&()%=\
u002f ]|[\-]|[ \f]){0,})|(([a-zA-Z0-9"'_,.:;!?@$\&()%=\u002f ]|[\-]|[ \f]){0,}
)){1,}/ "<A href='#'><P</A></P>" #TODO: need infinite loop breaking. | |
2448 "^([0-1]?[0-9]|[2][0-3]):([0-5][0-9])$" G "<0>0:00</0>" | |
2449 "^([0-1]?[0-9]|[2][0-3]):([0-5][0-9])$" G "<0>23:00</0>" | |
2450 "^([0-1]?[0-9]|[2][0-3]):([0-5][0-9])$" G "<0>00:59</0>" | |
2451 "^([0-1]?[0-9]|[2][0-3]):([0-5][0-9])$" "0:0" | |
2452 "^([0-1]?[0-9]|[2][0-3]):([0-5][0-9])$" "24:00" | |
2453 "^([0-1]?[0-9]|[2][0-3]):([0-5][0-9])$" "00:60" | |
2454 "^((0[1-9])|(1[0-2]))\/(\d{2})$" G "<0>11/03</0>" | |
2455 "^((0[1-9])|(1[0-2]))\/(\d{2})$" G "<0>01/04</0>" | |
2456 "^((0[1-9])|(1[0-2]))\/(\d{2})$" "13/03" | |
2457 "^((0[1-9])|(1[0-2]))\/(\d{2})$" "10/2003" | |
2458 "<script[^>]*>[\w|\t|\r|\W]*</script>" G '<0><script language=javascript>docum
ent.write("one");</script></0>' | |
2459 "<script[^>]*>[\w|\t|\r|\W]*</script>" "--" | |
2460 "<script[^>]*>[\w|\t|\r|\W]*</script>" "A-Z][a-z]+" | |
2461 #"<script[^>]*>[\w|\t|\r|\W]*</script>" G "<0>strFirstName</0>" # Test Case
damaged? | |
2462 #"<script[^>]*>[\w|\t|\r|\W]*</script>" G "<0>intAgeInYears</0>" # Test Case
damaged? | |
2463 #"<script[^>]*>[\w|\t|\r|\W]*</script>" G "<0>Where the Wild Things Are</0>"
# Test Case damaged? | |
2464 "<script[^>]*>[\w|\t|\r|\W]*</script>" "123" | |
2465 "<script[^>]*>[\w|\t|\r|\W]*</script>" "abc" | |
2466 "<script[^>]*>[\w|\t|\r|\W]*</script>" "this has no caps in it" | |
2467 "(^-\d*\.?\d*[1-9]+\d*$)|(^-[1-9]+\d*\.\d*$)" G "<0>-0.050</0>" | |
2468 "(^-\d*\.?\d*[1-9]+\d*$)|(^-[1-9]+\d*\.\d*$)" G "<0>-5.000</0>" | |
2469 "(^-\d*\.?\d*[1-9]+\d*$)|(^-[1-9]+\d*\.\d*$)" G "<0>-5</0>" | |
2470 "(^-\d*\.?\d*[1-9]+\d*$)|(^-[1-9]+\d*\.\d*$)" "0" | |
2471 "(^-\d*\.?\d*[1-9]+\d*$)|(^-[1-9]+\d*\.\d*$)" "0.0" | |
2472 "(^-\d*\.?\d*[1-9]+\d*$)|(^-[1-9]+\d*\.\d*$)" ".0" | |
2473 "^([2][0]\d{2}\/([0]\d|[1][0-2])\/([0-2]\d|[3][0-1]))$|^([2][0]\d{2}\/([0]\d|[1]
[0-2])\/([0-2]\d|[3][0-1])\s([0-1]\d|[2][0-3])\:[0-5]\d\:[0-5]\d)$" G "<0>2002
/02/03</0>" | |
2474 "^([2][0]\d{2}\/([0]\d|[1][0-2])\/([0-2]\d|[3][0-1]))$|^([2][0]\d{2}\/([0]\d|[1]
[0-2])\/([0-2]\d|[3][0-1])\s([0-1]\d|[2][0-3])\:[0-5]\d\:[0-5]\d)$" G "<0>2002
/02/03 12:12:18</0>" | |
2475 "^([2][0]\d{2}\/([0]\d|[1][0-2])\/([0-2]\d|[3][0-1]))$|^([2][0]\d{2}\/([0]\d|[1]
[0-2])\/([0-2]\d|[3][0-1])\s([0-1]\d|[2][0-3])\:[0-5]\d\:[0-5]\d)$" "2002/02
/36" | |
2476 "^([2][0]\d{2}\/([0]\d|[1][0-2])\/([0-2]\d|[3][0-1]))$|^([2][0]\d{2}\/([0]\d|[1]
[0-2])\/([0-2]\d|[3][0-1])\s([0-1]\d|[2][0-3])\:[0-5]\d\:[0-5]\d)$" "02/03/2
002" | |
2477 "^(\d|,)*\.?\d*$" G "<0>1,000</0>" | |
2478 "^(\d|,)*\.?\d*$" G "<0>3,000.05</0>" | |
2479 "^(\d|,)*\.?\d*$" G "<0>5,000,000</0>" | |
2480 "^(\d|,)*\.?\d*$" "abc" | |
2481 "^(\d|,)*\.?\d*$" "$100,000" | |
2482 "^(\d|,)*\.?\d*$" "Forty" | |
2483 "^\d$" G "<0>1</0>" | |
2484 "^\d$" G "<0>2</0>" | |
2485 "^\d$" G "<0>3</0>" | |
2486 "^\d$" "a" | |
2487 "^\d$" "324" | |
2488 "^\d$" "num" | |
2489 "^[0-9]+$" G "<0>1234567890</0>" | |
2490 "^[0-9]+$" G "<0>1234567890</0>" | |
2491 "^[0-9]+$" G "<0>1234567890</0>" | |
2492 "^[0-9]+$" "http://none" | |
2493 "^[0-9]+$" "http://none" | |
2494 "^[0-9]+$" "http://none" | |
2495 "^.{4,8}$" G "<0>asdf</0>" | |
2496 "^.{4,8}$" G "<0>1234</0>" | |
2497 "^.{4,8}$" G "<0>asdf1234</0>" | |
2498 "^.{4,8}$" "asd" | |
2499 "^.{4,8}$" "123" | |
2500 "^.{4,8}$" "asdfe12345" | |
2501 "^[\w\.=-]+@[\w\.-]+\.[\w]{2,3}$" G "<0>a@a.com</0>" | |
2502 "^[\w\.=-]+@[\w\.-]+\.[\w]{2,3}$" G "<0>a@a.com.au</0>" | |
2503 "^[\w\.=-]+@[\w\.-]+\.[\w]{2,3}$" G "<0>a@a.au</0>" | |
2504 "^[\w\.=-]+@[\w\.-]+\.[\w]{2,3}$" "word" | |
2505 "^[\w\.=-]+@[\w\.-]+\.[\w]{2,3}$" "word@" | |
2506 "^[\w\.=-]+@[\w\.-]+\.[\w]{2,3}$" "@word" | |
2507 "^\d{5}-\d{4}$" G "<0>22222-3333</0>" | |
2508 "^\d{5}-\d{4}$" G "<0>34545-2367</0>" | |
2509 "^\d{5}-\d{4}$" G "<0>56334-2343</0>" | |
2510 "^\d{5}-\d{4}$" "123456789" | |
2511 "^\d{5}-\d{4}$" "A3B 4C5" | |
2512 "^\d{5}-\d{4}$" "55335" | |
2513 "(a|b|c).(a.b)*.b+.c" G "<0>autbfc</0>" | |
2514 "(a|b|c).(a.b)*.b+.c" "attc" | |
2515 '"((\\")|[^"(\\")])+"' G '<0>"test"</0>' | |
2516 '"((\\")|[^"(\\")])+"' G '<0>"escape\"quote"</0>' | |
2517 '"((\\")|[^"(\\")])+"' G '<0>"\\""</0>' | |
2518 '"((\\")|[^"(\\")])+"' "test" | |
2519 '"((\\")|[^"(\\")])+"' '"test' | |
2520 '"((\\")|[^"(\\")])+"' '""test\\"' | |
2521 "((0[1-9])|(1[02]))/\d{2}" G "<0>01/00</0>" | |
2522 "((0[1-9])|(1[02]))/\d{2}" G "<0>12/99</0>" | |
2523 "((0[1-9])|(1[02]))/\d{2}" "13/00" | |
2524 "((0[1-9])|(1[02]))/\d{2}" "12/AS" | |
2525 "^[a-zA-Z]$" G "<0>a</0>" | |
2526 "^[a-zA-Z]$" G "<0>B</0>" | |
2527 "^[a-zA-Z]$" G "<0>c</0>" | |
2528 "^[a-zA-Z]$" "0" | |
2529 "^[a-zA-Z]$" "&" | |
2530 "^[a-zA-Z]$" "AbC" | |
2531 "^[a-zA-Z]+$" G "<0>abc</0>" | |
2532 "^[a-zA-Z]+$" G "<0>ABC</0>" | |
2533 "^[a-zA-Z]+$" G "<0>aBcDeF</0>" | |
2534 "^[a-zA-Z]+$" "abc123" | |
2535 "^[a-zA-Z]+$" "mr." | |
2536 "^[a-zA-Z]+$" "a word" | |
2537 "^\s*[a-zA-Z,\p{Zs}]+\s*$" G "<0>Smith, Ed</0>" | |
2538 "^\s*[a-zA-Z,\p{Zs}]+\s*$" G "<0>Ed Smith</0>" | |
2539 "^\s*[a-zA-Z,\p{Zs}]+\s*$" G "<0>aBcDeFgH</0>" | |
2540 "^\s*[a-zA-Z,\p{Zs}]+\s*$" "a123" | |
2541 "^\s*[a-zA-Z,\p{Zs}]+\s*$" "AB5" | |
2542 "^\s*[a-zA-Z,\p{Zs}]+\s*$" "Mr. Ed" | |
2543 "(\w+?@\w+?\u002E.+)" G "<0>bob@vsnl.com</0>" | |
2544 "(\w+?@\w+?\u002E.+)" "[AABB]" | |
2545 "^\d+$" G "<0>123</0>" | |
2546 "^\d+$" G "<0>10</0>" | |
2547 "^\d+$" G "<0>54</0>" | |
2548 "^\d+$" "-54" | |
2549 "^\d+$" "54.234" | |
2550 "^\d+$" "abc" | |
2551 "^(\+|-)?\d+$" G "<0>-34</0>" | |
2552 "^(\+|-)?\d+$" G "<0>34</0>" | |
2553 "^(\+|-)?\d+$" G "<0>+5</0>" | |
2554 "^(\+|-)?\d+$" "abc" | |
2555 "^(\+|-)?\d+$" "3.1415" | |
2556 "^(\+|-)?\d+$" "-5.3" | |
2557 "foo" G "<0>foo</0>" | |
2558 "foo" "bar" | |
2559 "^[1-5]$" G "<0>1</0>" | |
2560 "^[1-5]$" G "<0>3</0>" | |
2561 "^[1-5]$" G "<0>4</0>" | |
2562 "^[1-5]$" "6" | |
2563 "^[1-5]$" "23" | |
2564 "^[1-5]$" "a" | |
2565 "^[12345]$" G "<0>1</0>" | |
2566 "^[12345]$" G "<0>2</0>" | |
2567 "^[12345]$" G "<0>4</0>" | |
2568 "^[12345]$" "6" | |
2569 "^[12345]$" "-1" | |
2570 "^[12345]$" "abc" | |
2571 "^[\w-\.]+@([\w-]+\.)+[\w-]{2,4}$" G "<0>joe@aol.com</0>" | |
2572 "^[\w-\.]+@([\w-]+\.)+[\w-]{2,4}$" G "<0>joe@wrox.co.uk</0>" | |
2573 "^[\w-\.]+@([\w-]+\.)+[\w-]{2,4}$" G "<0>joe@domain.info</0>" | |
2574 "^[\w-\.]+@([\w-]+\.)+[\w-]{2,4}$" "a@b" | |
2575 "^[\w-\.]+@([\w-]+\.)+[\w-]{2,4}$" "notanemail" | |
2576 "^[\w-\.]+@([\w-]+\.)+[\w-]{2,4}$" "joe@@." | |
2577 "^\w+@[a-zA-Z_]+?\.[a-zA-Z]{2,3}$" G "<0>joe@aol.com</0>" | |
2578 "^\w+@[a-zA-Z_]+?\.[a-zA-Z]{2,3}$" G "<0>ssmith@aspalliance.com</0>" | |
2579 "^\w+@[a-zA-Z_]+?\.[a-zA-Z]{2,3}$" G "<0>a@b.cc</0>" | |
2580 "^\w+@[a-zA-Z_]+?\.[a-zA-Z]{2,3}$" "joe@123aspx.com" | |
2581 "^\w+@[a-zA-Z_]+?\.[a-zA-Z]{2,3}$" "joe@web.info" | |
2582 "^\w+@[a-zA-Z_]+?\.[a-zA-Z]{2,3}$" "joe@company.co.uk" | |
2583 "[\w-]+@([\w-]+\.)+[\w-]+" G "<0>joe@aol.com</0>" | |
2584 "[\w-]+@([\w-]+\.)+[\w-]+" G "<0>a@b.c</0>" | |
2585 "[\w-]+@([\w-]+\.)+[\w-]+" "asdf" | |
2586 "[\w-]+@([\w-]+\.)+[\w-]+" "1234" | |
2587 "\d{4}-?\d{4}-?\d{4}-?\d{4}" G "<0>1234-1234-1234-1234</0>" | |
2588 "\d{4}-?\d{4}-?\d{4}-?\d{4}" G "<0>1234123412341234</0>" | |
2589 "\d{4}-?\d{4}-?\d{4}-?\d{4}" "1234123412345" | |
2590 "^\d{5}$" G "<0>33333</0>" | |
2591 "^\d{5}$" G "<0>55555</0>" | |
2592 "^\d{5}$" G "<0>23445</0>" | |
2593 "^\d{5}$" "abcd" | |
2594 "^\d{5}$" "1324" | |
2595 "^\d{5}$" "as;lkjdf" | |
2596 "(\w+)\s+\1" G "<0>hubba hubba</0>" | |
2597 "(\w+)\s+\1" G "<0>mandate dated</0>" | |
2598 "(\w+)\s+\1" G "<0>an annual</0>" | |
2599 "(\w+)\s+\1" "may day" | |
2600 "(\w+)\s+\1" "gogo" | |
2601 "(\w+)\s+\1" "1212" | |
2602 "^[a-zA-Z0-9\-\.]+\.(com|org|net|mil|edu|COM|ORG|NET|MIL|EDU)$" G "<0>3SquareB
and.com</0>" | |
2603 "^[a-zA-Z0-9\-\.]+\.(com|org|net|mil|edu|COM|ORG|NET|MIL|EDU)$" G "<0>asp.net<
/0>" | |
2604 "^[a-zA-Z0-9\-\.]+\.(com|org|net|mil|edu|COM|ORG|NET|MIL|EDU)$" G "<0>army.mil
</0>" | |
2605 "^[a-zA-Z0-9\-\.]+\.(com|org|net|mil|edu|COM|ORG|NET|MIL|EDU)$" "$SquareBand
.com" | |
2606 "^[a-zA-Z0-9\-\.]+\.(com|org|net|mil|edu|COM|ORG|NET|MIL|EDU)$" "asp/dot.net
" | |
2607 "^[a-zA-Z0-9\-\.]+\.(com|org|net|mil|edu|COM|ORG|NET|MIL|EDU)$" "army.milita
ry" | |
2608 | |
OLD | NEW |