]> git.saurik.com Git - apple/javascriptcore.git/blob - tests/regexp/RegExpTest.data
JavaScriptCore-7600.1.4.16.1.tar.gz
[apple/javascriptcore.git] / tests / regexp / RegExpTest.data
1 # Test data file for JavaScriptCore::RegExp functional test.
2 # The format of this file is:
3 # # comment line
4 # /{pattern}/{flags}
5 # "{string}", {offset}, {return-value}, {match-offset-vector}
6 # Both the pattern and string accept backslash escapes.
7 #
8 /A/
9 "A", 0, 0, (0, 1)
10 "A2", 0, 0, (0, 1)
11 /A2/
12 "A2", 0, 0, (0, 2)
13 /\\u0041/
14 "A", 0, 0, (0, 1)
15 /\\u00412/
16 "A2", 0, 0, (0, 2)
17 /abc/
18 "abc", 0, 0, (0, 3)
19 "xabcy", 0, 1, (1, 4)
20 "ababc", 0, 2, (2, 5)
21 "xbc", 0, -1, (-1, -1)
22 "axc", 0, -1, (-1, -1)
23 "abx", 0, -1, (-1, -1)
24 "b", 0, -1, (-1, -1)
25 /a|ab/
26 "abc", 0, 0, (0, 1)
27 /(a|d|q|)x/i
28 "bcaDxqy", 0, 3, (3, 5, 3, 4)
29 /(a|(e|q))(x|y)/
30 "bcaddxqy", 0, 6, (6, 8, 6, 7, 6, 7, 7, 8)
31 /a*b/
32 "aaadaabaaa", 0, 4, (4, 7)
33 "xxx", 0, -1, (4, 4)
34 /[^abc]def[abc]+/
35 "abxdefbb", 0, 2, (2, 8)
36 /(a*)baa/
37 "ccdaaabaxaabaa", 0, 9, (9, 14, 9, 11)
38 "aabaa", 0, 0, (0, 5, 0, 2)
39 /q(a|b)*q/
40 "xxqababqyy", 0, 2, (2, 8, 6, 7)
41 /(a(.|[^d])c)*/
42 "adcaxc", 0, 0, (0, 6, 3, 6, 4, 5)
43 /(a*)b\\1/
44 "abaaaxaabaayy", 0, 0, (0, 3, 0, 1)
45 "cccdaaabaxaabaayy", 0, 6, (6, 9, 6, 7)
46 "cccdaaabqxaabaayy", 0, 7, (7, 8, 7, 7)
47 /x1g/
48 "x1g", 0, 0, (0, 3)
49 /^x/
50 "x412", 0, 0, (0, 1)
51 /\\u001g/
52 "u001g", 0, 0, (0, 5)
53 /34/g
54 "343443444", 0, 0, (0, 2)
55 "343443444", 2, 2, (2, 4)
56 "343443444", 4, 5, (5, 7)
57 "343443444", 7, -1, (-1, -1)
58 /\\d{1}/g
59 "123456abcde7890", 0, 0, (0, 1)
60 "123456abcde7890", 1, 1, (1, 2)
61 "123456abcde7890", 2, 2, (2, 3)
62 "123456abcde7890", 3, 3, (3, 4)
63 "123456abcde7890", 4, 4, (4, 5)
64 "123456abcde7890", 5, 5, (5, 6)
65 "123456abcde7890", 6, 11, (11, 12)
66 "123456abcde7890", 12, 12, (12, 13)
67 "123456abcde7890", 13, 13, (13, 14)
68 "123456abcde7890", 14, 14, (14, 15)
69 "123456abcde7890", 15, -1, (-1, -1)
70 /\\d{2}/g
71 "123456abcde7890", 0, 0, (0, 2)
72 "123456abcde7890", 2, 2, (2, 4)
73 "123456abcde7890", 4, 4, (4, 6)
74 "123456abcde7890", 6, 11, (11, 13)
75 "123456abcde7890", 13, 13, (13, 15)
76 "123456abcde7890", 15, -1, (-1, -1)
77 /\\D{2}/g
78 "123456abcde7890", 0, 6, (6, 8)
79 "123456abcde7890", 8, 8, (8, 10)
80 "123456abcde7890", 10, -1, (-1, -1)
81 /([\\d]{5})([-\\ ]?[\\d]{4})?$/
82 "Boston, Mass. 02134", 0, 14, (14, 19, 14, 19, -1, -1)
83 /l/
84 "hello", 0, 2, (2, 3)
85 "hello", 3, 3, (3, 4)
86 "hello", 4, -1, (-1, -1)
87 /\\s/g
88 "x, x, x, x", 0, 2, (2, 3)
89 "x, x, x, x", 3, 5, (5, 6)
90 "x, x, x, x", 6, 8, (8, 9)
91 "x, x, x, x", 9, -1, (-1, -1)
92 /((a)|(ab))((c)|(bc))/
93 "abc", 0, 0, (0, 3, 0, 1, 0, 1, -1, -1, 1, 3, -1, -1, 1, 3)
94 /a[a-z]{2,4}/
95 "abcdefghi", 0, 0, (0, 5)
96 /a[a-z]{2,4}?/
97 "abcdefghi", 0, 0, (0, 3)
98 /(aa|aabaac|ba|b|c)*/
99 "aabaac", 0, 0, (0, 4, 2, 4)
100 /^(a+)\\1*,\\1+$/
101 "aaaaaaaaaa,aaaaaaaaaaaaaaa", 0, 0, (0, 26, 0, 5)
102 /(z)((a+)?(b+)?(c))*/
103 "zaacbbbcac", 0, 0, (0, 10, 0, 1, 8, 10, 8, 9, -1, -1, 9, 10)
104 /(a*)*/
105 "b", 0, 0, (0, 0, -1, -1)
106 "ab", 0, 0, (0, 1, 0, 1)
107 /(a*)b\\1+/
108 "baaaac", 0, 0, (0, 1, 0, 0)
109 /(?=(a+))/
110 "baaabac", 0, 1, (1, 1, 1, 4)
111 /(?=(a+))a*b\\1/
112 "baaabac", 0, 3, (3, 6, 3, 4)
113 /(.*?)a(?!(a+)b\\2c)\\2(.*)/
114 "baaabaac", 0, 0, (0, 8, 0, 2, -1, -1, 3, 8)
115 /\\w\\s\\w/g
116 "a b c d e", 0, 0, (0, 3)
117 "a b c d e", 3, 4, (4, 7)
118 "a b c d e", 7, -1, (-1, -1)
119 /\\d\\d\\d/g
120 "12345678", 0, 0, (0, 3)
121 "12345678", 3, 3, (3, 6)
122 "12345678", 6, -1, (-1, -1)
123 /abc/gi
124 "AbcaBcabC", 0, 0, (0, 3)
125 "AbcaBcabC", 3, 3, (3, 6)
126 "AbcaBcabC", 6, 6, (6, 9)
127 "AbcaBcabC", 9, -1, (-1, -1)
128 /abc/i
129 "AbcaBcabC", 0, 0, (0, 3)
130 "ABC", 0, 0, (0, 3)
131 "XABCY", 0, 1, (1, 4)
132 "ABABC", 0, 2, (2, 5)
133 "XBC", 0, -1, (-1, -1)
134 "AXC", 0, -1, (-1, -1)
135 "ABX", 0, -1, (-1, -1)
136 "aaxabxbaxbbx", 0, -1, (-1, -1)
137 /ab*c/
138 "abc", 0, 0, (0, 3)
139 /ab*bc/
140 "abc", 0, 0, (0, 3)
141 "abbc", 0, 0, (0, 4)
142 "abbbbc", 0, 0, (0, 6)
143 /.{1}/
144 "abbbbc", 0, 0, (0, 1)
145 /.{3,4}/
146 "abbbbc", 0, 0, (0, 4)
147 /ab{0,}bc/
148 "abbbbc", 0, 0, (0, 6)
149 /ab+bc/
150 "abbc", 0, 0, (0, 4)
151 "abbbbc", 0, 0, (0, 6)
152 "abc", 0, -1, (0, 9)
153 "abq", 0, -1, (0, 9)
154 "abc", 0, -1, (0, -1)
155 "abq", 0, -1, (0, -1)
156 /ab{1,}bc/
157 "abbbbc", 0, 0, (0, 6)
158 "abq", 0, -1, (0, 9)
159 /ab{1,3}bc/
160 "abbbbc", 0, 0, (0, 6)
161 "abbbc", 0, 0, (0, 5)
162 "abbc", 0, 0, (0, 4)
163 "abc", 0, -1, (0, -1)
164 "abbbbbc", 0, -1, (4, -1)
165 /ab{3,4}bc/
166 "abbbbc", 0, 0, (0, 6)
167 /ab?bc/
168 "abbc", 0, 0, (0, 4)
169 "abc", 0, 0, (0, 3)
170 "abbbbc", 0, -1, (4, 9)
171 /ab{0,1}bc/
172 "abc", 0, 0, (0, 3)
173 /ab?c/
174 "abc", 0, 0, (0, 3)
175 /ab{0,1}c/
176 "abc", 0, 0, (0, 3)
177 /^abc$/
178 "abc", 0, 0, (0, 3)
179 "abcc", 0, -1, (-1, -1)
180 "aabc", 0, -1, (-1, -1)
181 "abbbbc", 0, -1, (-1, -1)
182 "qqq\nabc", 0, -1, (-1, -1)
183 "abc\nzzz", 0, -1, (-1, -1)
184 "qqq\nabc\nzzz", 0, -1, (-1, -1)
185 /^abc/
186 "abcc", 0, 0, (0, 3)
187 "abcdefghi", 0, 0, (0, 3)
188 "abc", 0, 0, (0, 3)
189 "xyzabc", 0, -1, (-1, -1)
190 /abc$/
191 "aabc", 0, 1, (1, 4)
192 "aabcd", 0, -1, (-1, -1)
193 "abc", 0, 0, (0, 3)
194 "abc\n", 0, -1, (-1, -1)
195 "abc\ndef", 0, -1, (-1, -1)
196 /^/
197 "abc", 0, 0, (0, 0)
198 "test", 0, 0, (0, 0)
199 /$/
200 "abc", 0, 3, (3, 3)
201 "a\nb\n", 0, 4, (4, 4)
202 "b\na\n", 0, 4, (4, 4)
203 "b\na", 0, 3, (3, 3)
204 "xxx", 0, 3, (3, 3)
205 "xxxx", 0, 4, (4, 4)
206 /a.c/
207 "abc", 0, 0, (0, 3)
208 "axc", 0, 0, (0, 3)
209 /a.*c/
210 "axyzc", 0, 0, (0, 5)
211 "axyzd", 0, -1, (4, 10)
212 /a[bc]d/
213 "abd", 0, 0, (0, 3)
214 "abc", 0, -1, (-1, -1)
215 "axyzd", 0, -1, (-1, -1)
216 /a[b-d]e/
217 "ace", 0, 0, (0, 3)
218 "abd", 0, -1, (-1, -1)
219 /a[b-d]/
220 "aac", 0, 1, (1, 3)
221 /a[-b]/
222 "a-", 0, 0, (0, 2)
223 /a[b-]/
224 "a-", 0, 0, (0, 2)
225 /a]/
226 "a]", 0, 0, (0, 2)
227 /a[^bc]d/
228 "aed", 0, 0, (0, 3)
229 "abd", 0, -1, (-1, -1)
230 /a[^-b]c/
231 "adc", 0, 0, (0, 3)
232 "a-c", 0, -1, (-1, -1)
233 /\\ba\\b/
234 "a-", 0, 0, (0, 1)
235 "-a", 0, 1, (1, 2)
236 "-a-", 0, 1, (1, 2)
237 /\\By\\b/
238 "xy", 0, 1, (1, 2)
239 /\\by\\B/
240 "yz", 0, 0, (0, 1)
241 /\\By\\B/
242 "xyz", 0, 1, (1, 2)
243 /a\\Sb/
244 "a-b", 0, 0, (0, 3)
245 "a\tb a b a-b", 0, 8, (8, 11)
246 "a b", 0, -1, (-1, -1)
247 /\\d/
248 "1", 0, 0, (0, 1)
249 "-", 0, -1, (-1, -1)
250 "_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ\f\n\r\t\v~`!@#$%^&*()-+={[}]|\\:;'<,>./? \"", 0, -1, (-1, -1)
251 "ab1cd", 0, 2, (2, 3)
252 "ab2cd", 0, 2, (2, 3)
253 "ab3cd", 0, 2, (2, 3)
254 "ab4cd", 0, 2, (2, 3)
255 "ab5cd", 0, 2, (2, 3)
256 "ab6cd", 0, 2, (2, 3)
257 "ab7cd", 0, 2, (2, 3)
258 "ab8cd", 0, 2, (2, 3)
259 "ab9cd", 0, 2, (2, 3)
260 "ab0cd", 0, 2, (2, 3)
261 "\u01003", 0, 1, (1, 2)
262 /\\D/
263 "-", 0, 0, (0, 1)
264 "1", 0, -1, (-1, -1)
265 "1234567890", 0, -1, (-1, -1)
266 "12_34", 0, 2, (2, 3)
267 "12a34", 0, 2, (2, 3)
268 "12b34", 0, 2, (2, 3)
269 "1X2", 0, 1, (1, 2)
270 "1\u01002", 0, 1, (1, 2)
271 /[\\w]/
272 "a", 0, 0, (0, 1)
273 "-", 0, -1, (-1, -1)
274 /[\\W]/
275 "-", 0, 0, (0, 1)
276 "a", 0, -1, (-1, -1)
277 /a[\\S]b/
278 "a-b", 0, 0, (0, 3)
279 "a b", 0, -1, (-1, -1)
280 /[\\d]/
281 "1", 0, 0, (0, 1)
282 "-", 0, -1, (-1, -1)
283 /[\\D]/
284 "-", 0, 0, (0, 1)
285 "1", 0, -1, (-1, -1)
286 /ab|cd/
287 "abc", 0, 0, (0, 2)
288 "abcd", 0, 0, (0, 2)
289 /()ef/
290 "def", 0, 1, (1, 3, 1, 1)
291 /a\\(b/
292 "a(b", 0, 0, (0, 3)
293 /a\\(*b/
294 "ab", 0, 0, (0, 2)
295 "a((b", 0, 0, (0, 4)
296 /a\\\\b/
297 "a\\b", 0, 0, (0, 3)
298 "a\b", 0, -1, (-1, -1)
299 /((a))/
300 "abc", 0, 0, (0, 1, 0, 1, 0, 1)
301 /(a)b(c)/
302 "abc", 0, 0, (0, 3, 0, 1, 2, 3)
303 /a+b+c/
304 "aabbabc", 0, 4, (4, 7)
305 /a{1,}b{1,}c/
306 "aabbabc", 0, 4, (4, 7)
307 /a.+?c/
308 "abcabc", 0, 0, (0, 3)
309 /(a+|b)*/
310 "ab", 0, 0, (0, 2, 1, 2)
311 /(a+|b){0,}/
312 "ab", 0, 0, (0, 2, 1, 2)
313 /(a+|b)+/
314 "ab", 0, 0, (0, 2, 1, 2)
315 /(a+|b){1,}/
316 "ab", 0, 0, (0, 2, 1, 2)
317 /(a+|b)?/
318 "ab", 0, 0, (0, 1, 0, 1)
319 /(a+|b){0,1}/
320 "ab", 0, 0, (0, 1, 0, 1)
321 /[^ab]*/
322 "cde", 0, 0, (0, 3)
323 /([abc])*d/
324 "abbbcd", 0, 0, (0, 6, 4, 5)
325 /([abc])*bcd/
326 "abcd", 0, 0, (0, 4, 0, 1)
327 /a|b|c|d|e/
328 "e", 0, 0, (0, 1)
329 /(a|b|c|d|e)f/
330 "ef", 0, 0, (0, 2, 0, 1)
331 /abcd*efg/
332 "abcdefg", 0, 0, (0, 7)
333 /ab*/
334 "xabyabbbz", 0, 1, (1, 3)
335 "xayabbbz", 0, 1, (1, 2)
336 /(ab|cd)e/
337 "abcde", 0, 2, (2, 5, 2, 4)
338 /[abhgefdc]ij/
339 "hij", 0, 0, (0, 3)
340 /(abc|)ef/
341 "abcdef", 0, 4, (4, 6, 4, 4)
342 /(a|b)c*d/
343 "abcd", 0, 1, (1, 4, 1, 2)
344 /(ab|ab*)bc/
345 "abc", 0, 0, (0, 3, 0, 1)
346 /a([bc]*)c*/
347 "abc", 0, 0, (0, 3, 1, 3)
348 /a([bc]*)(c*d)/
349 "abcd", 0, 0, (0, 4, 1, 3, 3, 4)
350 /a([bc]+)(c*d)/
351 "abcd", 0, 0, (0, 4, 1, 3, 3, 4)
352 /a([bc]*)(c+d)/
353 "abcd", 0, 0, (0, 4, 1, 2, 2, 4)
354 /a[bcd]*dcdcde/
355 "adcdcde", 0, 0, (0, 7)
356 /(ab|a)b*c/
357 "abc", 0, 0, (0, 3, 0, 2)
358 /((a)(b)c)(d)/
359 "abcd", 0, 0, (0, 4, 0, 3, 0, 1, 1, 2, 3, 4)
360 /[a-zA-Z_][a-zA-Z0-9_]*/
361 "alpha", 0, 0, (0, 5)
362 /^a(bc+|b[eh])g|.h$/
363 "abh", 0, 1, (1, 3, -1, -1)
364 /(bc+d$|ef*g.|h?i(j|k))/
365 "effgz", 0, 0, (0, 5, 0, 5, -1, -1)
366 "ij", 0, 0, (0, 2, 0, 2, 1, 2)
367 "reffgz", 0, 1, (1, 6, 1, 6, -1, -1)
368 "effg", 0, -1, (3, 10, -1, -1, -1, -1)
369 "bcdd", 0, -1, (3, 10, -1, -1, -1, -1)
370 "effg", 0, -1, (3, -1, -1, -1, -1, -1)
371 "bcdd", 0, -1, (3, -1, -1, -1, -1, -1)
372 /((((((((((a))))))))))/
373 "a", 0, 0, (0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1)
374 "a!", 0, 0, (0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1)
375 /((((((((((a))))))))))\\10/
376 "aa", 0, 0, (0, 2, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1)
377 /(((((((((a)))))))))/
378 "a", 0, 0, (0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1)
379 /(.*)c(.*)/
380 "abcde", 0, 0, (0, 5, 0, 2, 3, 5)
381 /abcd/
382 "abcd", 0, 0, (0, 4)
383 /a(bc)d/
384 "abcd", 0, 0, (0, 4, 1, 3)
385 /a[-]?c/
386 "ac", 0, 0, (0, 2)
387 /(abc)\\1/
388 "abcabc", 0, 0, (0, 6, 0, 3)
389 /([a-c]*)\\1/
390 "abcabc", 0, 0, (0, 6, 0, 3)
391 /(a)|\\1/
392 "a", 0, 0, (0, 1, 0, 1)
393 "x", 0, 0, (0, 0, -1, -1)
394 "ab", 0, 0, (0, 1, 0, 1)
395 /(([a-c])b*?\\2)*/
396 "ababbbcbc", 0, 0, (0, 5, 3, 5, 3, 4)
397 /(([a-c])b*?\\2){3}/
398 "ababbbcbc", 0, 0, (0, 9, 6, 9, 6, 7)
399 /ab*c/i
400 "ABC", 0, 0, (0, 3)
401 /ab*bc/i
402 "ABC", 0, 0, (0, 3)
403 "ABBC", 0, 0, (0, 4)
404 /ab*?bc/i
405 "ABBBBC", 0, 0, (0, 6)
406 /ab{0,}?bc/i
407 "ABBBBC", 0, 0, (0, 6)
408 /ab+?bc/i
409 "ABBC", 0, 0, (0, 4)
410 /ab+bc/i
411 "ABBBBC", 0, 0, (0, 6)
412 "ABC", 0, -1, (0, 10)
413 "ABQ", 0, -1, (0, 10)
414 "ABC", 0, -1, (0, -1)
415 "ABQ", 0, -1, (0, -1)
416 /ab{1,}?bc/i
417 "ABBBBC", 0, 0, (0, 6)
418 /ab{1,3}?bc/i
419 "ABBBBC", 0, 0, (0, 6)
420 /ab{3,4}?bc/i
421 "ABBBBC", 0, 0, (0, 6)
422 /ab??bc/i
423 "ABBC", 0, 0, (0, 4)
424 "ABC", 0, 0, (0, 3)
425 "ABBBBC", 0, -1, (4, 10)
426 /ab{0,1}?bc/i
427 "ABC", 0, 0, (0, 3)
428 /ab??c/i
429 "ABC", 0, 0, (0, 3)
430 /ab{0,1}?c/i
431 "ABC", 0, 0, (0, 3)
432 /^abc$/i
433 "ABC", 0, 0, (0, 3)
434 "ABCC", 0, -1, (-1, -1)
435 "AABC", 0, -1, (-1, -1)
436 "ABBBBC", 0, -1, (-1, -1)
437 /^abc/i
438 "ABCC", 0, 0, (0, 3)
439 /abc$/i
440 "AABC", 0, 1, (1, 4)
441 /^/i
442 "ABC", 0, 0, (0, 0)
443 /$/i
444 "ABC", 0, 3, (3, 3)
445 /a.c/i
446 "ABC", 0, 0, (0, 3)
447 "AXC", 0, 0, (0, 3)
448 /a.*?c/i
449 "AXYZC", 0, 0, (0, 5)
450 "ABCABC", 0, 0, (0, 3)
451 /a[bc]d/i
452 "ABD", 0, 0, (0, 3)
453 "ABC", 0, -1, (-1, -1)
454 /a[b-d]e/i
455 "ACE", 0, 0, (0, 3)
456 "ABD", 0, -1, (-1, -1)
457 "ABC", 0, -1, (-1, -1)
458 /a[b-d]/i
459 "AAC", 0, 1, (1, 3)
460 /a[-b]/i
461 "A-", 0, 0, (0, 2)
462 /a[b-]/i
463 "A-", 0, 0, (0, 2)
464 /a]/i
465 "A]", 0, 0, (0, 2)
466 /a[^bc]d/i
467 "AED", 0, 0, (0, 3)
468 "ABD", 0, -1, (-1, -1)
469 /a[^-b]c/i
470 "ADC", 0, 0, (0, 3)
471 "A-C", 0, -1, (-1, -1)
472 "ABD", 0, -1, (-1, -1)
473 /ab|cd/i
474 "ABC", 0, 0, (0, 2)
475 "ABCD", 0, 0, (0, 2)
476 /()ef/i
477 "DEF", 0, 1, (1, 3, 1, 1)
478 /a\\(b/i
479 "A(B", 0, 0, (0, 3)
480 /a\\(*b/i
481 "AB", 0, 0, (0, 2)
482 "A((B", 0, 0, (0, 4)
483 /a\\\\b/i
484 "A\\B", 0, 0, (0, 3)
485 "AB", 0, -1, (-1, -1)
486 /((a))/i
487 "ABC", 0, 0, (0, 1, 0, 1, 0, 1)
488 /(a)b(c)/i
489 "ABC", 0, 0, (0, 3, 0, 1, 2, 3)
490 /a+b+c/i
491 "AABBABC", 0, 4, (4, 7)
492 /a{1,}b{1,}c/i
493 "AABBABC", 0, 4, (4, 7)
494 /a.+?c/i
495 "ABCABC", 0, 0, (0, 3)
496 /a.{0,5}?c/i
497 "ABCABC", 0, 0, (0, 3)
498 /(a+|b)*/i
499 "AB", 0, 0, (0, 2, 1, 2)
500 /(a+|b){0,}/i
501 "AB", 0, 0, (0, 2, 1, 2)
502 /(a+|b)+/i
503 "AB", 0, 0, (0, 2, 1, 2)
504 /(a+|b){1,}/i
505 "AB", 0, 0, (0, 2, 1, 2)
506 /(a+|b)?/i
507 "AB", 0, 0, (0, 1, 0, 1)
508 /(a+|b){0,1}/i
509 "AB", 0, 0, (0, 1, 0, 1)
510 /(a+|b){0,1}?/i
511 "AB", 0, 0, (0, 0, -1, -1)
512 /[^ab]*/i
513 "CDE", 0, 0, (0, 3)
514 /([abc])*d/i
515 "ABBBCD", 0, 0, (0, 6, 4, 5)
516 /([abc])*bcd/i
517 "ABCD", 0, 0, (0, 4, 0, 1)
518 /a|b|c|d|e/i
519 "E", 0, 0, (0, 1)
520 /(a|b|c|d|e)f/i
521 "EF", 0, 0, (0, 2, 0, 1)
522 /abcd*efg/i
523 "ABCDEFG", 0, 0, (0, 7)
524 /ab*/i
525 "XABYABBBZ", 0, 1, (1, 3)
526 "XAYABBBZ", 0, 1, (1, 2)
527 /(ab|cd)e/i
528 "ABCDE", 0, 2, (2, 5, 2, 4)
529 /[abhgefdc]ij/i
530 "HIJ", 0, 0, (0, 3)
531 /(abc|)ef/i
532 "ABCDEF", 0, 4, (4, 6, 4, 4)
533 /(a|b)c*d/i
534 "ABCD", 0, 1, (1, 4, 1, 2)
535 /(ab|ab*)bc/i
536 "ABC", 0, 0, (0, 3, 0, 1)
537 /a([bc]*)c*/i
538 "ABC", 0, 0, (0, 3, 1, 3)
539 /a([bc]*)(c*d)/i
540 "ABCD", 0, 0, (0, 4, 1, 3, 3, 4)
541 /a([bc]+)(c*d)/i
542 "ABCD", 0, 0, (0, 4, 1, 3, 3, 4)
543 /a([bc]*)(c+d)/i
544 "ABCD", 0, 0, (0, 4, 1, 2, 2, 4)
545 /a[bcd]*dcdcde/i
546 "ADCDCDE", 0, 0, (0, 7)
547 /(ab|a)b*c/i
548 "ABC", 0, 0, (0, 3, 0, 2)
549 /((a)(b)c)(d)/i
550 "ABCD", 0, 0, (0, 4, 0, 3, 0, 1, 1, 2, 3, 4)
551 /[a-zA-Z_][a-zA-Z0-9_]*/i
552 "ALPHA", 0, 0, (0, 5)
553 /^a(bc+|b[eh])g|.h$/i
554 "ABH", 0, 1, (1, 3, -1, -1)
555 /(bc+d$|ef*g.|h?i(j|k))/i
556 "EFFGZ", 0, 0, (0, 5, 0, 5, -1, -1)
557 "IJ", 0, 0, (0, 2, 0, 2, 1, 2)
558 "REFFGZ", 0, 1, (1, 6, 1, 6, -1, -1)
559 "EFFG", 0, -1, (3, 10, -1, -1, -1, -1)
560 "BCDD", 0, -1, (3, 10, -1, -1, -1, -1)
561 "ADCDCDE", 0, -1, (6, -1, -1, -1, -1, -1)
562 "EFFG", 0, -1, (3, -1, -1, -1, -1, -1)
563 "BCDD", 0, -1, (3, -1, -1, -1, -1, -1)
564 /((((((((((a))))))))))/i
565 "A", 0, 0, (0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1)
566 "A!", 0, 0, (0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1)
567 /((((((((((a))))))))))\\10/i
568 "AA", 0, 0, (0, 2, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1)
569 /(((((((((a)))))))))/i
570 "A", 0, 0, (0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1)
571 /(?:(?:(?:(?:(?:(?:(?:(?:(?:(a))))))))))/i
572 "A", 0, 0, (0, 1, 0, 1)
573 /(?:(?:(?:(?:(?:(?:(?:(?:(?:(a|b|c))))))))))/i
574 "C", 0, 0, (0, 1, 0, 1)
575 /(.*)c(.*)/i
576 "ABCDE", 0, 0, (0, 5, 0, 2, 3, 5)
577 /abcd/i
578 "ABCD", 0, 0, (0, 4)
579 /a(bc)d/i
580 "ABCD", 0, 0, (0, 4, 1, 3)
581 /a[-]?c/i
582 "AC", 0, 0, (0, 2)
583 /(abc)\\1/i
584 "ABCABC", 0, 0, (0, 6, 0, 3)
585 "abcabc", 0, 0, (0, 6, 0, 3)
586 "ABCabc", 0, 0, (0, 6, 0, 3)
587 "abcABC", 0, 0, (0, 6, 0, 3)
588 /([a-c]*)\\1/i
589 "ABCABC", 0, 0, (0, 6, 0, 3)
590 /a(?!b)./
591 "abad", 0, 2, (2, 4)
592 /a(?=d)./
593 "abad", 0, 2, (2, 4)
594 /a(?=c|d)./
595 "abad", 0, 2, (2, 4)
596 /a(?:b|c|d)(.)/
597 "ace", 0, 0, (0, 3, 2, 3)
598 /a(?:b|c|d)*(.)/
599 "ace", 0, 0, (0, 3, 2, 3)
600 /a(?:b|c|d)+?(.)/
601 "ace", 0, 0, (0, 3, 2, 3)
602 "acdbcdbe", 0, 0, (0, 3, 2, 3)
603 /a(?:b|c|d)+(.)/
604 "acdbcdbe", 0, 0, (0, 8, 7, 8)
605 /a(?:b|c|d){2}(.)/
606 "acdbcdbe", 0, 0, (0, 4, 3, 4)
607 /a(?:b|c|d){4,5}(.)/
608 "acdbcdbe", 0, 0, (0, 7, 6, 7)
609 /a(?:b|c|d){4,5}?(.)/
610 "acdbcdbe", 0, 0, (0, 6, 5, 6)
611 /((foo)|(bar))*/
612 "foobar", 0, 0, (0, 6, 3, 6, -1, -1, 3, 6)
613 /a(?:b|c|d){6,7}(.)/
614 "acdbcdbe", 0, 0, (0, 8, 7, 8)
615 /a(?:b|c|d){6,7}?(.)/
616 "acdbcdbe", 0, 0, (0, 8, 7, 8)
617 /a(?:b|c|d){5,6}(.)/
618 "acdbcdbe", 0, 0, (0, 8, 7, 8)
619 /a(?:b|c|d){5,6}?(.)/
620 "acdbcdbe", 0, 0, (0, 7, 6, 7)
621 /a(?:b|c|d){5,7}(.)/
622 "acdbcdbe", 0, 0, (0, 8, 7, 8)
623 /a(?:b|c|d){5,7}?(.)/
624 "acdbcdbe", 0, 0, (0, 7, 6, 7)
625 /a(?:b|(c|e){1,2}?|d)+?(.)/
626 "ace", 0, 0, (0, 3, 1, 2, 2, 3)
627 /^(.+)?B/
628 "AB", 0, 0, (0, 2, 0, 1)
629 /^([^a-z])|(\\^)$/
630 ".", 0, 0, (0, 1, 0, 1, -1, -1)
631 /^[<>]&/
632 "<&OUT", 0, 0, (0, 2)
633 /((a{4})+)/
634 "aaaaaaaaa", 0, 0, (0, 8, 0, 8, 4, 8)
635 /(((aa){2})+)/
636 "aaaaaaaaaa", 0, 0, (0, 8, 0, 8, 4, 8, 6, 8)
637 /(((a{2}){2})+)/
638 "aaaaaaaaaa", 0, 0, (0, 8, 0, 8, 4, 8, 6, 8)
639 /(?:(f)(o)(o)|(b)(a)(r))*/
640 "foobar", 0, 0, (0, 6, -1, -1, -1, -1, -1, -1, 3, 4, 4, 5, 5, 6)
641 /(?:..)*a/
642 "aba", 0, 0, (0, 3)
643 /(?:..)*?a/
644 "aba", 0, 0, (0, 1)
645 /^(?:b|a(?=(.)))*\\1/
646 "abc", 0, 0, (0, 2, -1, -1)
647 /^(){3,5}/
648 "abc", 0, 0, (0, 0, 0, 0)
649 /^(a+)*ax/
650 "aax", 0, 0, (0, 3, 0, 1)
651 /^((a|b)+)*ax/
652 "aax", 0, 0, (0, 3, 0, 1, 0, 1)
653 /^((a|bc)+)*ax/
654 "aax", 0, 0, (0, 3, 0, 1, 0, 1)
655 /(a|x)*ab/
656 "cab", 0, 1, (1, 3, -1, -1)
657 /(a)*ab/
658 "cab", 0, 1, (1, 3, -1, -1)
659 /(?:c|d)(?:)(?:a(?:)(?:b)(?:b(?:))(?:b(?:)(?:b)))/
660 "cabbbb", 0, 0, (0, 6)
661 /(?:c|d)(?:)(?:aaaaaaaa(?:)(?:bbbbbbbb)(?:bbbbbbbb(?:))(?:bbbbbbbb(?:)(?:bbbbbbbb)))/
662 "caaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb", 0, 0, (0, 41)
663 /(ab)\\d\\1/i
664 "Ab4ab", 0, 0, (0, 5, 0, 2)
665 "ab4Ab", 0, 0, (0, 5, 0, 2)
666 /foo\\w*\\d{4}baz/
667 "foobar1234baz", 0, 0, (0, 13)
668 /x(~~)*(?:(?:F)?)?/
669 "x~~", 0, 0, (0, 3, 1, 3)
670 /(?=(a+?))(\\1ab)/
671 "aaab", 0, 1, (1, 4, 1, 2, 1, 4)
672 /(\\w+:)+/
673 "one:", 0, 0, (0, 4, 0, 4)
674 /([\\w:]+::)?(\\w+)$/
675 "abcd", 0, 0, (0, 4, -1, -1, 0, 4)
676 "xy:z:::abcd", 0, 0, (0, 11, 0, 7, 7, 11)
677 "abcd:", 0, -1, (6, 11, -1, -1, -1, -1)
678 "abcd:", 0, -1, (6, -1, -1, -1, -1, -1)
679 /^[^bcd]*(c+)/
680 "aexycd", 0, 0, (0, 5, 4, 5)
681 /(a*)b+/
682 "caab", 0, 1, (1, 4, 1, 3)
683 /([[:]+)/
684 "a:[b]:", 0, 1, (1, 3, 1, 3)
685 /([[=]+)/
686 "a=[b]=", 0, 1, (1, 3, 1, 3)
687 /([[.]+)/
688 "a.[b].", 0, 1, (1, 3, 1, 3)
689 /$/m
690 "a\nb\n", 0, 1, (1, 1)
691 "b\na\n", 0, 1, (1, 1)
692 "b\na", 0, 1, (1, 1)
693 /a$/
694 "b\na", 0, 2, (2, 3)
695 "a\nb\n", 0, -1, (-1, -1)
696 "aaab", 0, -1, (-1, -1)
697 /a$/m
698 "a\nb\n", 0, 0, (0, 1)
699 "b\na\n", 0, 2, (2, 3)
700 "b\na", 0, 2, (2, 3)
701 /aa$/
702 "b\naa", 0, 2, (2, 4)
703 "aa\nb\n", 0, -1, (-1, -1)
704 "ac\nb\n", 0, -1, (-1, -1)
705 "b\nac\n", 0, -1, (-1, -1)
706 "b\nac", 0, -1, (-1, -1)
707 "ca\nb\n", 0, -1, (-1, -1)
708 "b\nca\n", 0, -1, (-1, -1)
709 "b\nca", 0, -1, (-1, -1)
710 /aa$/m
711 "aa\nb\n", 0, 0, (0, 2)
712 "b\naa\n", 0, 2, (2, 4)
713 "b\naa", 0, 2, (2, 4)
714 "ac\nb\n", 0, -1, (-1, -1)
715 "b\nac\n", 0, -1, (-1, -1)
716 "b\nac", 0, -1, (-1, -1)
717 "ca\nb\n", 0, -1, (-1, -1)
718 "b\nca\n", 0, -1, (-1, -1)
719 "b\nca", 0, -1, (-1, -1)
720 /ab$/
721 "b\nab", 0, 2, (2, 4)
722 "ab\nb\n", 0, -1, (-1, -1)
723 "ac\nb\n", 0, -1, (-1, -1)
724 "b\nac\n", 0, -1, (-1, -1)
725 "b\nac", 0, -1, (-1, -1)
726 "ca\nb\n", 0, -1, (-1, -1)
727 "b\nca\n", 0, -1, (-1, -1)
728 "b\nca", 0, -1, (-1, -1)
729 /ab$/m
730 "ab\nb\n", 0, 0, (0, 2)
731 "b\nab\n", 0, 2, (2, 4)
732 "b\nab", 0, 2, (2, 4)
733 "ac\nb\n", 0, -1, (-1, -1)
734 "b\nac\n", 0, -1, (-1, -1)
735 "b\nac", 0, -1, (-1, -1)
736 "ca\nb\n", 0, -1, (-1, -1)
737 "b\nca\n", 0, -1, (-1, -1)
738 "b\nca", 0, -1, (-1, -1)
739 /abb$/
740 "b\nabb", 0, 2, (2, 5)
741 "abb\nb\n", 0, -1, (-1, -1)
742 "ac\nb\n", 0, -1, (-1, -1)
743 "b\nac\n", 0, -1, (-1, -1)
744 "b\nac", 0, -1, (-1, -1)
745 "ca\nb\n", 0, -1, (-1, -1)
746 "b\nca\n", 0, -1, (-1, -1)
747 "b\nca", 0, -1, (-1, -1)
748 /abb$/m
749 "abb\nb\n", 0, 0, (0, 3)
750 "b\nabb\n", 0, 2, (2, 5)
751 "b\nabb", 0, 2, (2, 5)
752 "ac\nb\n", 0, -1, (-1, -1)
753 "b\nac\n", 0, -1, (-1, -1)
754 "b\nac", 0, -1, (-1, -1)
755 "ca\nb\n", 0, -1, (-1, -1)
756 "b\nca\n", 0, -1, (-1, -1)
757 "b\nca", 0, -1, (-1, -1)
758 /(^|x)(c)/
759 "ca", 0, 0, (0, 1, 0, 0, 0, 1)
760 /foo.bart/
761 "foo.bart", 0, 0, (0, 8)
762 /^d[x][x][x]/m
763 "abcd\ndxxx", 0, 5, (5, 9)
764 /tt+$/
765 "xxxtt", 0, 3, (3, 5)
766 /(\\d+\\.\\d+)/
767 "3.1415926", 0, 0, (0, 9, 0, 9)
768 /\\.c(pp|xx|c)?$/i
769 "IO.c", 0, 2, (2, 4, -1, -1)
770 "Changes", 0, -1, (6, 11, -1, -1)
771 /(\\.c(pp|xx|c)?$)/i
772 "IO.c", 0, 2, (2, 4, 2, 4, -1, -1)
773 /(^|a)b/
774 "ab", 0, 0, (0, 2, 0, 1)
775 /^([ab]*?)(b)?(c)$/
776 "abac", 0, 0, (0, 4, 0, 3, -1, -1, 3, 4)
777 /^(?:.,){2}c/i
778 "a,b,c", 0, 0, (0, 5)
779 /^(.,){2}c/i
780 "a,b,c", 0, 0, (0, 5, 2, 4)
781 /^(?:[^,]*,){2}c/
782 "a,b,c", 0, 0, (0, 5)
783 /^([^,]*,){2}c/
784 "a,b,c", 0, 0, (0, 5, 2, 4)
785 /^([^,]*,){3}d/
786 "aaa,b,c,d", 0, 0, (0, 9, 6, 8)
787 /^([^,]*,){3,}d/
788 "aaa,b,c,d", 0, 0, (0, 9, 6, 8)
789 /^([^,]*,){0,3}d/
790 "aaa,b,c,d", 0, 0, (0, 9, 6, 8)
791 /^([^,]{1,3},){3}d/i
792 "aaa,b,c,d", 0, 0, (0, 9, 6, 8)
793 /^([^,]{1,3},){3,}d/
794 "aaa,b,c,d", 0, 0, (0, 9, 6, 8)
795 /^([^,]{1,3},){0,3}d/
796 "aaa,b,c,d", 0, 0, (0, 9, 6, 8)
797 /^([^,]{1,},){3}d/
798 "aaa,b,c,d", 0, 0, (0, 9, 6, 8)
799 /^([^,]{1,},){3,}d/
800 "aaa,b,c,d", 0, 0, (0, 9, 6, 8)
801 /^([^,]{1,},){0,3}d/
802 "aaa,b,c,d", 0, 0, (0, 9, 6, 8)
803 /^([^,]{0,3},){3}d/i
804 "aaa,b,c,d", 0, 0, (0, 9, 6, 8)
805 /^([^,]{0,3},){3,}d/
806 "aaa,b,c,d", 0, 0, (0, 9, 6, 8)
807 /^([^,]{0,3},){0,3}d/
808 "aaa,b,c,d", 0, 0, (0, 9, 6, 8)
809 /^(a(b)?)+$/
810 "aba", 0, 0, (0, 3, 2, 3, -1, -1)
811 /^(aa(bb)?)+$/
812 "aabbaa", 0, 0, (0, 6, 4, 6, -1, -1)
813 /^.{9}abc.*\\n/m
814 "123\nabcabcabcabc\n", 0, 4, (4, 17)
815 /^(a)?a$/
816 "a", 0, 0, (0, 1, -1, -1)
817 /^(a\\1?)(a\\1?)(a\\2?)(a\\3?)$/
818 "aaaaaa", 0, 0, (0, 6, 0, 1, 1, 3, 3, 4, 4, 6)
819 "a", 0, -1, (-1, -1, -1, -1, -1, -1, -1, -1, -1, -1)
820 "aa", 0, -1, (-1, -1, -1, -1, -1, -1, -1, -1, -1, -1)
821 "aaa", 0, -1, (-1, -1, -1, -1, -1, -1, -1, -1, -1, -1)
822 "aaaa", 0, 0, (0, 4, 0, 1, 1, 2, 2, 3, 3, 4)
823 "aaaaa", 0, 0, (0, 5, 0, 1, 1, 3, 3, 4, 4, 5)
824 "aaaaaaa", 0, 0, (0, 7, 0, 1, 1, 3, 3, 6, 6, 7)
825 "aaaaaaaa", 0, -1, (-1, -1, -1, -1, -1, -1, -1, -1, -1, -1)
826 "aaaaaaaaa", 0, -1, (-1, -1, -1, -1, -1, -1, -1, -1, -1, -1)
827 "aaaaaaaaaa", 0, 0, (0, 10, 0, 1, 1, 3, 3, 6, 6, 10)
828 "aaaaaaaaaaa", 0, -1, (-1, -1, -1, -1, -1, -1, -1, -1, -1, -1)
829 "aaaaaaaaaaaa", 0, -1, (-1, -1, -1, -1, -1, -1, -1, -1, -1, -1)
830 "aaaaaaaaaaaaa", 0, -1, (-1, -1, -1, -1, -1, -1, -1, -1, -1, -1)
831 "aaaaaaaaaaaaaa", 0, -1, (-1, -1, -1, -1, -1, -1, -1, -1, -1, -1)
832 "aaaaaaaaaaaaaaa", 0, -1, (-1, -1, -1, -1, -1, -1, -1, -1, -1, -1)
833 "aaaaaaaaaaaaaaaa", 0, -1, (-1, -1, -1, -1, -1, -1, -1, -1, -1, -1)
834 /^(0+)?(?:x(1))?/
835 "x1", 0, 0, (0, 2, -1, -1, 1, 2)
836 /^([0-9a-fA-F]+)(?:x([0-9a-fA-F]+)?)(?:x([0-9a-fA-F]+))?/
837 "012cxx0190", 0, 0, (0, 10, 0, 4, -1, -1, 6, 10)
838 /^(b+?|a){1,2}c/
839 "bbbac", 0, 0, (0, 5, 3, 4)
840 "bbbbac", 0, 0, (0, 6, 4, 5)
841 /((?:aaaa|bbbb)cccc)?/
842 "aaaacccc", 0, 0, (0, 8, 0, 8)
843 "bbbbcccc", 0, 0, (0, 8, 0, 8)
844 /ab{4,5}bc/
845 "abbbbc", 0, -1, (0, 9)
846 "abq", 0, -1, (0, -1)
847 "abbbbc", 0, -1, (0, -1)
848 /a[^]b]c/
849 "a]c", 0, -1, (-1, -1)
850 /\\by\\b/
851 "xy", 0, -1, (-1, -1)
852 "yz", 0, -1, (-1, -1)
853 "xyz", 0, -1, (-1, -1)
854 /\\Ba\\B/
855 "a-", 0, -1, (-1, -1)
856 "-a", 0, -1, (-1, -1)
857 "-a-", 0, -1, (-1, -1)
858 /a\\sb/
859 "a-b", 0, -1, (-1, -1)
860 "a b", 0, 0, (0, 3)
861 /a[\\s]b/
862 "a-b", 0, -1, (-1, -1)
863 "a b", 0, 0, (0, 3)
864 /$b/
865 "b", 0, -1, (-1, -1)
866 /^(ab|cd)e/
867 "abcde", 0, -1, (0, 10, -1, -1)
868 /a[bcd]+dcdcde/
869 "adcdcde", 0, -1, (0, 10)
870 "abcde", 0, -1, (0, -1)
871 "adcdcde", 0, -1, (0, -1)
872 /[k]/
873 "ab", 0, -1, (-1, -1)
874 /((\\3|b)\\2(a)x)+/
875 "aaxabxbaxbbx", 0, 1, (1, 3, 1, 3, 1, 1, 1, 2)
876 "aaaxabaxbaaxbbax", 0, 2, (2, 4, 2, 4, 2, 2, 2, 3)
877 /ab{1,}bc/i
878 "ABQ", 0, -1, (0, 10)
879 /ab{4,5}?bc/i
880 "ABBBBC", 0, -1, (0, 10)
881 "ABQ", 0, -1, (0, -1)
882 "ABBBBC", 0, -1, (0, -1)
883 /a.*c/i
884 "AXYZD", 0, -1, (4, 10)
885 "AABC", 0, 0, (0, 4)
886 "AXYZD", 0, -1, (4, -1)
887 /a[^]b]c/i
888 "A]C", 0, -1, (-1, -1)
889 /$b/i
890 "B", 0, -1, (-1, -1)
891 "A]C", 0, -1, (-1, -1)
892 /^(ab|cd)e/i
893 "ABCDE", 0, -1, (0, 10, -1, -1)
894 "ABCDE", 0, -1, (0, -1, -1, -1)
895 /a[bcd]+dcdcde/i
896 "ADCDCDE", 0, -1, (0, 10)
897 /[k]/i
898 "AB", 0, -1, (-1, -1)
899 /^(a\\1?){4}$/
900 "aaaaaaaaa", 0, -1, (-1, -1, -1, -1)
901 "aaaaaaaaaaa", 0, -1, (-1, -1, -1, -1)
902 "a", 0, -1, (-1, -1, -1, -1)
903 "aa", 0, -1, (-1, -1, -1, -1)
904 "aaa", 0, -1, (-1, -1, -1, -1)
905 "aaaa", 0, 0, (0, 4, 3, 4)
906 "aaaaa", 0, -1, (-1, -1, -1, -1)
907 "aaaaaaa", 0, -1, (-1, -1, -1, -1)
908 "aaaaaaaa", 0, -1, (-1, -1, -1, -1)
909 "aaaaaaaaaa", 0, -1, (-1, -1, -1, -1)
910 "aaaaaaaaaaaa", 0, -1, (-1, -1, -1, -1)
911 "aaaaaaaaaaaaa", 0, -1, (-1, -1, -1, -1)
912 "aaaaaaaaaaaaaa", 0, -1, (-1, -1, -1, -1)
913 "aaaaaaaaaaaaaaa", 0, -1, (-1, -1, -1, -1)
914 "aaaaaaaaaaaaaaaa", 0, -1, (-1, -1, -1, -1)
915 "AB", 0, -1, (-1, -1, -1, -1)
916 /^(?:a?b?)*$/
917 "a--", 0, -1, (-1, -1)
918 "", 0, 0, (0, 0)
919 "a", 0, 0, (0, 1)
920 "ab", 0, 0, (0, 2)
921 "aaa", 0, 0, (0, 3)
922 "dbcb", 0, -1, (-1, -1)
923 "aa--", 0, -1, (-1, -1)
924 /^b/
925 "a\nb\nc\n", 0, -1, (-1, -1)
926 /()^b/
927 "a\nb\nc\n", 0, -1, (7, 10, -1, -1)
928 "a\nb\nc\n", 0, -1, (7, -1, -1, -1)
929 /^(?=(a+?))\\1ab/
930 "aaab", 0, -1, (-1, -1, 0, 1)
931 /(>a+)ab/
932 "aaab", 0, -1, (1, 11, -1, -1)
933 /a\\Z/
934 "a\nb\n", 0, -1, (-1, -1)
935 /a\\z/
936 "a\nb\n", 0, -1, (-1, -1)
937 "b\na\n", 0, -1, (-1, -1)
938 "az", 0, 0, (0, 2)
939 /a\\z/m
940 "a\nb\n", 0, -1, (-1, -1)
941 "b\na\n", 0, -1, (-1, -1)
942 /aa\\Z/
943 "aa\nb\n", 0, -1, (-1, -1)
944 "ac\nb\n", 0, -1, (-1, -1)
945 "b\nac\n", 0, -1, (-1, -1)
946 "b\nac", 0, -1, (-1, -1)
947 "ca\nb\n", 0, -1, (-1, -1)
948 "b\nca\n", 0, -1, (-1, -1)
949 "b\nca", 0, -1, (-1, -1)
950 /aa\\z/
951 "aa\nb\n", 0, -1, (-1, -1)
952 "b\naa\n", 0, -1, (-1, -1)
953 "ac\nb\n", 0, -1, (-1, -1)
954 "b\nac\n", 0, -1, (-1, -1)
955 "b\nac", 0, -1, (-1, -1)
956 "ca\nb\n", 0, -1, (-1, -1)
957 "b\nca\n", 0, -1, (-1, -1)
958 "b\nca", 0, -1, (-1, -1)
959 /aa\\z/m
960 "aa\nb\n", 0, -1, (-1, -1)
961 "b\naa\n", 0, -1, (-1, -1)
962 "ac\nb\n", 0, -1, (-1, -1)
963 "b\nac\n", 0, -1, (-1, -1)
964 "b\nac", 0, -1, (-1, -1)
965 "ca\nb\n", 0, -1, (-1, -1)
966 "b\nca\n", 0, -1, (-1, -1)
967 "b\nca", 0, -1, (-1, -1)
968 /aa\\Z/m
969 "ac\nb\n", 0, -1, (-1, -1)
970 "b\nac\n", 0, -1, (-1, -1)
971 "b\nac", 0, -1, (-1, -1)
972 "ca\nb\n", 0, -1, (-1, -1)
973 "b\nca\n", 0, -1, (-1, -1)
974 "b\nca", 0, -1, (-1, -1)
975 /ab\\Z/
976 "ab\nb\n", 0, -1, (-1, -1)
977 "ac\nb\n", 0, -1, (-1, -1)
978 "b\nac\n", 0, -1, (-1, -1)
979 "b\nac", 0, -1, (-1, -1)
980 "ca\nb\n", 0, -1, (-1, -1)
981 "b\nca\n", 0, -1, (-1, -1)
982 "b\nca", 0, -1, (-1, -1)
983 /ab\\z/
984 "ab\nb\n", 0, -1, (-1, -1)
985 "b\nab\n", 0, -1, (-1, -1)
986 "ac\nb\n", 0, -1, (-1, -1)
987 "b\nac\n", 0, -1, (-1, -1)
988 "b\nac", 0, -1, (-1, -1)
989 "ca\nb\n", 0, -1, (-1, -1)
990 "b\nca\n", 0, -1, (-1, -1)
991 "b\nca", 0, -1, (-1, -1)
992 /ab\\z/m
993 "ab\nb\n", 0, -1, (-1, -1)
994 "b\nab\n", 0, -1, (-1, -1)
995 "ac\nb\n", 0, -1, (-1, -1)
996 "b\nac\n", 0, -1, (-1, -1)
997 "b\nac", 0, -1, (-1, -1)
998 "ca\nb\n", 0, -1, (-1, -1)
999 "b\nca\n", 0, -1, (-1, -1)
1000 "b\nca", 0, -1, (-1, -1)
1001 /ab\\Z/m
1002 "ac\nb\n", 0, -1, (-1, -1)
1003 "b\nac\n", 0, -1, (-1, -1)
1004 "b\nac", 0, -1, (-1, -1)
1005 "ca\nb\n", 0, -1, (-1, -1)
1006 "b\nca\n", 0, -1, (-1, -1)
1007 "b\nca", 0, -1, (-1, -1)
1008 /abb\\Z/
1009 "abb\nb\n", 0, -1, (-1, -1)
1010 "ac\nb\n", 0, -1, (-1, -1)
1011 "b\nac\n", 0, -1, (-1, -1)
1012 "b\nac", 0, -1, (-1, -1)
1013 "ca\nb\n", 0, -1, (-1, -1)
1014 "b\nca\n", 0, -1, (-1, -1)
1015 "b\nca", 0, -1, (-1, -1)
1016 /abb\\z/
1017 "abb\nb\n", 0, -1, (-1, -1)
1018 "b\nabb\n", 0, -1, (-1, -1)
1019 "ac\nb\n", 0, -1, (-1, -1)
1020 "b\nac\n", 0, -1, (-1, -1)
1021 "b\nac", 0, -1, (-1, -1)
1022 "ca\nb\n", 0, -1, (-1, -1)
1023 "b\nca\n", 0, -1, (-1, -1)
1024 "b\nca", 0, -1, (-1, -1)
1025 /abb\\z/m
1026 "abb\nb\n", 0, -1, (-1, -1)
1027 "b\nabb\n", 0, -1, (-1, -1)
1028 "ac\nb\n", 0, -1, (-1, -1)
1029 "b\nac\n", 0, -1, (-1, -1)
1030 "b\nac", 0, -1, (-1, -1)
1031 "ca\nb\n", 0, -1, (-1, -1)
1032 "b\nca\n", 0, -1, (-1, -1)
1033 "b\nca", 0, -1, (-1, -1)
1034 /abb\\Z/m
1035 "ac\nb\n", 0, -1, (-1, -1)
1036 "b\nac\n", 0, -1, (-1, -1)
1037 "b\nac", 0, -1, (-1, -1)
1038 "ca\nb\n", 0, -1, (-1, -1)
1039 "b\nca\n", 0, -1, (-1, -1)
1040 "b\nca", 0, -1, (-1, -1)