Parent Directory
|
Revision Log
|
Patch
revision 79 by nigel, Sat Feb 24 21:40:52 2007 UTC | revision 205 by ph10, Fri Aug 3 13:18:33 2007 UTC | |
---|---|---|
# | Line 1 | Line 1 |
1 | PCRE version 6.1 21-Jun-2005 | /(a)b|/I |
/(a)b|/ | ||
2 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
3 | No options | No options |
4 | No first char | No first char |
5 | No need char | No need char |
6 | ||
7 | /abc/ | /abc/I |
8 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
9 | No options | No options |
10 | First char = 'a' | First char = 'a' |
# | Line 24 No match | Line 22 No match |
22 | ABC | ABC |
23 | No match | No match |
24 | ||
25 | /^abc/ | /^abc/I |
26 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
27 | Options: anchored | Options: anchored |
28 | No first char | No first char |
# | Line 40 No match | Line 38 No match |
38 | \Adefabc | \Adefabc |
39 | No match | No match |
40 | ||
41 | /a+bc/ | /a+bc/I |
42 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
43 | Partial matching not supported | Partial matching not supported |
44 | No options | No options |
45 | First char = 'a' | First char = 'a' |
46 | Need char = 'c' | Need char = 'c' |
47 | ||
48 | /a*bc/ | /a*bc/I |
49 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
50 | Partial matching not supported | Partial matching not supported |
51 | No options | No options |
52 | No first char | No first char |
53 | Need char = 'c' | Need char = 'c' |
54 | ||
55 | /a{3}bc/ | /a{3}bc/I |
56 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
57 | Partial matching not supported | Partial matching not supported |
58 | No options | No options |
59 | First char = 'a' | First char = 'a' |
60 | Need char = 'c' | Need char = 'c' |
61 | ||
62 | /(abc|a+z)/ | /(abc|a+z)/I |
63 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
64 | Partial matching not supported | Partial matching not supported |
65 | No options | No options |
66 | First char = 'a' | First char = 'a' |
67 | No need char | No need char |
68 | ||
69 | /^abc$/ | /^abc$/I |
70 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
71 | Options: anchored | Options: anchored |
72 | No first char | No first char |
# | Line 80 No match | Line 78 No match |
78 | def\nabc | def\nabc |
79 | No match | No match |
80 | ||
81 | /ab\gdef/X | /ab\idef/X |
82 | Failed: unrecognized character follows \ at offset 3 | Failed: unrecognized character follows \ at offset 3 |
83 | ||
84 | /(?X)ab\gdef/X | /(?X)ab\idef/X |
85 | Failed: unrecognized character follows \ at offset 7 | Failed: unrecognized character follows \ at offset 7 |
86 | ||
87 | /x{5,4}/ | /x{5,4}/ |
# | Line 113 Failed: missing ) after comment at offse | Line 111 Failed: missing ) after comment at offse |
111 | /(?z)abc/ | /(?z)abc/ |
112 | Failed: unrecognized character after (? at offset 2 | Failed: unrecognized character after (? at offset 2 |
113 | ||
114 | /.*b/ | /.*b/I |
115 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
116 | Partial matching not supported | Partial matching not supported |
117 | No options | No options |
118 | First char at start or follows \n | First char at start or follows newline |
119 | Need char = 'b' | Need char = 'b' |
120 | ||
121 | /.*?b/ | /.*?b/I |
122 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
123 | Partial matching not supported | Partial matching not supported |
124 | No options | No options |
125 | First char at start or follows \n | First char at start or follows newline |
126 | Need char = 'b' | Need char = 'b' |
127 | ||
128 | /cat|dog|elephant/ | /cat|dog|elephant/I |
129 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
130 | No options | No options |
131 | No first char | No first char |
# | Line 137 No need char | Line 135 No need char |
135 | this sentences rambles on and on for a while and then reaches elephant | this sentences rambles on and on for a while and then reaches elephant |
136 | 0: elephant | 0: elephant |
137 | ||
138 | /cat|dog|elephant/S | /cat|dog|elephant/IS |
139 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
140 | No options | No options |
141 | No first char | No first char |
# | Line 148 Starting byte set: c d e | Line 146 Starting byte set: c d e |
146 | this sentences rambles on and on for a while and then reaches elephant | this sentences rambles on and on for a while and then reaches elephant |
147 | 0: elephant | 0: elephant |
148 | ||
149 | /cat|dog|elephant/iS | /cat|dog|elephant/IiS |
150 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
151 | Options: caseless | Options: caseless |
152 | No first char | No first char |
# | Line 159 Starting byte set: C D E c d e | Line 157 Starting byte set: C D E c d e |
157 | this sentences rambles on and on for a while to elephant ElePhant | this sentences rambles on and on for a while to elephant ElePhant |
158 | 0: elephant | 0: elephant |
159 | ||
160 | /a|[bcd]/S | /a|[bcd]/IS |
161 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
162 | No options | No options |
163 | No first char | No first char |
164 | No need char | No need char |
165 | Starting byte set: a b c d | Starting byte set: a b c d |
166 | ||
167 | /(a|[^\dZ])/S | /(a|[^\dZ])/IS |
168 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
169 | No options | No options |
170 | No first char | No first char |
# | Line 186 Starting byte set: \x00 \x01 \x02 \x03 \ | Line 184 Starting byte set: \x00 \x01 \x02 \x03 \ |
184 | \xed \xee \xef \xf0 \xf1 \xf2 \xf3 \xf4 \xf5 \xf6 \xf7 \xf8 \xf9 \xfa \xfb | \xed \xee \xef \xf0 \xf1 \xf2 \xf3 \xf4 \xf5 \xf6 \xf7 \xf8 \xf9 \xfa \xfb |
185 | \xfc \xfd \xfe \xff | \xfc \xfd \xfe \xff |
186 | ||
187 | /(a|b)*[\s]/S | /(a|b)*[\s]/IS |
188 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
189 | No options | No options |
190 | No first char | No first char |
# | Line 199 Failed: reference to non-existent subpat | Line 197 Failed: reference to non-existent subpat |
197 | /{4,5}abc/ | /{4,5}abc/ |
198 | Failed: nothing to repeat at offset 4 | Failed: nothing to repeat at offset 4 |
199 | ||
200 | /(a)(b)(c)\2/ | /(a)(b)(c)\2/I |
201 | Capturing subpattern count = 3 | Capturing subpattern count = 3 |
202 | Max back reference = 2 | Max back reference = 2 |
203 | No options | No options |
# | Line 224 Matched, but too many substrings | Line 222 Matched, but too many substrings |
222 | 0: abcb | 0: abcb |
223 | 1: a | 1: a |
224 | 2: b | 2: b |
225 | \O12abcb | \O12abcb |
226 | 0: abcb | 0: abcb |
227 | 1: a | 1: a |
228 | 2: b | 2: b |
229 | 3: c | 3: c |
230 | ||
231 | /(a)bc|(a)(b)\2/ | /(a)bc|(a)(b)\2/I |
232 | Capturing subpattern count = 3 | Capturing subpattern count = 3 |
233 | Max back reference = 2 | Max back reference = 2 |
234 | No options | No options |
# | Line 272 Matched, but too many substrings | Line 270 Matched, but too many substrings |
270 | 2: a | 2: a |
271 | 3: b | 3: b |
272 | ||
273 | /abc$/E | /abc$/IE |
274 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
275 | Options: dollar_endonly | Options: dollar_endonly |
276 | First char = 'a' | First char = 'a' |
# | Line 289 No match | Line 287 No match |
287 | /(a)(b)(c)(d)(e)\6/ | /(a)(b)(c)(d)(e)\6/ |
288 | Failed: reference to non-existent subpattern at offset 17 | Failed: reference to non-existent subpattern at offset 17 |
289 | ||
290 | /the quick brown fox/ | /the quick brown fox/I |
291 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
292 | No options | No options |
293 | First char = 't' | First char = 't' |
# | Line 299 Need char = 'x' | Line 297 Need char = 'x' |
297 | this is a line with the quick brown fox | this is a line with the quick brown fox |
298 | 0: the quick brown fox | 0: the quick brown fox |
299 | ||
300 | /the quick brown fox/A | /the quick brown fox/IA |
301 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
302 | Options: anchored | Options: anchored |
303 | No first char | No first char |
# | Line 314 No match | Line 312 No match |
312 | /ab(?z)cd/ | /ab(?z)cd/ |
313 | Failed: unrecognized character after (? at offset 4 | Failed: unrecognized character after (? at offset 4 |
314 | ||
315 | /^abc|def/ | /^abc|def/I |
316 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
317 | No options | No options |
318 | No first char | No first char |
# | Line 324 No need char | Line 322 No need char |
322 | abcdef\B | abcdef\B |
323 | 0: def | 0: def |
324 | ||
325 | /.*((abc)$|(def))/ | /.*((abc)$|(def))/I |
326 | Capturing subpattern count = 3 | Capturing subpattern count = 3 |
327 | Partial matching not supported | Partial matching not supported |
328 | No options | No options |
329 | First char at start or follows \n | First char at start or follows newline |
330 | No need char | No need char |
331 | defabc | defabc |
332 | 0: defabc | 0: defabc |
# | Line 340 No need char | Line 338 No need char |
338 | 2: <unset> | 2: <unset> |
339 | 3: def | 3: def |
340 | ||
341 | /abc/P | /abc/IP |
342 | abc | abc |
343 | 0: abc | 0: abc |
344 | *** Failers | *** Failers |
345 | No match: POSIX code 17: match failed | No match: POSIX code 17: match failed |
346 | ||
347 | /^abc|def/P | /^abc|def/IP |
348 | abcdef | abcdef |
349 | 0: abc | 0: abc |
350 | abcdef\B | abcdef\B |
351 | 0: def | 0: def |
352 | ||
353 | /.*((abc)$|(def))/P | /.*((abc)$|(def))/IP |
354 | defabc | defabc |
355 | 0: defabc | 0: defabc |
356 | 1: abc | 1: abc |
# | Line 361 No match: POSIX code 17: match failed | Line 359 No match: POSIX code 17: match failed |
359 | 0: def | 0: def |
360 | 1: def | 1: def |
361 | 3: def | 3: def |
362 | ||
363 | /the quick brown fox/P | /the quick brown fox/IP |
364 | the quick brown fox | the quick brown fox |
365 | 0: the quick brown fox | 0: the quick brown fox |
366 | *** Failers | *** Failers |
367 | No match: POSIX code 17: match failed | No match: POSIX code 17: match failed |
368 | The Quick Brown Fox | The Quick Brown Fox |
369 | No match: POSIX code 17: match failed | No match: POSIX code 17: match failed |
370 | ||
371 | /the quick brown fox/Pi | /the quick brown fox/IPi |
372 | the quick brown fox | the quick brown fox |
373 | 0: the quick brown fox | 0: the quick brown fox |
374 | The Quick Brown Fox | The Quick Brown Fox |
375 | 0: The Quick Brown Fox | 0: The Quick Brown Fox |
376 | ||
377 | /abc.def/P | /abc.def/IP |
378 | *** Failers | *** Failers |
379 | No match: POSIX code 17: match failed | No match: POSIX code 17: match failed |
380 | abc\ndef | abc\ndef |
381 | No match: POSIX code 17: match failed | No match: POSIX code 17: match failed |
382 | ||
383 | /abc$/P | /abc$/IP |
384 | abc | abc |
385 | 0: abc | 0: abc |
386 | abc\n | abc\n |
387 | 0: abc | 0: abc |
388 | ||
389 | /(abc)\2/P | /(abc)\2/IP |
390 | Failed: POSIX code 15: bad back reference at offset 7 | Failed: POSIX code 15: bad back reference at offset 7 |
391 | ||
392 | /(abc\1)/P | /(abc\1)/IP |
393 | abc | abc |
394 | No match: POSIX code 17: match failed | No match: POSIX code 17: match failed |
395 | ||
# | Line 401 Failed: unmatched parentheses at offset | Line 399 Failed: unmatched parentheses at offset |
399 | /a[]b/ | /a[]b/ |
400 | Failed: missing terminating ] for character class at offset 4 | Failed: missing terminating ] for character class at offset 4 |
401 | ||
402 | /[^aeiou ]{3,}/ | /[^aeiou ]{3,}/I |
403 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
404 | Partial matching not supported | Partial matching not supported |
405 | No options | No options |
406 | No first char | No first char |
407 | No need char | No need char |
408 | co-processors, and for | co-processors, and for |
409 | 0: -pr | 0: -pr |
410 | ||
411 | /<.*>/ | /<.*>/I |
412 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
413 | Partial matching not supported | Partial matching not supported |
414 | No options | No options |
# | Line 419 Need char = '>' | Line 417 Need char = '>' |
417 | abc<def>ghi<klm>nop | abc<def>ghi<klm>nop |
418 | 0: <def>ghi<klm> | 0: <def>ghi<klm> |
419 | ||
420 | /<.*?>/ | /<.*?>/I |
421 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
422 | Partial matching not supported | Partial matching not supported |
423 | No options | No options |
# | Line 428 Need char = '>' | Line 426 Need char = '>' |
426 | abc<def>ghi<klm>nop | abc<def>ghi<klm>nop |
427 | 0: <def> | 0: <def> |
428 | ||
429 | /<.*>/U | /<.*>/IU |
430 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
431 | Partial matching not supported | Partial matching not supported |
432 | Options: ungreedy | Options: ungreedy |
# | Line 436 First char = '<' | Line 434 First char = '<' |
434 | Need char = '>' | Need char = '>' |
435 | abc<def>ghi<klm>nop | abc<def>ghi<klm>nop |
436 | 0: <def> | 0: <def> |
437 | ||
438 | /(?U)<.*>/ | /(?U)<.*>/I |
439 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
440 | Partial matching not supported | Partial matching not supported |
441 | Options: ungreedy | Options: ungreedy |
# | Line 446 Need char = '>' | Line 444 Need char = '>' |
444 | abc<def>ghi<klm>nop | abc<def>ghi<klm>nop |
445 | 0: <def> | 0: <def> |
446 | ||
447 | /<.*?>/U | /<.*?>/IU |
448 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
449 | Partial matching not supported | Partial matching not supported |
450 | Options: ungreedy | Options: ungreedy |
# | Line 454 First char = '<' | Line 452 First char = '<' |
452 | Need char = '>' | Need char = '>' |
453 | abc<def>ghi<klm>nop | abc<def>ghi<klm>nop |
454 | 0: <def>ghi<klm> | 0: <def>ghi<klm> |
455 | ||
456 | /={3,}/U | /={3,}/IU |
457 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
458 | Partial matching not supported | Partial matching not supported |
459 | Options: ungreedy | Options: ungreedy |
# | Line 463 First char = '=' | Line 461 First char = '=' |
461 | Need char = '=' | Need char = '=' |
462 | abc========def | abc========def |
463 | 0: === | 0: === |
464 | ||
465 | /(?U)={3,}?/ | /(?U)={3,}?/I |
466 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
467 | Partial matching not supported | Partial matching not supported |
468 | Options: ungreedy | Options: ungreedy |
# | Line 472 First char = '=' | Line 470 First char = '=' |
470 | Need char = '=' | Need char = '=' |
471 | abc========def | abc========def |
472 | 0: ======== | 0: ======== |
473 | ||
474 | /(?<!bar|cattle)foo/ | /(?<!bar|cattle)foo/I |
475 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
476 | No options | No options |
477 | First char = 'f' | First char = 'f' |
478 | Need char = 'o' | Need char = 'o' |
479 | foo | foo |
480 | 0: foo | 0: foo |
481 | catfoo | catfoo |
482 | 0: foo | 0: foo |
483 | *** Failers | *** Failers |
484 | No match | No match |
485 | the barfoo | the barfoo |
486 | No match | No match |
487 | and cattlefoo | and cattlefoo |
488 | No match | No match |
489 | ||
490 | /(?<=a+)b/ | /(?<=a+)b/ |
# | Line 498 Failed: lookbehind assertion is not fixe | Line 496 Failed: lookbehind assertion is not fixe |
496 | /(?<!(foo)a\1)bar/ | /(?<!(foo)a\1)bar/ |
497 | Failed: lookbehind assertion is not fixed length at offset 12 | Failed: lookbehind assertion is not fixed length at offset 12 |
498 | ||
499 | /(?i)abc/ | /(?i)abc/I |
500 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
501 | Options: caseless | Options: caseless |
502 | First char = 'a' (caseless) | First char = 'a' (caseless) |
503 | Need char = 'c' (caseless) | Need char = 'c' (caseless) |
504 | ||
505 | /(a|(?m)a)/ | /(a|(?m)a)/I |
506 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
507 | No options | No options |
508 | First char = 'a' | First char = 'a' |
509 | No need char | No need char |
510 | ||
511 | /(?i)^1234/ | /(?i)^1234/I |
512 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
513 | Options: anchored caseless | Options: anchored caseless |
514 | No first char | No first char |
515 | No need char | No need char |
516 | ||
517 | /(^b|(?i)^d)/ | /(^b|(?i)^d)/I |
518 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
519 | Options: anchored | Options: anchored |
Case state changes | ||
520 | No first char | No first char |
521 | No need char | No need char |
522 | ||
523 | /(?s).*/ | /(?s).*/I |
524 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
525 | Partial matching not supported | Partial matching not supported |
526 | Options: anchored dotall | Options: anchored dotall |
527 | No first char | No first char |
528 | No need char | No need char |
529 | ||
530 | /[abcd]/S | /[abcd]/IS |
531 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
532 | No options | No options |
533 | No first char | No first char |
534 | No need char | No need char |
535 | Starting byte set: a b c d | Starting byte set: a b c d |
536 | ||
537 | /(?i)[abcd]/S | /(?i)[abcd]/IS |
538 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
539 | Options: caseless | Options: caseless |
540 | No first char | No first char |
541 | No need char | No need char |
542 | Starting byte set: A B C D a b c d | Starting byte set: A B C D a b c d |
543 | ||
544 | /(?m)[xy]|(b|c)/S | /(?m)[xy]|(b|c)/IS |
545 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
546 | Options: multiline | Options: multiline |
547 | No first char | No first char |
548 | No need char | No need char |
549 | Starting byte set: b c x y | Starting byte set: b c x y |
550 | ||
551 | /(^a|^b)/m | /(^a|^b)/Im |
552 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
553 | Options: multiline | Options: multiline |
554 | First char at start or follows \n | First char at start or follows newline |
555 | No need char | No need char |
556 | ||
557 | /(?i)(^a|^b)/m | /(?i)(^a|^b)/Im |
558 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
559 | Options: caseless multiline | Options: caseless multiline |
560 | First char at start or follows \n | First char at start or follows newline |
561 | No need char | No need char |
562 | ||
563 | /(a)(?(1)a|b|c)/ | /(a)(?(1)a|b|c)/ |
# | Line 570 Failed: conditional group contains more | Line 567 Failed: conditional group contains more |
567 | Failed: conditional group contains more than two branches at offset 12 | Failed: conditional group contains more than two branches at offset 12 |
568 | ||
569 | /(?(1a)/ | /(?(1a)/ |
570 | Failed: malformed number after (?( at offset 4 | Failed: missing ) at offset 6 |
571 | ||
572 | /(?(1a))/ | |
573 | Failed: reference to non-existent subpattern at offset 6 | |
574 | ||
575 | /(?(?i))/ | /(?(?i))/ |
576 | Failed: assertion expected after (?( at offset 3 | Failed: assertion expected after (?( at offset 3 |
577 | ||
578 | /(?(abc))/ | /(?(abc))/ |
579 | Failed: assertion expected after (?( at offset 3 | Failed: reference to non-existent subpattern at offset 7 |
580 | ||
581 | /(?(?<ab))/ | /(?(?<ab))/ |
582 | Failed: unrecognized character after (?< at offset 5 | Failed: syntax error in subpattern name (missing terminator) at offset 7 |
583 | ||
584 | /((?s)blah)\s+\1/ | /((?s)blah)\s+\1/I |
585 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
586 | Max back reference = 1 | Max back reference = 1 |
587 | Partial matching not supported | Partial matching not supported |
# | Line 589 No options | Line 589 No options |
589 | First char = 'b' | First char = 'b' |
590 | Need char = 'h' | Need char = 'h' |
591 | ||
592 | /((?i)blah)\s+\1/ | /((?i)blah)\s+\1/I |
593 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
594 | Max back reference = 1 | Max back reference = 1 |
595 | Partial matching not supported | Partial matching not supported |
596 | No options | No options |
Case state changes | ||
597 | First char = 'b' (caseless) | First char = 'b' (caseless) |
598 | Need char = 'h' (caseless) | Need char = 'h' (caseless) |
599 | ||
600 | /((?i)b)/DS | /((?i)b)/IDZS |
601 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
602 | 0 15 Bra 0 | Bra |
603 | 3 7 Bra 1 | CBra 1 |
604 | 6 01 Opt | 01 Opt |
605 | 8 NC b | NC b |
606 | 10 7 Ket | Ket |
607 | 13 00 Opt | 00 Opt |
608 | 15 15 Ket | Ket |
609 | 18 End | End |
610 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
611 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
612 | No options | No options |
Case state changes | ||
613 | First char = 'b' (caseless) | First char = 'b' (caseless) |
614 | No need char | No need char |
615 | Study returned NULL | Study returned NULL |
616 | ||
617 | /(a*b|(?i:c*(?-i)d))/S | /(a*b|(?i:c*(?-i)d))/IS |
618 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
619 | Partial matching not supported | Partial matching not supported |
620 | No options | No options |
Case state changes | ||
621 | No first char | No first char |
622 | No need char | No need char |
623 | Starting byte set: C a b c d | Starting byte set: C a b c d |
624 | ||
625 | /a$/ | /a$/I |
626 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
627 | No options | No options |
628 | First char = 'a' | First char = 'a' |
# | Line 634 No need char | Line 631 No need char |
631 | 0: a | 0: a |
632 | a\n | a\n |
633 | 0: a | 0: a |
634 | *** Failers | *** Failers |
635 | No match | No match |
636 | \Za | \Za |
637 | No match | No match |
638 | \Za\n | \Za\n |
639 | No match | No match |
640 | ||
641 | /a$/m | /a$/Im |
642 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
643 | Options: multiline | Options: multiline |
644 | First char = 'a' | First char = 'a' |
# | Line 650 No need char | Line 647 No need char |
647 | 0: a | 0: a |
648 | a\n | a\n |
649 | 0: a | 0: a |
650 | \Za\n | \Za\n |
651 | 0: a | 0: a |
652 | *** Failers | *** Failers |
653 | No match | No match |
654 | \Za | \Za |
655 | No match | No match |
656 | ||
657 | /\Aabc/m | /\Aabc/Im |
658 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
659 | Options: anchored multiline | Options: anchored multiline |
660 | No first char | No first char |
661 | No need char | No need char |
662 | ||
663 | /^abc/m | /^abc/Im |
664 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
665 | Options: multiline | Options: multiline |
666 | First char at start or follows \n | First char at start or follows newline |
667 | Need char = 'c' | Need char = 'c' |
668 | ||
669 | /^((a+)(?U)([ab]+)(?-U)([bc]+)(\w*))/ | /^((a+)(?U)([ab]+)(?-U)([bc]+)(\w*))/I |
670 | Capturing subpattern count = 5 | Capturing subpattern count = 5 |
671 | Partial matching not supported | Partial matching not supported |
672 | Options: anchored | Options: anchored |
# | Line 683 No need char | Line 680 No need char |
680 | 4: bbbbccccc | 4: bbbbccccc |
681 | 5: def | 5: def |
682 | ||
683 | /(?<=foo)[ab]/S | /(?<=foo)[ab]/IS |
684 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
685 | No options | No options |
686 | No first char | No first char |
687 | No need char | No need char |
688 | Starting byte set: a b | Starting byte set: a b |
689 | ||
690 | /(?<!foo)(alpha|omega)/S | /(?<!foo)(alpha|omega)/IS |
691 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
692 | No options | No options |
693 | No first char | No first char |
694 | Need char = 'a' | Need char = 'a' |
695 | Starting byte set: a o | Starting byte set: a o |
696 | ||
697 | /(?!alphabet)[ab]/S | /(?!alphabet)[ab]/IS |
698 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
699 | No options | No options |
700 | No first char | No first char |
701 | No need char | No need char |
702 | Starting byte set: a b | Starting byte set: a b |
703 | ||
704 | /(?<=foo\n)^bar/m | /(?<=foo\n)^bar/Im |
705 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
706 | Options: multiline | Options: multiline |
707 | No first char | No first char |
708 | Need char = 'r' | Need char = 'r' |
709 | foo\nbarbar | foo\nbarbar |
710 | 0: bar | 0: bar |
711 | ***Failers | ***Failers |
712 | No match | No match |
713 | rhubarb | rhubarb |
714 | No match | No match |
715 | barbell | barbell |
716 | No match | No match |
717 | abc\nbarton | abc\nbarton |
718 | No match | No match |
719 | ||
720 | /^(?<=foo\n)bar/m | /^(?<=foo\n)bar/Im |
721 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
722 | Options: multiline | Options: multiline |
723 | First char at start or follows \n | First char at start or follows newline |
724 | Need char = 'r' | Need char = 'r' |
725 | foo\nbarbar | foo\nbarbar |
726 | 0: bar | 0: bar |
727 | ***Failers | ***Failers |
728 | No match | No match |
729 | rhubarb | rhubarb |
730 | No match | No match |
731 | barbell | barbell |
732 | No match | No match |
733 | abc\nbarton | abc\nbarton |
734 | No match | No match |
735 | ||
736 | /(?>^abc)/m | /(?>^abc)/Im |
737 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
738 | Options: multiline | Options: multiline |
739 | First char at start or follows \n | First char at start or follows newline |
740 | Need char = 'c' | Need char = 'c' |
741 | abc | abc |
742 | 0: abc | 0: abc |
# | Line 747 Need char = 'c' | Line 744 Need char = 'c' |
744 | 0: abc | 0: abc |
745 | *** Failers | *** Failers |
746 | No match | No match |
747 | defabc | defabc |
748 | No match | No match |
749 | ||
750 | /(?<=ab(c+)d)ef/ | /(?<=ab(c+)d)ef/ |
# | Line 760 Failed: lookbehind assertion is not fixe | Line 757 Failed: lookbehind assertion is not fixe |
757 | Failed: lookbehind assertion is not fixed length at offset 13 | Failed: lookbehind assertion is not fixed length at offset 13 |
758 | ||
759 | /The next three are in testinput2 because they have variable length branches/ | /The next three are in testinput2 because they have variable length branches/ |
Capturing subpattern count = 0 | ||
No options | ||
First char = 'T' | ||
Need char = 's' | ||
760 | ||
761 | /(?<=bullock|donkey)-cart/ | /(?<=bullock|donkey)-cart/I |
762 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
763 | No options | No options |
764 | First char = '-' | First char = '-' |
# | Line 778 Need char = 't' | Line 771 Need char = 't' |
771 | No match | No match |
772 | cart | cart |
773 | No match | No match |
774 | horse-and-cart | horse-and-cart |
775 | No match | No match |
776 | ||
777 | /(?<=ab(?i)x|y|z)/ | /(?<=ab(?i)x|y|z)/I |
778 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
779 | No options | No options |
Case state changes | ||
780 | No first char | No first char |
781 | No need char | No need char |
782 | ||
783 | /(?>.*)(?<=(abcd)|(xyz))/ | /(?>.*)(?<=(abcd)|(xyz))/I |
784 | Capturing subpattern count = 2 | Capturing subpattern count = 2 |
785 | Partial matching not supported | Partial matching not supported |
786 | No options | No options |
787 | First char at start or follows \n | First char at start or follows newline |
788 | No need char | No need char |
789 | alphabetabcd | alphabetabcd |
790 | 0: alphabetabcd | 0: alphabetabcd |
# | Line 802 No need char | Line 794 No need char |
794 | 1: <unset> | 1: <unset> |
795 | 2: xyz | 2: xyz |
796 | ||
797 | /(?<=ab(?i)x(?-i)y|(?i)z|b)ZZ/ | /(?<=ab(?i)x(?-i)y|(?i)z|b)ZZ/I |
798 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
799 | No options | No options |
Case state changes | ||
800 | First char = 'Z' | First char = 'Z' |
801 | Need char = 'Z' | Need char = 'Z' |
802 | abxyZZ | abxyZZ |
# | Line 818 Need char = 'Z' | Line 809 Need char = 'Z' |
809 | 0: ZZ | 0: ZZ |
810 | bZZ | bZZ |
811 | 0: ZZ | 0: ZZ |
812 | BZZ | BZZ |
813 | 0: ZZ | 0: ZZ |
814 | *** Failers | *** Failers |
815 | No match | No match |
816 | ZZ | ZZ |
817 | No match | No match |
818 | abXYZZ | abXYZZ |
819 | No match | No match |
820 | zzz | zzz |
821 | No match | No match |
822 | bzz | bzz |
823 | No match | No match |
824 | ||
825 | /(?<!(foo)a)bar/ | /(?<!(foo)a)bar/I |
826 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
827 | No options | No options |
828 | First char = 'b' | First char = 'b' |
829 | Need char = 'r' | Need char = 'r' |
830 | bar | bar |
831 | 0: bar | 0: bar |
832 | foobbar | foobbar |
833 | 0: bar | 0: bar |
834 | *** Failers | *** Failers |
835 | No match | No match |
836 | fooabar | fooabar |
837 | No match | No match |
838 | ||
839 | /This one is here because Perl 5.005_02 doesn't fail it/ | /This one is here because Perl 5.005_02 doesn't fail it/I |
840 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
841 | No options | No options |
842 | First char = 'T' | First char = 'T' |
843 | Need char = 't' | Need char = 't' |
844 | ||
845 | /^(a)?(?(1)a|b)+$/ | /^(a)?(?(1)a|b)+$/I |
846 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
847 | Options: anchored | Options: anchored |
848 | No first char | No first char |
849 | No need char | No need char |
850 | *** Failers | *** Failers |
851 | No match | No match |
852 | a | a |
853 | No match | No match |
854 | ||
855 | /This one is here because I think Perl 5.005_02 gets the setting of $1 wrong/ | /This one is here because I think Perl 5.005_02 gets the setting of $1 wrong/I |
856 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
857 | No options | No options |
858 | First char = 'T' | First char = 'T' |
859 | Need char = 'g' | Need char = 'g' |
860 | ||
861 | /^(a\1?){4}$/ | /^(a\1?){4}$/I |
862 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
863 | Max back reference = 1 | Max back reference = 1 |
864 | Options: anchored | Options: anchored |
# | Line 876 No need char | Line 867 No need char |
867 | aaaaaa | aaaaaa |
868 | 0: aaaaaa | 0: aaaaaa |
869 | 1: aa | 1: aa |
870 | ||
871 | /These are syntax tests from Perl 5.005/ | /These are syntax tests from Perl 5.005/I |
872 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
873 | No options | No options |
874 | First char = 'T' | First char = 'T' |
# | Line 919 Failed: reference to non-existent subpat | Line 910 Failed: reference to non-existent subpat |
910 | /(a)|\2/ | /(a)|\2/ |
911 | Failed: reference to non-existent subpattern at offset 6 | Failed: reference to non-existent subpattern at offset 6 |
912 | ||
913 | /a[b-a]/i | /a[b-a]/Ii |
914 | Failed: range out of order in character class at offset 4 | Failed: range out of order in character class at offset 4 |
915 | ||
916 | /a[]b/i | /a[]b/Ii |
917 | Failed: missing terminating ] for character class at offset 4 | Failed: missing terminating ] for character class at offset 4 |
918 | ||
919 | /a[/i | /a[/Ii |
920 | Failed: missing terminating ] for character class at offset 2 | Failed: missing terminating ] for character class at offset 2 |
921 | ||
922 | /*a/i | /*a/Ii |
923 | Failed: nothing to repeat at offset 0 | Failed: nothing to repeat at offset 0 |
924 | ||
925 | /(*)b/i | /(*)b/Ii |
926 | Failed: nothing to repeat at offset 1 | Failed: nothing to repeat at offset 1 |
927 | ||
928 | /abc)/i | /abc)/Ii |
929 | Failed: unmatched parentheses at offset 3 | Failed: unmatched parentheses at offset 3 |
930 | ||
931 | /(abc/i | /(abc/Ii |
932 | Failed: missing ) at offset 4 | Failed: missing ) at offset 4 |
933 | ||
934 | /a**/i | /a**/Ii |
935 | Failed: nothing to repeat at offset 2 | Failed: nothing to repeat at offset 2 |
936 | ||
937 | /)(/i | /)(/Ii |
938 | Failed: unmatched parentheses at offset 0 | Failed: unmatched parentheses at offset 0 |
939 | ||
940 | /:(?:/ | /:(?:/ |
# | Line 968 Failed: unrecognized character after (? | Line 959 Failed: unrecognized character after (? |
959 | Failed: unrecognized character after (? at offset 3 | Failed: unrecognized character after (? at offset 3 |
960 | ||
961 | /(?(1?)a|b)/ | /(?(1?)a|b)/ |
962 | Failed: malformed number after (?( at offset 4 | Failed: malformed number or name after (?( at offset 4 |
963 | ||
964 | /(?(1)a|b|c)/ | /(?(1)a|b|c)/ |
965 | Failed: conditional group contains more than two branches at offset 10 | Failed: conditional group contains more than two branches at offset 10 |
# | Line 991 Failed: POSIX code 9: bad escape sequenc | Line 982 Failed: POSIX code 9: bad escape sequenc |
982 | /abc/\i | /abc/\i |
983 | Failed: \ at end of pattern at offset 4 | Failed: \ at end of pattern at offset 4 |
984 | ||
985 | /(a)bc(d)/ | /(a)bc(d)/I |
986 | Capturing subpattern count = 2 | Capturing subpattern count = 2 |
987 | No options | No options |
988 | First char = 'a' | First char = 'a' |
# | Line 1010 Need char = 'd' | Line 1001 Need char = 'd' |
1001 | 1: a | 1: a |
1002 | 2: d | 2: d |
1003 | copy substring 5 failed -7 | copy substring 5 failed -7 |
1004 | ||
1005 | /(.{20})/ | /(.{20})/I |
1006 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
1007 | Partial matching not supported | Partial matching not supported |
1008 | No options | No options |
# | Line 1023 No need char | Line 1014 No need char |
1014 | abcdefghijklmnopqrstuvwxyz\C1 | abcdefghijklmnopqrstuvwxyz\C1 |
1015 | 0: abcdefghijklmnopqrst | 0: abcdefghijklmnopqrst |
1016 | 1: abcdefghijklmnopqrst | 1: abcdefghijklmnopqrst |
1017 | copy substring 1 failed -6 | 1C abcdefghijklmnopqrst (20) |
1018 | abcdefghijklmnopqrstuvwxyz\G1 | abcdefghijklmnopqrstuvwxyz\G1 |
1019 | 0: abcdefghijklmnopqrst | 0: abcdefghijklmnopqrst |
1020 | 1: abcdefghijklmnopqrst | 1: abcdefghijklmnopqrst |
1021 | 1G abcdefghijklmnopqrst (20) | 1G abcdefghijklmnopqrst (20) |
1022 | ||
1023 | /(.{15})/ | /(.{15})/I |
1024 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
1025 | Partial matching not supported | Partial matching not supported |
1026 | No options | No options |
# | Line 1044 No need char | Line 1035 No need char |
1035 | 1C abcdefghijklmno (15) | 1C abcdefghijklmno (15) |
1036 | 1G abcdefghijklmno (15) | 1G abcdefghijklmno (15) |
1037 | ||
1038 | /(.{16})/ | /(.{16})/I |
1039 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
1040 | Partial matching not supported | Partial matching not supported |
1041 | No options | No options |
# | Line 1056 No need char | Line 1047 No need char |
1047 | abcdefghijklmnopqrstuvwxyz\C1\G1\L | abcdefghijklmnopqrstuvwxyz\C1\G1\L |
1048 | 0: abcdefghijklmnop | 0: abcdefghijklmnop |
1049 | 1: abcdefghijklmnop | 1: abcdefghijklmnop |
1050 | copy substring 1 failed -6 | 1C abcdefghijklmnop (16) |
1051 | 1G abcdefghijklmnop (16) | 1G abcdefghijklmnop (16) |
1052 | 0L abcdefghijklmnop | 0L abcdefghijklmnop |
1053 | 1L abcdefghijklmnop | 1L abcdefghijklmnop |
1054 | ||
1055 | /^(a|(bc))de(f)/ | /^(a|(bc))de(f)/I |
1056 | Capturing subpattern count = 3 | Capturing subpattern count = 3 |
1057 | Options: anchored | Options: anchored |
1058 | No first char | No first char |
1059 | No need char | No need char |
1060 | adef\G1\G2\G3\G4\L | adef\G1\G2\G3\G4\L |
1061 | 0: adef | 0: adef |
1062 | 1: a | 1: a |
1063 | 2: <unset> | 2: <unset> |
# | Line 1079 get substring 4 failed -7 | Line 1070 get substring 4 failed -7 |
1070 | 1L a | 1L a |
1071 | 2L | 2L |
1072 | 3L f | 3L f |
1073 | bcdef\G1\G2\G3\G4\L | bcdef\G1\G2\G3\G4\L |
1074 | 0: bcdef | 0: bcdef |
1075 | 1: bc | 1: bc |
1076 | 2: bc | 2: bc |
# | Line 1092 get substring 4 failed -7 | Line 1083 get substring 4 failed -7 |
1083 | 1L bc | 1L bc |
1084 | 2L bc | 2L bc |
1085 | 3L f | 3L f |
1086 | adefghijk\C0 | adefghijk\C0 |
1087 | 0: adef | 0: adef |
1088 | 1: a | 1: a |
1089 | 2: <unset> | 2: <unset> |
1090 | 3: f | 3: f |
1091 | 0C adef (4) | 0C adef (4) |
1092 | ||
1093 | /^abc\00def/ | /^abc\00def/I |
1094 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
1095 | Options: anchored | Options: anchored |
1096 | No first char | No first char |
1097 | No need char | No need char |
1098 | abc\00def\L\C0 | abc\00def\L\C0 |
1099 | 0: abc\x00def | 0: abc\x00def |
1100 | 0C abc (7) | 0C abc (7) |
1101 | 0L abc | 0L abc |
1102 | ||
1103 | /word ((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ | /word ((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ |
1104 | )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ | )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ |
1105 | )?)?)?)?)?)?)?)?)?otherword/M | )?)?)?)?)?)?)?)?)?otherword/I |
Memory allocation (code space): 432 | ||
1106 | Capturing subpattern count = 8 | Capturing subpattern count = 8 |
1107 | Partial matching not supported | Partial matching not supported |
1108 | No options | No options |
1109 | First char = 'w' | First char = 'w' |
1110 | Need char = 'd' | Need char = 'd' |
1111 | ||
1112 | /.*X/D | /.*X/IDZ |
1113 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
1114 | 0 7 Bra 0 | Bra |
1115 | 3 Any* | Any* |
1116 | 5 X | X |
1117 | 7 7 Ket | Ket |
1118 | 10 End | End |
1119 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
1120 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
1121 | Partial matching not supported | Partial matching not supported |
1122 | No options | No options |
1123 | First char at start or follows \n | First char at start or follows newline |
1124 | Need char = 'X' | Need char = 'X' |
1125 | ||
1126 | /.*X/Ds | /.*X/IDZs |
1127 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
1128 | 0 7 Bra 0 | Bra |
1129 | 3 Any* | Any* |
1130 | 5 X | X |
1131 | 7 7 Ket | Ket |
1132 | 10 End | End |
1133 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
1134 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
1135 | Partial matching not supported | Partial matching not supported |
# | Line 1147 Options: anchored dotall | Line 1137 Options: anchored dotall |
1137 | No first char | No first char |
1138 | Need char = 'X' | Need char = 'X' |
1139 | ||
1140 | /(.*X|^B)/D | /(.*X|^B)/IDZ |
1141 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
1142 | 0 19 Bra 0 | Bra |
1143 | 3 7 Bra 1 | CBra 1 |
1144 | 6 Any* | Any* |
1145 | 8 X | X |
1146 | 10 6 Alt | Alt |
1147 | 13 ^ | ^ |
1148 | 14 B | B |
1149 | 16 13 Ket | Ket |
1150 | 19 19 Ket | Ket |
1151 | 22 End | End |
1152 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
1153 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
1154 | Partial matching not supported | Partial matching not supported |
1155 | No options | No options |
1156 | First char at start or follows \n | First char at start or follows newline |
1157 | No need char | No need char |
1158 | ||
1159 | /(.*X|^B)/Ds | /(.*X|^B)/IDZs |
1160 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
1161 | 0 19 Bra 0 | Bra |
1162 | 3 7 Bra 1 | CBra 1 |
1163 | 6 Any* | Any* |
1164 | 8 X | X |
1165 | 10 6 Alt | Alt |
1166 | 13 ^ | ^ |
1167 | 14 B | B |
1168 | 16 13 Ket | Ket |
1169 | 19 19 Ket | Ket |
1170 | 22 End | End |
1171 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
1172 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
1173 | Partial matching not supported | Partial matching not supported |
1174 | Options: anchored dotall | Options: anchored dotall |
1175 | No first char | No first char |
1176 | No need char | No need char |
1177 | ||
1178 | /(?s)(.*X|^B)/D | /(?s)(.*X|^B)/IDZ |
1179 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
1180 | 0 19 Bra 0 | Bra |
1181 | 3 7 Bra 1 | CBra 1 |
1182 | 6 Any* | Any* |
1183 | 8 X | X |
1184 | 10 6 Alt | Alt |
1185 | 13 ^ | ^ |
1186 | 14 B | B |
1187 | 16 13 Ket | Ket |
1188 | 19 19 Ket | Ket |
1189 | 22 End | End |
1190 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
1191 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
1192 | Partial matching not supported | Partial matching not supported |
# | Line 1204 Options: anchored dotall | Line 1194 Options: anchored dotall |
1194 | No first char | No first char |
1195 | No need char | No need char |
1196 | ||
1197 | /(?s:.*X|^B)/D | /(?s:.*X|^B)/IDZ |
1198 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
1199 | 0 25 Bra 0 | Bra |
1200 | 3 9 Bra 0 | Bra |
1201 | 6 04 Opt | 04 Opt |
1202 | 8 Any* | Any* |
1203 | 10 X | X |
1204 | 12 8 Alt | Alt |
1205 | 15 04 Opt | 04 Opt |
1206 | 17 ^ | ^ |
1207 | 18 B | B |
1208 | 20 17 Ket | Ket |
1209 | 23 00 Opt | 00 Opt |
1210 | 25 25 Ket | Ket |
1211 | 28 End | End |
1212 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
1213 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
1214 | Partial matching not supported | Partial matching not supported |
1215 | No options | No options |
1216 | First char at start or follows \n | First char at start or follows newline |
1217 | No need char | No need char |
1218 | ||
1219 | /\Biss\B/+ | /\Biss\B/I+ |
1220 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
1221 | No options | No options |
1222 | First char = 'i' | First char = 'i' |
# | Line 1235 Need char = 's' | Line 1225 Need char = 's' |
1225 | 0: iss | 0: iss |
1226 | 0+ issippi | 0+ issippi |
1227 | ||
1228 | /\Biss\B/+P | /\Biss\B/I+P |
1229 | Mississippi | Mississippi |
1230 | 0: iss | 0: iss |
1231 | 0+ issippi | 0+ issippi |
1232 | ||
1233 | /iss/G+ | /iss/IG+ |
1234 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
1235 | No options | No options |
1236 | First char = 'i' | First char = 'i' |
# | Line 1251 Need char = 's' | Line 1241 Need char = 's' |
1241 | 0: iss | 0: iss |
1242 | 0+ ippi | 0+ ippi |
1243 | ||
1244 | /\Biss\B/G+ | /\Biss\B/IG+ |
1245 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
1246 | No options | No options |
1247 | First char = 'i' | First char = 'i' |
# | Line 1260 Need char = 's' | Line 1250 Need char = 's' |
1250 | 0: iss | 0: iss |
1251 | 0+ issippi | 0+ issippi |
1252 | ||
1253 | /\Biss\B/g+ | /\Biss\B/Ig+ |
1254 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
1255 | No options | No options |
1256 | First char = 'i' | First char = 'i' |
# | Line 1275 No match | Line 1265 No match |
1265 | Mississippi\A | Mississippi\A |
1266 | No match | No match |
1267 | ||
1268 | /(?<=[Ms])iss/g+ | /(?<=[Ms])iss/Ig+ |
1269 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
1270 | No options | No options |
1271 | First char = 'i' | First char = 'i' |
# | Line 1286 Need char = 's' | Line 1276 Need char = 's' |
1276 | 0: iss | 0: iss |
1277 | 0+ ippi | 0+ ippi |
1278 | ||
1279 | /(?<=[Ms])iss/G+ | /(?<=[Ms])iss/IG+ |
1280 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
1281 | No options | No options |
1282 | First char = 'i' | First char = 'i' |
# | Line 1295 Need char = 's' | Line 1285 Need char = 's' |
1285 | 0: iss | 0: iss |
1286 | 0+ issippi | 0+ issippi |
1287 | ||
1288 | /^iss/g+ | /^iss/Ig+ |
1289 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
1290 | Options: anchored | Options: anchored |
1291 | No first char | No first char |
# | Line 1303 No need char | Line 1293 No need char |
1293 | ississippi | ississippi |
1294 | 0: iss | 0: iss |
1295 | 0+ issippi | 0+ issippi |
1296 | ||
1297 | /.*iss/g+ | /.*iss/Ig+ |
1298 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
1299 | Partial matching not supported | Partial matching not supported |
1300 | No options | No options |
1301 | First char at start or follows \n | First char at start or follows newline |
1302 | Need char = 's' | Need char = 's' |
1303 | abciss\nxyzisspqr | abciss\nxyzisspqr |
1304 | 0: abciss | 0: abciss |
1305 | 0+ \x0axyzisspqr | 0+ \x0axyzisspqr |
1306 | 0: xyziss | 0: xyziss |
1307 | 0+ pqr | 0+ pqr |
1308 | ||
1309 | /.i./+g | /.i./I+g |
1310 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
1311 | No options | No options |
1312 | No first char | No first char |
# | Line 1342 Need char = 'i' | Line 1332 Need char = 'i' |
1332 | 0+ river | 0+ river |
1333 | 0: riv | 0: riv |
1334 | 0+ er | 0+ er |
1335 | Missouri river\A | Missouri river\A |
1336 | 0: Mis | 0: Mis |
1337 | 0+ souri river | 0+ souri river |
1338 | ||
1339 | /^.is/+g | /^.is/I+g |
1340 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
1341 | Options: anchored | Options: anchored |
1342 | No first char | No first char |
# | Line 1355 No need char | Line 1345 No need char |
1345 | 0: Mis | 0: Mis |
1346 | 0+ sissippi | 0+ sissippi |
1347 | ||
1348 | /^ab\n/g+ | /^ab\n/Ig+ |
1349 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
1350 | Options: anchored | Options: anchored |
1351 | No first char | No first char |
# | Line 1364 No need char | Line 1354 No need char |
1354 | 0: ab\x0a | 0: ab\x0a |
1355 | 0+ ab\x0acd | 0+ ab\x0acd |
1356 | ||
1357 | /^ab\n/mg+ | /^ab\n/Img+ |
1358 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
1359 | Options: multiline | Options: multiline |
1360 | First char at start or follows \n | First char at start or follows newline |
1361 | Need char = 10 | Need char = 10 |
1362 | ab\nab\ncd | ab\nab\ncd |
1363 | 0: ab\x0a | 0: ab\x0a |
# | Line 1375 Need char = 10 | Line 1365 Need char = 10 |
1365 | 0: ab\x0a | 0: ab\x0a |
1366 | 0+ cd | 0+ cd |
1367 | ||
1368 | /abc/ | /abc/I |
1369 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
1370 | No options | No options |
1371 | First char = 'a' | First char = 'a' |
1372 | Need char = 'c' | Need char = 'c' |
1373 | ||
1374 | /abc|bac/ | /abc|bac/I |
1375 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
1376 | No options | No options |
1377 | No first char | No first char |
1378 | Need char = 'c' | Need char = 'c' |
1379 | ||
1380 | /(abc|bac)/ | /(abc|bac)/I |
1381 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
1382 | No options | No options |
1383 | No first char | No first char |
1384 | Need char = 'c' | Need char = 'c' |
1385 | ||
1386 | /(abc|(c|dc))/ | /(abc|(c|dc))/I |
1387 | Capturing subpattern count = 2 | Capturing subpattern count = 2 |
1388 | No options | No options |
1389 | No first char | No first char |
1390 | Need char = 'c' | Need char = 'c' |
1391 | ||
1392 | /(abc|(d|de)c)/ | /(abc|(d|de)c)/I |
1393 | Capturing subpattern count = 2 | Capturing subpattern count = 2 |
1394 | No options | No options |
1395 | No first char | No first char |
1396 | Need char = 'c' | Need char = 'c' |
1397 | ||
1398 | /a*/ | /a*/I |
1399 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
1400 | Partial matching not supported | Partial matching not supported |
1401 | No options | No options |
1402 | No first char | No first char |
1403 | No need char | No need char |
1404 | ||
1405 | /a+/ | /a+/I |
1406 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
1407 | Partial matching not supported | Partial matching not supported |
1408 | No options | No options |
1409 | First char = 'a' | First char = 'a' |
1410 | No need char | No need char |
1411 | ||
1412 | /(baa|a+)/ | /(baa|a+)/I |
1413 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
1414 | Partial matching not supported | Partial matching not supported |
1415 | No options | No options |
1416 | No first char | No first char |
1417 | Need char = 'a' | Need char = 'a' |
1418 | ||
1419 | /a{0,3}/ | /a{0,3}/I |
1420 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
1421 | Partial matching not supported | Partial matching not supported |
1422 | No options | No options |
1423 | No first char | No first char |
1424 | No need char | No need char |
1425 | ||
1426 | /baa{3,}/ | /baa{3,}/I |
1427 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
1428 | Partial matching not supported | Partial matching not supported |
1429 | No options | No options |
1430 | First char = 'b' | First char = 'b' |
1431 | Need char = 'a' | Need char = 'a' |
1432 | ||
1433 | /"([^\\"]+|\\.)*"/ | /"([^\\"]+|\\.)*"/I |
1434 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
1435 | Partial matching not supported | Partial matching not supported |
1436 | No options | No options |
1437 | First char = '"' | First char = '"' |
1438 | Need char = '"' | Need char = '"' |
1439 | ||
1440 | /(abc|ab[cd])/ | /(abc|ab[cd])/I |
1441 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
1442 | No options | No options |
1443 | First char = 'a' | First char = 'a' |
1444 | No need char | No need char |
1445 | ||
1446 | /(a|.)/ | /(a|.)/I |
1447 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
1448 | No options | No options |
1449 | No first char | No first char |
1450 | No need char | No need char |
1451 | ||
1452 | /a|ba|\w/ | /a|ba|\w/I |
1453 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
1454 | No options | No options |
1455 | No first char | No first char |
1456 | No need char | No need char |
1457 | ||
1458 | /abc(?=pqr)/ | /abc(?=pqr)/I |
1459 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
1460 | No options | No options |
1461 | First char = 'a' | First char = 'a' |
1462 | Need char = 'r' | Need char = 'r' |
1463 | ||
1464 | /...(?<=abc)/ | /...(?<=abc)/I |
1465 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
1466 | No options | No options |
1467 | No first char | No first char |
1468 | No need char | No need char |
1469 | ||
1470 | /abc(?!pqr)/ | /abc(?!pqr)/I |
1471 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
1472 | No options | No options |
1473 | First char = 'a' | First char = 'a' |
1474 | Need char = 'c' | Need char = 'c' |
1475 | ||
1476 | /ab./ | /ab./I |
1477 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
1478 | No options | No options |
1479 | First char = 'a' | First char = 'a' |
1480 | Need char = 'b' | Need char = 'b' |
1481 | ||
1482 | /ab[xyz]/ | /ab[xyz]/I |
1483 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
1484 | No options | No options |
1485 | First char = 'a' | First char = 'a' |
1486 | Need char = 'b' | Need char = 'b' |
1487 | ||
1488 | /abc*/ | /abc*/I |
1489 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
1490 | Partial matching not supported | Partial matching not supported |
1491 | No options | No options |
1492 | First char = 'a' | First char = 'a' |
1493 | Need char = 'b' | Need char = 'b' |
1494 | ||
1495 | /ab.c*/ | /ab.c*/I |
1496 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
1497 | Partial matching not supported | Partial matching not supported |
1498 | No options | No options |
1499 | First char = 'a' | First char = 'a' |
1500 | Need char = 'b' | Need char = 'b' |
1501 | ||
1502 | /a.c*/ | /a.c*/I |
1503 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
1504 | Partial matching not supported | Partial matching not supported |
1505 | No options | No options |
1506 | First char = 'a' | First char = 'a' |
1507 | No need char | No need char |
1508 | ||
1509 | /.c*/ | /.c*/I |
1510 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
1511 | Partial matching not supported | Partial matching not supported |
1512 | No options | No options |
1513 | No first char | No first char |
1514 | No need char | No need char |
1515 | ||
1516 | /ac*/ | /ac*/I |
1517 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
1518 | Partial matching not supported | Partial matching not supported |
1519 | No options | No options |
1520 | First char = 'a' | First char = 'a' |
1521 | No need char | No need char |
1522 | ||
1523 | /(a.c*|b.c*)/ | /(a.c*|b.c*)/I |
1524 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
1525 | Partial matching not supported | Partial matching not supported |
1526 | No options | No options |
1527 | No first char | No first char |
1528 | No need char | No need char |
1529 | ||
1530 | /a.c*|aba/ | /a.c*|aba/I |
1531 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
1532 | Partial matching not supported | Partial matching not supported |
1533 | No options | No options |
1534 | First char = 'a' | First char = 'a' |
1535 | No need char | No need char |
1536 | ||
1537 | /.+a/ | /.+a/I |
1538 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
1539 | Partial matching not supported | Partial matching not supported |
1540 | No options | No options |
1541 | No first char | No first char |
1542 | Need char = 'a' | Need char = 'a' |
1543 | ||
1544 | /(?=abcda)a.*/ | /(?=abcda)a.*/I |
1545 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
1546 | Partial matching not supported | Partial matching not supported |
1547 | No options | No options |
1548 | First char = 'a' | First char = 'a' |
1549 | Need char = 'a' | Need char = 'a' |
1550 | ||
1551 | /(?=a)a.*/ | /(?=a)a.*/I |
1552 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
1553 | Partial matching not supported | Partial matching not supported |
1554 | No options | No options |
1555 | First char = 'a' | First char = 'a' |
1556 | No need char | No need char |
1557 | ||
1558 | /a(b)*/ | /a(b)*/I |
1559 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
1560 | No options | No options |
1561 | First char = 'a' | First char = 'a' |
1562 | No need char | No need char |
1563 | ||
1564 | /a\d*/ | /a\d*/I |
1565 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
1566 | Partial matching not supported | Partial matching not supported |
1567 | No options | No options |
1568 | First char = 'a' | First char = 'a' |
1569 | No need char | No need char |
1570 | ||
1571 | /ab\d*/ | /ab\d*/I |
1572 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
1573 | Partial matching not supported | Partial matching not supported |
1574 | No options | No options |
1575 | First char = 'a' | First char = 'a' |
1576 | Need char = 'b' | Need char = 'b' |
1577 | ||
1578 | /a(\d)*/ | /a(\d)*/I |
1579 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
1580 | No options | No options |
1581 | First char = 'a' | First char = 'a' |
1582 | No need char | No need char |
1583 | ||
1584 | /abcde{0,0}/ | /abcde{0,0}/I |
1585 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
1586 | No options | No options |
1587 | First char = 'a' | First char = 'a' |
1588 | Need char = 'd' | Need char = 'd' |
1589 | ||
1590 | /ab\d+/ | /ab\d+/I |
1591 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
1592 | Partial matching not supported | Partial matching not supported |
1593 | No options | No options |
1594 | First char = 'a' | First char = 'a' |
1595 | Need char = 'b' | Need char = 'b' |
1596 | ||
1597 | /a(?(1)b)/ | /a(?(1)b)/I |
1598 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
1599 | No options | No options |
1600 | First char = 'a' | First char = 'a' |
1601 | No need char | No need char |
1602 | ||
1603 | /a(?(1)bag|big)/ | /a(?(1)bag|big)/I |
1604 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
1605 | No options | No options |
1606 | First char = 'a' | First char = 'a' |
1607 | Need char = 'g' | Need char = 'g' |
1608 | ||
1609 | /a(?(1)bag|big)*/ | /a(?(1)bag|big)*/I |
1610 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
1611 | No options | No options |
1612 | First char = 'a' | First char = 'a' |
1613 | No need char | No need char |
1614 | ||
1615 | /a(?(1)bag|big)+/ | /a(?(1)bag|big)+/I |
1616 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
1617 | No options | No options |
1618 | First char = 'a' | First char = 'a' |
1619 | Need char = 'g' | Need char = 'g' |
1620 | ||
1621 | /a(?(1)b..|b..)/ | /a(?(1)b..|b..)/I |
1622 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
1623 | No options | No options |
1624 | First char = 'a' | First char = 'a' |
1625 | Need char = 'b' | Need char = 'b' |
1626 | ||
1627 | /ab\d{0}e/ | /ab\d{0}e/I |
1628 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
1629 | No options | No options |
1630 | First char = 'a' | First char = 'a' |
1631 | Need char = 'e' | Need char = 'e' |
1632 | ||
1633 | /a?b?/ | /a?b?/I |
1634 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
1635 | No options | No options |
1636 | No first char | No first char |
# | Line 1655 No need char | Line 1645 No need char |
1645 | 0: | 0: |
1646 | *** Failers | *** Failers |
1647 | 0: | 0: |
1648 | \N | \N |
1649 | No match | No match |
1650 | ||
1651 | /|-/ | /|-/I |
1652 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
1653 | No options | No options |
1654 | No first char | No first char |
# | Line 1671 No need char | Line 1661 No need char |
1661 | 0: - | 0: - |
1662 | *** Failers | *** Failers |
1663 | 0: | 0: |
1664 | \Nabc | \Nabc |
1665 | No match | No match |
1666 | ||
1667 | /a*(b+)(z)(z)/P | /a*(b+)(z)(z)/IP |
1668 | aaaabbbbzzzz | aaaabbbbzzzz |
1669 | 0: aaaabbbbzz | 0: aaaabbbbzz |
1670 | 1: bbbb | 1: bbbb |
# | Line 1700 No match | Line 1690 No match |
1690 | 1: bbbb | 1: bbbb |
1691 | 2: z | 2: z |
1692 | 3: z | 3: z |
1693 | ||
1694 | /^.?abcd/S | /^.?abcd/IS |
1695 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
1696 | Options: anchored | Options: anchored |
1697 | No first char | No first char |
# | Line 1715 Study returned NULL | Line 1705 Study returned NULL |
1705 | (?R) # Recurse - i.e. nested bracketed string | (?R) # Recurse - i.e. nested bracketed string |
1706 | )* # Zero or more contents | )* # Zero or more contents |
1707 | \) # Closing ) | \) # Closing ) |
1708 | /x | /Ix |
1709 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
1710 | Partial matching not supported | Partial matching not supported |
1711 | Options: extended | Options: extended |
# | Line 1727 Need char = ')' | Line 1717 Need char = ')' |
1717 | 0: (abcd) | 0: (abcd) |
1718 | xyz(abcd) | xyz(abcd) |
1719 | 0: (abcd) | 0: (abcd) |
1720 | (ab(xy)cd)pqr | (ab(xy)cd)pqr |
1721 | 0: (ab(xy)cd) | 0: (ab(xy)cd) |
1722 | (ab(xycd)pqr | (ab(xycd)pqr |
1723 | 0: (xycd) | 0: (xycd) |
1724 | () abc () | () abc () |
1725 | 0: () | 0: () |
1726 | 12(abcde(fsh)xyz(foo(bar))lmno)89 | 12(abcde(fsh)xyz(foo(bar))lmno)89 |
1727 | 0: (abcde(fsh)xyz(foo(bar))lmno) | 0: (abcde(fsh)xyz(foo(bar))lmno) |
1728 | *** Failers | *** Failers |
1729 | No match | No match |
1730 | abcd | abcd |
1731 | No match | No match |
1732 | abcd) | abcd) |
1733 | No match | No match |
1734 | (abcd | (abcd |
1735 | No match | No match |
1736 | ||
1737 | /\( ( (?>[^()]+) | (?R) )* \) /xg | /\( ( (?>[^()]+) | (?R) )* \) /Ixg |
1738 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
1739 | Partial matching not supported | Partial matching not supported |
1740 | Options: extended | Options: extended |
1741 | First char = '(' | First char = '(' |
1742 | Need char = ')' | Need char = ')' |
1743 | (ab(xy)cd)pqr | (ab(xy)cd)pqr |
1744 | 0: (ab(xy)cd) | 0: (ab(xy)cd) |
1745 | 1: cd | 1: cd |
1746 | 1(abcd)(x(y)z)pqr | 1(abcd)(x(y)z)pqr |
# | Line 1759 Need char = ')' | Line 1749 Need char = ')' |
1749 | 0: (x(y)z) | 0: (x(y)z) |
1750 | 1: z | 1: z |
1751 | ||
1752 | /\( (?: (?>[^()]+) | (?R) ) \) /x | /\( (?: (?>[^()]+) | (?R) ) \) /Ix |
1753 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
1754 | Partial matching not supported | Partial matching not supported |
1755 | Options: extended | Options: extended |
# | Line 1769 Need char = ')' | Line 1759 Need char = ')' |
1759 | 0: (abcd) | 0: (abcd) |
1760 | (ab(xy)cd) | (ab(xy)cd) |
1761 | 0: (xy) | 0: (xy) |
1762 | (a(b(c)d)e) | (a(b(c)d)e) |
1763 | 0: (c) | 0: (c) |
1764 | ((ab)) | ((ab)) |
1765 | 0: ((ab)) | 0: ((ab)) |
1766 | *** Failers | *** Failers |
1767 | No match | No match |
1768 | () | () |
1769 | No match | No match |
1770 | ||
1771 | /\( (?: (?>[^()]+) | (?R) )? \) /x | /\( (?: (?>[^()]+) | (?R) )? \) /Ix |
1772 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
1773 | Partial matching not supported | Partial matching not supported |
1774 | Options: extended | Options: extended |
# | Line 1789 Need char = ')' | Line 1779 Need char = ')' |
1779 | 12(abcde(fsh)xyz(foo(bar))lmno)89 | 12(abcde(fsh)xyz(foo(bar))lmno)89 |
1780 | 0: (fsh) | 0: (fsh) |
1781 | ||
1782 | /\( ( (?>[^()]+) | (?R) )* \) /x | /\( ( (?>[^()]+) | (?R) )* \) /Ix |
1783 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
1784 | Partial matching not supported | Partial matching not supported |
1785 | Options: extended | Options: extended |
# | Line 1799 Need char = ')' | Line 1789 Need char = ')' |
1789 | 0: (ab(xy)cd) | 0: (ab(xy)cd) |
1790 | 1: cd | 1: cd |
1791 | ||
1792 | /\( ( ( (?>[^()]+) | (?R) )* ) \) /x | /\( ( ( (?>[^()]+) | (?R) )* ) \) /Ix |
1793 | Capturing subpattern count = 2 | Capturing subpattern count = 2 |
1794 | Partial matching not supported | Partial matching not supported |
1795 | Options: extended | Options: extended |
# | Line 1810 Need char = ')' | Line 1800 Need char = ')' |
1800 | 1: ab(xy)cd | 1: ab(xy)cd |
1801 | 2: cd | 2: cd |
1802 | ||
1803 | /\( (123)? ( ( (?>[^()]+) | (?R) )* ) \) /x | /\( (123)? ( ( (?>[^()]+) | (?R) )* ) \) /Ix |
1804 | Capturing subpattern count = 3 | Capturing subpattern count = 3 |
1805 | Partial matching not supported | Partial matching not supported |
1806 | Options: extended | Options: extended |
# | Line 1827 Need char = ')' | Line 1817 Need char = ')' |
1817 | 2: ab(xy)cd | 2: ab(xy)cd |
1818 | 3: cd | 3: cd |
1819 | ||
1820 | /\( ( (123)? ( (?>[^()]+) | (?R) )* ) \) /x | /\( ( (123)? ( (?>[^()]+) | (?R) )* ) \) /Ix |
1821 | Capturing subpattern count = 3 | Capturing subpattern count = 3 |
1822 | Partial matching not supported | Partial matching not supported |
1823 | Options: extended | Options: extended |
# | Line 1844 Need char = ')' | Line 1834 Need char = ')' |
1834 | 2: 123 | 2: 123 |
1835 | 3: cd | 3: cd |
1836 | ||
1837 | /\( (((((((((( ( (?>[^()]+) | (?R) )* )))))))))) \) /x | /\( (((((((((( ( (?>[^()]+) | (?R) )* )))))))))) \) /Ix |
1838 | Capturing subpattern count = 11 | Capturing subpattern count = 11 |
1839 | Partial matching not supported | Partial matching not supported |
1840 | Options: extended | Options: extended |
# | Line 1864 Need char = ')' | Line 1854 Need char = ')' |
1854 | 10: ab(xy)cd | 10: ab(xy)cd |
1855 | 11: cd | 11: cd |
1856 | ||
1857 | /\( ( ( (?>[^()<>]+) | ((?>[^()]+)) | (?R) )* ) \) /x | /\( ( ( (?>[^()<>]+) | ((?>[^()]+)) | (?R) )* ) \) /Ix |
1858 | Capturing subpattern count = 3 | Capturing subpattern count = 3 |
1859 | Partial matching not supported | Partial matching not supported |
1860 | Options: extended | Options: extended |
# | Line 1876 Need char = ')' | Line 1866 Need char = ')' |
1866 | 2: 123 | 2: 123 |
1867 | 3: <unset> | 3: <unset> |
1868 | ||
1869 | /\( ( ( (?>[^()]+) | ((?R)) )* ) \) /x | /\( ( ( (?>[^()]+) | ((?R)) )* ) \) /Ix |
1870 | Capturing subpattern count = 3 | Capturing subpattern count = 3 |
1871 | Partial matching not supported | Partial matching not supported |
1872 | Options: extended | Options: extended |
# | Line 1893 Need char = ')' | Line 1883 Need char = ')' |
1883 | 2: ij | 2: ij |
1884 | 3: (cd(ef)gh) | 3: (cd(ef)gh) |
1885 | ||
1886 | /^[[:alnum:]]/D | /^[[:alnum:]]/DZ |
1887 | ------------------------------------------------------------------ | |
1888 | Bra | |
1889 | ^ | |
1890 | [0-9A-Za-z] | |
1891 | Ket | |
1892 | End | |
1893 | ------------------------------------------------------------------ | |
1894 | Capturing subpattern count = 0 | |
1895 | Options: anchored | |
1896 | No first char | |
1897 | No need char | |
1898 | ||
1899 | /^[[:^alnum:]]/DZ | |
1900 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
1901 | 0 37 Bra 0 | Bra |
1902 | 3 ^ | ^ |
1903 | 4 [0-9A-Za-z] | [\x00-/:-@[-`{-\xff] |
1904 | 37 37 Ket | Ket |
1905 | 40 End | End |
1906 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
1907 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
1908 | Options: anchored | Options: anchored |
1909 | No first char | No first char |
1910 | No need char | No need char |
1911 | ||
1912 | /^[[:^alnum:]]/D | /^[[:alpha:]]/DZ |
1913 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
1914 | 0 37 Bra 0 | Bra |
1915 | 3 ^ | ^ |
1916 | 4 [\x00-/:-@[-`{-\xff] | [A-Za-z] |
1917 | 37 37 Ket | Ket |
1918 | 40 End | End |
1919 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
1920 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
1921 | Options: anchored | Options: anchored |
1922 | No first char | No first char |
1923 | No need char | No need char |
1924 | ||
1925 | /^[[:alpha:]]/D | /^[[:^alpha:]]/DZ |
1926 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
1927 | 0 37 Bra 0 | Bra |
1928 | 3 ^ | ^ |
1929 | 4 [A-Za-z] | [\x00-@[-`{-\xff] |
1930 | 37 37 Ket | Ket |
1931 | 40 End | End |
1932 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
1933 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
1934 | Options: anchored | Options: anchored |
1935 | No first char | No first char |
1936 | No need char | No need char |
1937 | ||
1938 | /^[[:^alpha:]]/D | /[_[:alpha:]]/IS |
1939 | Capturing subpattern count = 0 | |
1940 | No options | |
1941 | No first char | |
1942 | No need char | |
1943 | Starting byte set: A B C D E F G H I J K L M N O P Q R S T U V W X Y Z | |
1944 | _ a b c d e f g h i j k l m n o p q r s t u v w x y z | |
1945 | ||
1946 | /^[[:ascii:]]/DZ | |
1947 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
1948 | 0 37 Bra 0 | Bra |
1949 | 3 ^ | ^ |
1950 | 4 [\x00-@[-`{-\xff] | [\x00-\x7f] |
1951 | 37 37 Ket | Ket |
1952 | 40 End | End |
1953 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
1954 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
1955 | Options: anchored | Options: anchored |
1956 | No first char | No first char |
1957 | No need char | No need char |
1958 | ||
1959 | /^[[:ascii:]]/D | /^[[:^ascii:]]/DZ |
1960 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
1961 | 0 37 Bra 0 | Bra |
1962 | 3 ^ | ^ |
1963 | 4 [\x00-\x7f] | [\x80-\xff] |
1964 | 37 37 Ket | Ket |
1965 | 40 End | End |
1966 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
1967 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
1968 | Options: anchored | Options: anchored |
1969 | No first char | No first char |
1970 | No need char | No need char |
1971 | ||
1972 | /^[[:^ascii:]]/D | /^[[:blank:]]/DZ |
1973 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
1974 | 0 37 Bra 0 | Bra |
1975 | 3 ^ | ^ |
1976 | 4 [\x80-\xff] | [\x09 ] |
1977 | 37 37 Ket | Ket |
1978 | 40 End | End |
1979 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
1980 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
1981 | Options: anchored | Options: anchored |
1982 | No first char | No first char |
1983 | No need char | No need char |
1984 | ||
1985 | /^[[:blank:]]/D | /^[[:^blank:]]/DZ |
1986 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
1987 | 0 37 Bra 0 | Bra |
1988 | 3 ^ | ^ |
1989 | 4 [\x09 ] | [\x00-\x08\x0a-\x1f!-\xff] |
1990 | 37 37 Ket | Ket |
1991 | 40 End | End |
1992 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
1993 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
1994 | Options: anchored | Options: anchored |
1995 | No first char | No first char |
1996 | No need char | No need char |
1997 | ||
1998 | /^[[:cntrl:]]/D | /[\n\x0b\x0c\x0d[:blank:]]/IS |
1999 | Capturing subpattern count = 0 | |
2000 | No options | |
2001 | No first char | |
2002 | No need char | |
2003 | Starting byte set: \x09 \x0a \x0b \x0c \x0d \x20 | |
2004 | ||
2005 | /^[[:cntrl:]]/DZ | |
2006 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2007 | 0 37 Bra 0 | Bra |
2008 | 3 ^ | ^ |
2009 | 4 [\x00-\x1f\x7f] | [\x00-\x1f\x7f] |
2010 | 37 37 Ket | Ket |
2011 | 40 End | End |
2012 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2013 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
2014 | Options: anchored | Options: anchored |
2015 | No first char | No first char |
2016 | No need char | No need char |
2017 | ||
2018 | /^[[:digit:]]/D | /^[[:digit:]]/DZ |
2019 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2020 | 0 37 Bra 0 | Bra |
2021 | 3 ^ | ^ |
2022 | 4 [0-9] | [0-9] |
2023 | 37 37 Ket | Ket |
2024 | 40 End | End |
2025 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2026 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
2027 | Options: anchored | Options: anchored |
2028 | No first char | No first char |
2029 | No need char | No need char |
2030 | ||
2031 | /^[[:graph:]]/D | /^[[:graph:]]/DZ |
2032 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2033 | 0 37 Bra 0 | Bra |
2034 | 3 ^ | ^ |
2035 | 4 [!-~] | [!-~] |
2036 | 37 37 Ket | Ket |
2037 | 40 End | End |
2038 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2039 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
2040 | Options: anchored | Options: anchored |
2041 | No first char | No first char |
2042 | No need char | No need char |
2043 | ||
2044 | /^[[:lower:]]/D | /^[[:lower:]]/DZ |
2045 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2046 | 0 37 Bra 0 | Bra |
2047 | 3 ^ | ^ |
2048 | 4 [a-z] | [a-z] |
2049 | 37 37 Ket | Ket |
2050 | 40 End | End |
2051 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2052 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
2053 | Options: anchored | Options: anchored |
2054 | No first char | No first char |
2055 | No need char | No need char |
2056 | ||
2057 | /^[[:print:]]/D | /^[[:print:]]/DZ |
2058 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2059 | 0 37 Bra 0 | Bra |
2060 | 3 ^ | ^ |
2061 | 4 [ -~] | [ -~] |
2062 | 37 37 Ket | Ket |
2063 | 40 End | End |
2064 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2065 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
2066 | Options: anchored | Options: anchored |
2067 | No first char | No first char |
2068 | No need char | No need char |
2069 | ||
2070 | /^[[:punct:]]/D | /^[[:punct:]]/DZ |
2071 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2072 | 0 37 Bra 0 | Bra |
2073 | 3 ^ | ^ |
2074 | 4 [!-/:-@[-`{-~] | [!-/:-@[-`{-~] |
2075 | 37 37 Ket | Ket |
2076 | 40 End | End |
2077 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2078 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
2079 | Options: anchored | Options: anchored |
2080 | No first char | No first char |
2081 | No need char | No need char |
2082 | ||
2083 | /^[[:space:]]/D | /^[[:space:]]/DZ |
2084 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2085 | 0 37 Bra 0 | Bra |
2086 | 3 ^ | ^ |
2087 | 4 [\x09-\x0d ] | [\x09-\x0d ] |
2088 | 37 37 Ket | Ket |
2089 | 40 End | End |
2090 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2091 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
2092 | Options: anchored | Options: anchored |
2093 | No first char | No first char |
2094 | No need char | No need char |
2095 | ||
2096 | /^[[:upper:]]/D | /^[[:upper:]]/DZ |
2097 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2098 | 0 37 Bra 0 | Bra |
2099 | 3 ^ | ^ |
2100 | 4 [A-Z] | [A-Z] |
2101 | 37 37 Ket | Ket |
2102 | 40 End | End |
2103 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2104 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
2105 | Options: anchored | Options: anchored |
2106 | No first char | No first char |
2107 | No need char | No need char |
2108 | ||
2109 | /^[[:xdigit:]]/D | /^[[:xdigit:]]/DZ |
2110 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2111 | 0 37 Bra 0 | Bra |
2112 | 3 ^ | ^ |
2113 | 4 [0-9A-Fa-f] | [0-9A-Fa-f] |
2114 | 37 37 Ket | Ket |
2115 | 40 End | End |
2116 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2117 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
2118 | Options: anchored | Options: anchored |
2119 | No first char | No first char |
2120 | No need char | No need char |
2121 | ||
2122 | /^[[:word:]]/D | /^[[:word:]]/DZ |
2123 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2124 | 0 37 Bra 0 | Bra |
2125 | 3 ^ | ^ |
2126 | 4 [0-9A-Z_a-z] | [0-9A-Z_a-z] |
2127 | 37 37 Ket | Ket |
2128 | 40 End | End |
2129 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2130 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
2131 | Options: anchored | Options: anchored |
2132 | No first char | No first char |
2133 | No need char | No need char |
2134 | ||
2135 | /^[[:^cntrl:]]/D | /^[[:^cntrl:]]/DZ |
2136 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2137 | 0 37 Bra 0 | Bra |
2138 | 3 ^ | ^ |
2139 | 4 [ -~\x80-\xff] | [ -~\x80-\xff] |
2140 | 37 37 Ket | Ket |
2141 | 40 End | End |
2142 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2143 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
2144 | Options: anchored | Options: anchored |
2145 | No first char | No first char |
2146 | No need char | No need char |
2147 | ||
2148 | /^[12[:^digit:]]/D | /^[12[:^digit:]]/DZ |
2149 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2150 | 0 37 Bra 0 | Bra |
2151 | 3 ^ | ^ |
2152 | 4 [\x00-/12:-\xff] | [\x00-/12:-\xff] |
2153 | 37 37 Ket | Ket |
2154 | 40 End | End |
2155 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2156 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
2157 | Options: anchored | Options: anchored |
2158 | No first char | No first char |
2159 | No need char | No need char |
2160 | ||
2161 | /^[[:^blank:]]/D | /^[[:^blank:]]/DZ |
2162 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2163 | 0 37 Bra 0 | Bra |
2164 | 3 ^ | ^ |
2165 | 4 [\x00-\x08\x0a-\x1f!-\xff] | [\x00-\x08\x0a-\x1f!-\xff] |
2166 | 37 37 Ket | Ket |
2167 | 40 End | End |
2168 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2169 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
2170 | Options: anchored | Options: anchored |
2171 | No first char | No first char |
2172 | No need char | No need char |
2173 | ||
2174 | /[01[:alpha:]%]/D | /[01[:alpha:]%]/DZ |
2175 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2176 | 0 36 Bra 0 | Bra |
2177 | 3 [%01A-Za-z] | [%01A-Za-z] |
2178 | 36 36 Ket | Ket |
2179 | 39 End | End |
2180 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2181 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
2182 | No options | No options |
2183 | No first char | No first char |
2184 | No need char | No need char |
2185 | ||
2186 | /[[.ch.]]/ | /[[.ch.]]/I |
2187 | Failed: POSIX collating elements are not supported at offset 1 | Failed: POSIX collating elements are not supported at offset 1 |
2188 | ||
2189 | /[[=ch=]]/ | /[[=ch=]]/I |
2190 | Failed: POSIX collating elements are not supported at offset 1 | Failed: POSIX collating elements are not supported at offset 1 |
2191 | ||
2192 | /[[:rhubarb:]]/ | /[[:rhubarb:]]/I |
2193 | Failed: unknown POSIX class name at offset 3 | Failed: unknown POSIX class name at offset 3 |
2194 | ||
2195 | /[[:upper:]]/i | /[[:upper:]]/Ii |
2196 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
2197 | Options: caseless | Options: caseless |
2198 | No first char | No first char |
2199 | No need char | No need char |
2200 | A | A |
2201 | 0: A | 0: A |
2202 | a | a |
2203 | 0: a | 0: a |
2204 | ||
2205 | /[[:lower:]]/i | /[[:lower:]]/Ii |
2206 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
2207 | Options: caseless | Options: caseless |
2208 | No first char | No first char |
2209 | No need char | No need char |
2210 | A | A |
2211 | 0: A | 0: A |
2212 | a | a |
2213 | 0: a | 0: a |
2214 | ||
2215 | /((?-i)[[:lower:]])[[:lower:]]/i | /((?-i)[[:lower:]])[[:lower:]]/Ii |
2216 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
2217 | Options: caseless | Options: caseless |
Case state changes | ||
2218 | No first char | No first char |
2219 | No need char | No need char |
2220 | ab | ab |
# | Line 2211 No need char | Line 2228 No need char |
2228 | 1: a | 1: a |
2229 | Ab | Ab |
2230 | No match | No match |
2231 | AB | AB |
2232 | No match | No match |
2233 | ||
2234 | /[\200-\410]/ | /[\200-\110]/I |
2235 | Failed: range out of order in character class at offset 9 | Failed: range out of order in character class at offset 9 |
2236 | ||
2237 | /^(?(0)f|b)oo/ | /^(?(0)f|b)oo/I |
2238 | Failed: invalid condition (?(0) at offset 5 | Failed: invalid condition (?(0) at offset 6 |
2239 | ||
2240 | /This one's here because of the large output vector needed/ | /This one's here because of the large output vector needed/I |
2241 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
2242 | No options | No options |
2243 | First char = 'T' | First char = 'T' |
2244 | Need char = 'd' | Need char = 'd' |
2245 | ||
2246 | /(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\w+)\s+(\270)/ | /(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\w+)\s+(\270)/I |
2247 | Capturing subpattern count = 271 | Capturing subpattern count = 271 |
2248 | Max back reference = 270 | Max back reference = 270 |
2249 | Partial matching not supported | Partial matching not supported |
# | Line 2507 No need char | Line 2524 No need char |
2524 | 270: ABC | 270: ABC |
2525 | 271: ABC | 271: ABC |
2526 | ||
2527 | /This one's here because Perl does this differently and PCRE can't at present/ | /This one's here because Perl does this differently and PCRE can't at present/I |
2528 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
2529 | No options | No options |
2530 | First char = 'T' | First char = 'T' |
2531 | Need char = 't' | Need char = 't' |
2532 | ||
2533 | /(main(O)?)+/ | /(main(O)?)+/I |
2534 | Capturing subpattern count = 2 | Capturing subpattern count = 2 |
2535 | No options | No options |
2536 | First char = 'm' | First char = 'm' |
# | Line 2525 Need char = 'n' | Line 2542 Need char = 'n' |
2542 | 0: mainOmain | 0: mainOmain |
2543 | 1: main | 1: main |
2544 | 2: O | 2: O |
2545 | ||
2546 | /These are all cases where Perl does it differently (nested captures)/ | /These are all cases where Perl does it differently (nested captures)/I |
2547 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
2548 | No options | No options |
2549 | First char = 'T' | First char = 'T' |
2550 | Need char = 's' | Need char = 's' |
2551 | ||
2552 | /^(a(b)?)+$/ | /^(a(b)?)+$/I |
2553 | Capturing subpattern count = 2 | Capturing subpattern count = 2 |
2554 | Options: anchored | Options: anchored |
2555 | No first char | No first char |
# | Line 2541 No need char | Line 2558 No need char |
2558 | 0: aba | 0: aba |
2559 | 1: a | 1: a |
2560 | 2: b | 2: b |
2561 | ||
2562 | /^(aa(bb)?)+$/ | /^(aa(bb)?)+$/I |
2563 | Capturing subpattern count = 2 | Capturing subpattern count = 2 |
2564 | Options: anchored | Options: anchored |
2565 | No first char | No first char |
2566 | No need char | No need char |
2567 | aabbaa | aabbaa |
2568 | 0: aabbaa | 0: aabbaa |
2569 | 1: aa | 1: aa |
2570 | 2: bb | 2: bb |
2571 | ||
2572 | /^(aa|aa(bb))+$/ | /^(aa|aa(bb))+$/I |
2573 | Capturing subpattern count = 2 | Capturing subpattern count = 2 |
2574 | Options: anchored | Options: anchored |
2575 | No first char | No first char |
2576 | No need char | No need char |
2577 | aabbaa | aabbaa |
2578 | 0: aabbaa | 0: aabbaa |
2579 | 1: aa | 1: aa |
2580 | 2: bb | 2: bb |
2581 | ||
2582 | /^(aa(bb)??)+$/ | /^(aa(bb)??)+$/I |
2583 | Capturing subpattern count = 2 | Capturing subpattern count = 2 |
2584 | Options: anchored | Options: anchored |
2585 | No first char | No first char |
2586 | No need char | No need char |
2587 | aabbaa | aabbaa |
2588 | 0: aabbaa | 0: aabbaa |
2589 | 1: aa | 1: aa |
2590 | 2: bb | 2: bb |
2591 | ||
2592 | /^(?:aa(bb)?)+$/ | /^(?:aa(bb)?)+$/I |
2593 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
2594 | Options: anchored | Options: anchored |
2595 | No first char | No first char |
2596 | No need char | No need char |
2597 | aabbaa | aabbaa |
2598 | 0: aabbaa | 0: aabbaa |
2599 | 1: bb | 1: bb |
2600 | ||
2601 | /^(aa(b(b))?)+$/ | /^(aa(b(b))?)+$/I |
2602 | Capturing subpattern count = 3 | Capturing subpattern count = 3 |
2603 | Options: anchored | Options: anchored |
2604 | No first char | No first char |
2605 | No need char | No need char |
2606 | aabbaa | aabbaa |
2607 | 0: aabbaa | 0: aabbaa |
2608 | 1: aa | 1: aa |
2609 | 2: bb | 2: bb |
2610 | 3: b | 3: b |
2611 | ||
2612 | /^(?:aa(b(b))?)+$/ | /^(?:aa(b(b))?)+$/I |
2613 | Capturing subpattern count = 2 | Capturing subpattern count = 2 |
2614 | Options: anchored | Options: anchored |
2615 | No first char | No first char |
2616 | No need char | No need char |
2617 | aabbaa | aabbaa |
2618 | 0: aabbaa | 0: aabbaa |
2619 | 1: bb | 1: bb |
2620 | 2: b | 2: b |
2621 | ||
2622 | /^(?:aa(b(?:b))?)+$/ | /^(?:aa(b(?:b))?)+$/I |
2623 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
2624 | Options: anchored | Options: anchored |
2625 | No first char | No first char |
2626 | No need char | No need char |
2627 | aabbaa | aabbaa |
2628 | 0: aabbaa | 0: aabbaa |
2629 | 1: bb | 1: bb |
2630 | ||
2631 | /^(?:aa(bb(?:b))?)+$/ | /^(?:aa(bb(?:b))?)+$/I |
2632 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
2633 | Options: anchored | Options: anchored |
2634 | No first char | No first char |
2635 | No need char | No need char |
2636 | aabbbaa | aabbbaa |
2637 | 0: aabbbaa | 0: aabbbaa |
2638 | 1: bbb | 1: bbb |
2639 | ||
2640 | /^(?:aa(b(?:bb))?)+$/ | /^(?:aa(b(?:bb))?)+$/I |
2641 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
2642 | Options: anchored | Options: anchored |
2643 | No first char | No first char |
2644 | No need char | No need char |
2645 | aabbbaa | aabbbaa |
2646 | 0: aabbbaa | 0: aabbbaa |
2647 | 1: bbb | 1: bbb |
2648 | ||
2649 | /^(?:aa(?:b(b))?)+$/ | /^(?:aa(?:b(b))?)+$/I |
2650 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
2651 | Options: anchored | Options: anchored |
2652 | No first char | No first char |
2653 | No need char | No need char |
2654 | aabbaa | aabbaa |
2655 | 0: aabbaa | 0: aabbaa |
2656 | 1: b | 1: b |
2657 | ||
2658 | /^(?:aa(?:b(bb))?)+$/ | /^(?:aa(?:b(bb))?)+$/I |
2659 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
2660 | Options: anchored | Options: anchored |
2661 | No first char | No first char |
2662 | No need char | No need char |
2663 | aabbbaa | aabbbaa |
2664 | 0: aabbbaa | 0: aabbbaa |
2665 | 1: bb | 1: bb |
2666 | ||
2667 | /^(aa(b(bb))?)+$/ | /^(aa(b(bb))?)+$/I |
2668 | Capturing subpattern count = 3 | Capturing subpattern count = 3 |
2669 | Options: anchored | Options: anchored |
2670 | No first char | No first char |
2671 | No need char | No need char |
2672 | aabbbaa | aabbbaa |
2673 | 0: aabbbaa | 0: aabbbaa |
2674 | 1: aa | 1: aa |
2675 | 2: bbb | 2: bbb |
2676 | 3: bb | 3: bb |
2677 | ||
2678 | /^(aa(bb(bb))?)+$/ | /^(aa(bb(bb))?)+$/I |
2679 | Capturing subpattern count = 3 | Capturing subpattern count = 3 |
2680 | Options: anchored | Options: anchored |
2681 | No first char | No first char |
2682 | No need char | No need char |
2683 | aabbbbaa | aabbbbaa |
2684 | 0: aabbbbaa | 0: aabbbbaa |
2685 | 1: aa | 1: aa |
2686 | 2: bbbb | 2: bbbb |
2687 | 3: bb | 3: bb |
2688 | ||
2689 | /--------------------------------------------------------------------/ | /--------------------------------------------------------------------/I |
2690 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
2691 | No options | No options |
2692 | First char = '-' | First char = '-' |
2693 | Need char = '-' | Need char = '-' |
2694 | ||
2695 | /#/xMD | /#/IxDZ |
Memory allocation (code space): 7 | ||
2696 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2697 | 0 3 Bra 0 | Bra |
2698 | 3 3 Ket | Ket |
2699 | 6 End | End |
2700 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2701 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
2702 | Options: extended | Options: extended |
2703 | No first char | No first char |
2704 | No need char | No need char |
2705 | ||
2706 | /a#/xMD | /a#/IxDZ |
Memory allocation (code space): 9 | ||
2707 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2708 | 0 5 Bra 0 | Bra |
2709 | 3 a | a |
2710 | 5 5 Ket | Ket |
2711 | 8 End | End |
2712 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2713 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
2714 | Options: extended | Options: extended |
2715 | First char = 'a' | First char = 'a' |
2716 | No need char | No need char |
2717 | ||
2718 | /[\s]/D | /[\s]/DZ |
2719 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2720 | 0 36 Bra 0 | Bra |
2721 | 3 [\x09\x0a\x0c\x0d ] | [\x09\x0a\x0c\x0d ] |
2722 | 36 36 Ket | Ket |
2723 | 39 End | End |
2724 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2725 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
2726 | No options | No options |
2727 | No first char | No first char |
2728 | No need char | No need char |
2729 | ||
2730 | /[\S]/D | /[\S]/DZ |
2731 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2732 | 0 36 Bra 0 | Bra |
2733 | 3 [\x00-\x08\x0b\x0e-\x1f!-\xff] | [\x00-\x08\x0b\x0e-\x1f!-\xff] |
2734 | 36 36 Ket | Ket |
2735 | 39 End | End |
2736 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2737 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
2738 | No options | No options |
2739 | No first char | No first char |
2740 | No need char | No need char |
2741 | ||
2742 | /a(?i)b/D | /a(?i)b/DZ |
2743 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2744 | 0 9 Bra 0 | Bra |
2745 | 3 a | a |
2746 | 5 01 Opt | 01 Opt |
2747 | 7 NC b | NC b |
2748 | 9 9 Ket | Ket |
2749 | 12 End | End |
2750 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2751 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
2752 | No options | No options |
Case state changes | ||
2753 | First char = 'a' | First char = 'a' |
2754 | Need char = 'b' (caseless) | Need char = 'b' (caseless) |
2755 | ab | ab |
2756 | 0: ab | 0: ab |
2757 | aB | aB |
2758 | 0: aB | 0: aB |
2759 | *** Failers | *** Failers |
2760 | No match | No match |
2761 | AB | AB |
2762 | No match | No match |
2763 | ||
2764 | /(a(?i)b)/D | /(a(?i)b)/DZ |
2765 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2766 | 0 17 Bra 0 | Bra |
2767 | 3 9 Bra 1 | CBra 1 |
2768 | 6 a | a |
2769 | 8 01 Opt | 01 Opt |
2770 | 10 NC b | NC b |
2771 | 12 9 Ket | Ket |
2772 | 15 00 Opt | 00 Opt |
2773 | 17 17 Ket | Ket |
2774 | 20 End | End |
2775 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2776 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
2777 | No options | No options |
Case state changes | ||
2778 | First char = 'a' | First char = 'a' |
2779 | Need char = 'b' (caseless) | Need char = 'b' (caseless) |
2780 | ab | ab |
# | Line 2770 Need char = 'b' (caseless) | Line 2783 Need char = 'b' (caseless) |
2783 | aB | aB |
2784 | 0: aB | 0: aB |
2785 | 1: aB | 1: aB |
2786 | *** Failers | *** Failers |
2787 | No match | No match |
2788 | AB | AB |
2789 | No match | No match |
2790 | ||
2791 | / (?i)abc/xD | / (?i)abc/IxDZ |
2792 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2793 | 0 9 Bra 0 | Bra |
2794 | 3 NC abc | NC abc |
2795 | 9 9 Ket | Ket |
2796 | 12 End | End |
2797 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2798 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
2799 | Options: caseless extended | Options: caseless extended |
# | Line 2788 First char = 'a' (caseless) | Line 2801 First char = 'a' (caseless) |
2801 | Need char = 'c' (caseless) | Need char = 'c' (caseless) |
2802 | ||
2803 | /#this is a comment | /#this is a comment |
2804 | (?i)abc/xD | (?i)abc/IxDZ |
2805 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2806 | 0 9 Bra 0 | Bra |
2807 | 3 NC abc | NC abc |
2808 | 9 9 Ket | Ket |
2809 | 12 End | End |
2810 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2811 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
2812 | Options: caseless extended | Options: caseless extended |
2813 | First char = 'a' (caseless) | First char = 'a' (caseless) |
2814 | Need char = 'c' (caseless) | Need char = 'c' (caseless) |
2815 | ||
2816 | /123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890/D | /123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890/DZ |
2817 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2818 | 0 603 Bra 0 | Bra |
2819 | 3 123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890 | 123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890 |
2820 | 603 603 Ket | Ket |
2821 | 606 End | End |
2822 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2823 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
2824 | No options | No options |
2825 | First char = '1' | First char = '1' |
2826 | Need char = '0' | Need char = '0' |
2827 | ||
2828 | /\Q123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890/D | /\Q123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890/DZ |
2829 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2830 | 0 603 Bra 0 | Bra |
2831 | 3 123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890 | 123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890 |
2832 | 603 603 Ket | Ket |
2833 | 606 End | End |
2834 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2835 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
2836 | No options | No options |
2837 | First char = '1' | First char = '1' |
2838 | Need char = '0' | Need char = '0' |
2839 | ||
2840 | /\Q\E/D | /\Q\E/DZ |
2841 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2842 | 0 3 Bra 0 | Bra |
2843 | 3 3 Ket | Ket |
2844 | 6 End | End |
2845 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2846 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
2847 | No options | No options |
# | Line 2837 No need char | Line 2850 No need char |
2850 | \ | \ |
2851 | 0: | 0: |
2852 | ||
2853 | /\Q\Ex/D | /\Q\Ex/DZ |
2854 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2855 | 0 5 Bra 0 | Bra |
2856 | 3 x | x |
2857 | 5 5 Ket | Ket |
2858 | 8 End | End |
2859 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2860 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
2861 | No options | No options |
2862 | First char = 'x' | First char = 'x' |
2863 | No need char | No need char |
2864 | ||
2865 | / \Q\E/D | / \Q\E/DZ |
2866 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2867 | 0 5 Bra 0 | Bra |
2868 | 3 | |
2869 | 5 5 Ket | Ket |
2870 | 8 End | End |
2871 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2872 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
2873 | No options | No options |
2874 | First char = ' ' | First char = ' ' |
2875 | No need char | No need char |
2876 | ||
2877 | /a\Q\E/D | /a\Q\E/DZ |
2878 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2879 | 0 5 Bra 0 | Bra |
2880 | 3 a | a |
2881 | 5 5 Ket | Ket |
2882 | 8 End | End |
2883 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2884 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
2885 | No options | No options |
# | Line 2876 No need char | Line 2889 No need char |
2889 | 0: a | 0: a |
2890 | bca | bca |
2891 | 0: a | 0: a |
2892 | bac | bac |
2893 | 0: a | 0: a |
2894 | ||
2895 | /a\Q\Eb/D | /a\Q\Eb/DZ |
2896 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2897 | 0 7 Bra 0 | Bra |
2898 | 3 ab | ab |
2899 | 7 7 Ket | Ket |
2900 | 10 End | End |
2901 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2902 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
2903 | No options | No options |
# | Line 2893 Need char = 'b' | Line 2906 Need char = 'b' |
2906 | abc | abc |
2907 | 0: ab | 0: ab |
2908 | ||
2909 | /\Q\Eabc/D | /\Q\Eabc/DZ |
2910 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2911 | 0 9 Bra 0 | Bra |
2912 | 3 abc | abc |
2913 | 9 9 Ket | Ket |
2914 | 12 End | End |
2915 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2916 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
2917 | No options | No options |
2918 | First char = 'a' | First char = 'a' |
2919 | Need char = 'c' | Need char = 'c' |
2920 | ||
2921 | /x*+\w/D | /x*+\w/DZ |
2922 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2923 | 0 12 Bra 0 | Bra |
2924 | 3 5 Once | x*+ |
2925 | 6 x* | \w |
2926 | 8 5 Ket | Ket |
2927 | 11 \w | End |
12 12 Ket | ||
15 End | ||
2928 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2929 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
2930 | Partial matching not supported | Partial matching not supported |
# | Line 2924 No need char | Line 2935 No need char |
2935 | 0: F | 0: F |
2936 | xxxxx | xxxxx |
2937 | No match | No match |
2938 | ||
2939 | /x?+/D | /x?+/DZ |
2940 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2941 | 0 11 Bra 0 | Bra |
2942 | 3 5 Once | x?+ |
2943 | 6 x? | Ket |
2944 | 8 5 Ket | End |
11 11 Ket | ||
14 End | ||
2945 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2946 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
2947 | No options | No options |
2948 | No first char | No first char |
2949 | No need char | No need char |
2950 | ||
2951 | /x++/D | /x++/DZ |
2952 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2953 | 0 11 Bra 0 | Bra |
2954 | 3 5 Once | x++ |
2955 | 6 x+ | Ket |
2956 | 8 5 Ket | End |
11 11 Ket | ||
14 End | ||
2957 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2958 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
2959 | Partial matching not supported | Partial matching not supported |
# | Line 2954 No options | Line 2961 No options |
2961 | First char = 'x' | First char = 'x' |
2962 | No need char | No need char |
2963 | ||
2964 | /x{1,3}+/D | /x{1,3}+/DZ |
2965 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2966 | 0 15 Bra 0 | Bra |
2967 | 3 9 Once | Once |
2968 | 6 x | x |
2969 | 8 x{,2} | x{0,2} |
2970 | 12 9 Ket | Ket |
2971 | 15 15 Ket | Ket |
2972 | 18 End | End |
2973 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2974 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
2975 | Partial matching not supported | Partial matching not supported |
# | Line 2970 No options | Line 2977 No options |
2977 | First char = 'x' | First char = 'x' |
2978 | No need char | No need char |
2979 | ||
2980 | /(x)*+/D | /(x)*+/DZ |
2981 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2982 | 0 18 Bra 0 | Bra |
2983 | 3 12 Once | Once |
2984 | 6 Brazero | Brazero |
2985 | 7 5 Bra 1 | CBra 1 |
2986 | 10 x | x |
2987 | 12 5 KetRmax | KetRmax |
2988 | 15 12 Ket | Ket |
2989 | 18 18 Ket | Ket |
2990 | 21 End | End |
2991 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
2992 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
2993 | No options | No options |
2994 | No first char | No first char |
2995 | No need char | No need char |
2996 | ||
2997 | /^(\w++|\s++)*$/ | /^(\w++|\s++)*$/I |
2998 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
2999 | Partial matching not supported | Partial matching not supported |
3000 | Options: anchored | Options: anchored |
# | Line 3000 No need char | Line 3007 No need char |
3007 | No match | No match |
3008 | this is not a line with only words and spaces! | this is not a line with only words and spaces! |
3009 | No match | No match |
3010 | ||
3011 | /(\d++)(\w)/ | /(\d++)(\w)/I |
3012 | Capturing subpattern count = 2 | Capturing subpattern count = 2 |
3013 | Partial matching not supported | Partial matching not supported |
3014 | No options | No options |
# | Line 3013 No need char | Line 3020 No need char |
3020 | 2: a | 2: a |
3021 | *** Failers | *** Failers |
3022 | No match | No match |
3023 | 12345+ | 12345+ |
3024 | No match | No match |
3025 | ||
3026 | /a++b/ | /a++b/I |
3027 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
3028 | Partial matching not supported | Partial matching not supported |
3029 | No options | No options |
# | Line 3025 Need char = 'b' | Line 3032 Need char = 'b' |
3032 | aaab | aaab |
3033 | 0: aaab | 0: aaab |
3034 | ||
3035 | /(a++b)/ | /(a++b)/I |
3036 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
3037 | Partial matching not supported | Partial matching not supported |
3038 | No options | No options |
# | Line 3035 Need char = 'b' | Line 3042 Need char = 'b' |
3042 | 0: aaab | 0: aaab |
3043 | 1: aaab | 1: aaab |
3044 | ||
3045 | /(a++)b/ | /(a++)b/I |
3046 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
3047 | Partial matching not supported | Partial matching not supported |
3048 | No options | No options |
# | Line 3045 Need char = 'b' | Line 3052 Need char = 'b' |
3052 | 0: aaab | 0: aaab |
3053 | 1: aaa | 1: aaa |
3054 | ||
3055 | /([^()]++|\([^()]*\))+/ | /([^()]++|\([^()]*\))+/I |
3056 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
3057 | Partial matching not supported | Partial matching not supported |
3058 | No options | No options |
# | Line 3054 No need char | Line 3061 No need char |
3061 | ((abc(ade)ufh()()x | ((abc(ade)ufh()()x |
3062 | 0: abc(ade)ufh()()x | 0: abc(ade)ufh()()x |
3063 | 1: x | 1: x |
3064 | ||
3065 | /\(([^()]++|\([^()]+\))+\)/ | /\(([^()]++|\([^()]+\))+\)/I |
3066 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
3067 | Partial matching not supported | Partial matching not supported |
3068 | No options | No options |
# | Line 3069 Need char = ')' | Line 3076 Need char = ')' |
3076 | 1: xyz | 1: xyz |
3077 | *** Failers | *** Failers |
3078 | No match | No match |
3079 | ((()aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa | ((()aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa |
3080 | No match | No match |
3081 | ||
3082 | /(abc){1,3}+/D | /(abc){1,3}+/DZ |
3083 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
3084 | 0 53 Bra 0 | Bra |
3085 | 3 47 Once | Once |
3086 | 6 9 Bra 1 | CBra 1 |
3087 | 9 abc | abc |
3088 | 15 9 Ket | Ket |
3089 | 18 Brazero | Brazero |
3090 | 19 28 Bra 0 | Bra |
3091 | 22 9 Bra 1 | CBra 1 |
3092 | 25 abc | abc |
3093 | 31 9 Ket | Ket |
3094 | 34 Brazero | Brazero |
3095 | 35 9 Bra 1 | CBra 1 |
3096 | 38 abc | abc |
3097 | 44 9 Ket | Ket |
3098 | 47 28 Ket | Ket |
3099 | 50 47 Ket | Ket |
3100 | 53 53 Ket | Ket |
3101 | 56 End | End |
3102 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
3103 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
3104 | No options | No options |
3105 | First char = 'a' | First char = 'a' |
3106 | Need char = 'c' | Need char = 'c' |
3107 | ||
3108 | /a+?+/ | /a+?+/I |
3109 | Failed: nothing to repeat at offset 3 | Failed: nothing to repeat at offset 3 |
3110 | ||
3111 | /a{2,3}?+b/ | /a{2,3}?+b/I |
3112 | Failed: nothing to repeat at offset 7 | Failed: nothing to repeat at offset 7 |
3113 | ||
3114 | /(?U)a+?+/ | /(?U)a+?+/I |
3115 | Failed: nothing to repeat at offset 7 | Failed: nothing to repeat at offset 7 |
3116 | ||
3117 | /a{2,3}?+b/U | /a{2,3}?+b/IU |
3118 | Failed: nothing to repeat at offset 7 | Failed: nothing to repeat at offset 7 |
3119 | ||
3120 | /x(?U)a++b/D | /x(?U)a++b/DZ |
3121 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
3122 | 0 15 Bra 0 | Bra |
3123 | 3 x | x |
3124 | 5 5 Once | a++ |
3125 | 8 a+ | b |
3126 | 10 5 Ket | Ket |
3127 | 13 b | End |
15 15 Ket | ||
18 End | ||
3128 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
3129 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
3130 | Partial matching not supported | Partial matching not supported |
# | Line 3129 Need char = 'b' | Line 3134 Need char = 'b' |
3134 | xaaaab | xaaaab |
3135 | 0: xaaaab | 0: xaaaab |
3136 | ||
3137 | /(?U)xa++b/D | /(?U)xa++b/DZ |
3138 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
3139 | 0 15 Bra 0 | Bra |
3140 | 3 x | x |
3141 | 5 5 Once | a++ |
3142 | 8 a+ | b |
3143 | 10 5 Ket | Ket |
3144 | 13 b | End |
15 15 Ket | ||
18 End | ||
3145 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
3146 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
3147 | Partial matching not supported | Partial matching not supported |
# | Line 3148 Need char = 'b' | Line 3151 Need char = 'b' |
3151 | xaaaab | xaaaab |
3152 | 0: xaaaab | 0: xaaaab |
3153 | ||
3154 | /^((a+)(?U)([ab]+)(?-U)([bc]+)(\w*))/D | /^((a+)(?U)([ab]+)(?-U)([bc]+)(\w*))/DZ |
3155 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
3156 | 0 106 Bra 0 | Bra |
3157 | 3 ^ | ^ |
3158 | 4 99 Bra 1 | CBra 1 |
3159 | 7 5 Bra 2 | CBra 2 |
3160 | 10 a+ | a+ |
3161 | 12 5 Ket | Ket |
3162 | 15 37 Bra 3 | CBra 3 |
3163 | 18 [ab]+? | [ab]+? |
3164 | 52 37 Ket | Ket |
3165 | 55 37 Bra 4 | CBra 4 |
3166 | 58 [bc]+ | [bc]+ |
3167 | 92 37 Ket | Ket |
3168 | 95 5 Bra 5 | CBra 5 |
3169 | 98 \w* | \w* |
3170 | 100 5 Ket | Ket |
3171 | 103 99 Ket | Ket |
3172 | 106 106 Ket | Ket |
3173 | 109 End | End |
3174 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
3175 | Capturing subpattern count = 5 | Capturing subpattern count = 5 |
3176 | Partial matching not supported | Partial matching not supported |
# | Line 3175 Options: anchored | Line 3178 Options: anchored |
3178 | No first char | No first char |
3179 | No need char | No need char |
3180 | ||
3181 | /^x(?U)a+b/D | /^x(?U)a+b/DZ |
3182 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
3183 | 0 10 Bra 0 | Bra |
3184 | 3 ^ | ^ |
3185 | 4 x | x |
3186 | 6 a+? | a++ |
3187 | 8 b | b |
3188 | 10 10 Ket | Ket |
3189 | 13 End | End |
3190 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
3191 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
3192 | Partial matching not supported | Partial matching not supported |
# | Line 3191 Options: anchored | Line 3194 Options: anchored |
3194 | No first char | No first char |
3195 | Need char = 'b' | Need char = 'b' |
3196 | ||
3197 | /^x(?U)(a+)b/D | /^x(?U)(a+)b/DZ |
3198 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
3199 | 0 16 Bra 0 | Bra |
3200 | 3 ^ | ^ |
3201 | 4 x | x |
3202 | 6 5 Bra 1 | CBra 1 |
3203 | 9 a+? | a+? |
3204 | 11 5 Ket | Ket |
3205 | 14 b | b |
3206 | 16 16 Ket | Ket |
3207 | 19 End | End |
3208 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
3209 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
3210 | Partial matching not supported | Partial matching not supported |
# | Line 3209 Options: anchored | Line 3212 Options: anchored |
3212 | No first char | No first char |
3213 | Need char = 'b' | Need char = 'b' |
3214 | ||
3215 | /[.x.]/ | /[.x.]/I |
3216 | Failed: POSIX collating elements are not supported at offset 0 | Failed: POSIX collating elements are not supported at offset 0 |
3217 | ||
3218 | /[=x=]/ | /[=x=]/I |
3219 | Failed: POSIX collating elements are not supported at offset 0 | Failed: POSIX collating elements are not supported at offset 0 |
3220 | ||
3221 | /[:x:]/ | /[:x:]/I |
3222 | Failed: POSIX named classes are supported only within a class at offset 0 | Failed: POSIX named classes are supported only within a class at offset 0 |
3223 | ||
3224 | /\l/ | /\l/I |
3225 | Failed: PCRE does not support \L, \l, \N, \U, or \u at offset 1 | Failed: PCRE does not support \L, \l, \N, \U, or \u at offset 1 |
3226 | ||
3227 | /\L/ | /\L/I |
3228 | Failed: PCRE does not support \L, \l, \N, \U, or \u at offset 1 | Failed: PCRE does not support \L, \l, \N, \U, or \u at offset 1 |
3229 | ||
3230 | /\N{name}/ | /\N{name}/I |
3231 | Failed: PCRE does not support \L, \l, \N, \U, or \u at offset 1 | Failed: PCRE does not support \L, \l, \N, \U, or \u at offset 1 |
3232 | ||
3233 | /\u/ | /\u/I |
3234 | Failed: PCRE does not support \L, \l, \N, \U, or \u at offset 1 | Failed: PCRE does not support \L, \l, \N, \U, or \u at offset 1 |
3235 | ||
3236 | /\U/ | /\U/I |
3237 | Failed: PCRE does not support \L, \l, \N, \U, or \u at offset 1 | Failed: PCRE does not support \L, \l, \N, \U, or \u at offset 1 |
3238 | ||
3239 | /[/ | /[/I |
3240 | Failed: missing terminating ] for character class at offset 1 | Failed: missing terminating ] for character class at offset 1 |
3241 | ||
3242 | /[a-/ | /[a-/I |
3243 | Failed: missing terminating ] for character class at offset 3 | Failed: missing terminating ] for character class at offset 3 |
3244 | ||
3245 | /[[:space:]/ | /[[:space:]/I |
3246 | Failed: missing terminating ] for character class at offset 10 | Failed: missing terminating ] for character class at offset 10 |
3247 | ||
3248 | /[\s]/DM | /[\s]/IDZ |
Memory allocation (code space): 40 | ||
3249 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
3250 | 0 36 Bra 0 | Bra |
3251 | 3 [\x09\x0a\x0c\x0d ] | [\x09\x0a\x0c\x0d ] |
3252 | 36 36 Ket | Ket |
3253 | 39 End | End |
3254 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
3255 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
3256 | No options | No options |
3257 | No first char | No first char |
3258 | No need char | No need char |
3259 | ||
3260 | /[[:space:]]/DM | /[[:space:]]/IDZ |
Memory allocation (code space): 40 | ||
3261 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
3262 | 0 36 Bra 0 | Bra |
3263 | 3 [\x09-\x0d ] | [\x09-\x0d ] |
3264 | 36 36 Ket | Ket |
3265 | 39 End | End |
3266 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
3267 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
3268 | No options | No options |
3269 | No first char | No first char |
3270 | No need char | No need char |
3271 | ||
3272 | /[[:space:]abcde]/DM | /[[:space:]abcde]/IDZ |
Memory allocation (code space): 40 | ||
3273 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
3274 | 0 36 Bra 0 | Bra |
3275 | 3 [\x09-\x0d a-e] | [\x09-\x0d a-e] |
3276 | 36 36 Ket | Ket |
3277 | 39 End | End |
3278 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
3279 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
3280 | No options | No options |
3281 | No first char | No first char |
3282 | No need char | No need char |
3283 | ||
3284 | /< (?: (?(R) \d++ | [^<>]*+) | (?R)) * >/x | /< (?: (?(R) \d++ | [^<>]*+) | (?R)) * >/Ix |
3285 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
3286 | Partial matching not supported | Partial matching not supported |
3287 | Options: extended | Options: extended |
# | Line 3295 Need char = '>' | Line 3295 Need char = '>' |
3295 | 0: <abc <123> hij> | 0: <abc <123> hij> |
3296 | <abc <def> hij> | <abc <def> hij> |
3297 | 0: <def> | 0: <def> |
3298 | <abc<>def> | <abc<>def> |
3299 | 0: <abc<>def> | 0: <abc<>def> |
3300 | <abc<> | <abc<> |
3301 | 0: <> | 0: <> |
3302 | *** Failers | *** Failers |
3303 | No match | No match |
3304 | <abc | <abc |
3305 | No match | No match |
3306 | ||
3307 | |8J\$WE\<\.rX\+ix\[d1b\!H\#\?vV0vrK\:ZH1\=2M\>iV\;\?aPhFB\<\*vW\@QW\@sO9\}cfZA\-i\'w\%hKd6gt1UJP\,15_\#QY\$M\^Mss_U\/\]\&LK9\[5vQub\^w\[KDD\<EjmhUZ\?\.akp2dF\>qmj\;2\}YWFdYx\.Ap\]hjCPTP\(n28k\+3\;o\&WXqs\/gOXdr\$\:r\'do0\;b4c\(f_Gr\=\"\\4\)\[01T7ajQJvL\$W\~mL_sS\/4h\:x\*\[ZN\=KLs\&L5zX\/\/\>it\,o\:aU\(\;Z\>pW\&T7oP\'2K\^E\:x9\'c\[\%z\-\,64JQ5AeH_G\#KijUKghQw\^\\vea3a\?kka_G\$8\#\`\*kynsxzBLru\'\]k_\[7FrVx\}\^\=\$blx\>s\-N\%j\;D\*aZDnsw\:YKZ\%Q\.Kne9\#hP\?\+b3\(SOvL\,\^\;\&u5\@\?5C5Bhb\=m\-vEh_L15Jl\]U\)0RP6\{q\%L\^_z5E\'Dw6X\b|DM | |8J\$WE\<\.rX\+ix\[d1b\!H\#\?vV0vrK\:ZH1\=2M\>iV\;\?aPhFB\<\*vW\@QW\@sO9\}cfZA\-i\'w\%hKd6gt1UJP\,15_\#QY\$M\^Mss_U\/\]\&LK9\[5vQub\^w\[KDD\<EjmhUZ\?\.akp2dF\>qmj\;2\}YWFdYx\.Ap\]hjCPTP\(n28k\+3\;o\&WXqs\/gOXdr\$\:r\'do0\;b4c\(f_Gr\=\"\\4\)\[01T7ajQJvL\$W\~mL_sS\/4h\:x\*\[ZN\=KLs\&L5zX\/\/\>it\,o\:aU\(\;Z\>pW\&T7oP\'2K\^E\:x9\'c\[\%z\-\,64JQ5AeH_G\#KijUKghQw\^\\vea3a\?kka_G\$8\#\`\*kynsxzBLru\'\]k_\[7FrVx\}\^\=\$blx\>s\-N\%j\;D\*aZDnsw\:YKZ\%Q\.Kne9\#hP\?\+b3\(SOvL\,\^\;\&u5\@\?5C5Bhb\=m\-vEh_L15Jl\]U\)0RP6\{q\%L\^_z5E\'Dw6X\b|IDZ |
Memory allocation (code space): 826 | ||
3308 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
3309 | 0 822 Bra 0 | Bra |
3310 | 3 8J$WE<.rX+ix[d1b!H#?vV0vrK:ZH1=2M>iV;?aPhFB<*vW@QW@sO9}cfZA-i'w%hKd6gt1UJP,15_#QY$M^Mss_U/]&LK9[5vQub^w[KDD<EjmhUZ?.akp2dF>qmj;2}YWFdYx.Ap]hjCPTP(n28k+3;o&WXqs/gOXdr$:r'do0;b4c(f_Gr="\4)[01T7ajQJvL$W~mL_sS/4h:x*[ZN=KLs&L5zX//>it,o:aU(;Z>pW&T7oP'2K^E:x9'c[%z-,64JQ5AeH_G#KijUKghQw^\vea3a?kka_G$8#`*kynsxzBLru']k_[7FrVx}^=$blx>s-N%j;D*aZDnsw:YKZ%Q.Kne9#hP?+b3(SOvL,^;&u5@?5C5Bhb=m-vEh_L15Jl]U)0RP6{q%L^_z5E'Dw6X | 8J$WE<.rX+ix[d1b!H#?vV0vrK:ZH1=2M>iV;?aPhFB<*vW@QW@sO9}cfZA-i'w%hKd6gt1UJP,15_#QY$M^Mss_U/]&LK9[5vQub^w[KDD<EjmhUZ?.akp2dF>qmj;2}YWFdYx.Ap]hjCPTP(n28k+3;o&WXqs/gOXdr$:r'do0;b4c(f_Gr="\4)[01T7ajQJvL$W~mL_sS/4h:x*[ZN=KLs&L5zX//>it,o:aU(;Z>pW&T7oP'2K^E:x9'c[%z-,64JQ5AeH_G#KijUKghQw^\vea3a?kka_G$8#`*kynsxzBLru']k_[7FrVx}^=$blx>s-N%j;D*aZDnsw:YKZ%Q.Kne9#hP?+b3(SOvL,^;&u5@?5C5Bhb=m-vEh_L15Jl]U)0RP6{q%L^_z5E'Dw6X |
3311 | 821 \b | \b |
3312 | 822 822 Ket | Ket |
3313 | 825 End | End |
3314 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
3315 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
3316 | No options | No options |
3317 | First char = '8' | First char = '8' |
3318 | Need char = 'X' | Need char = 'X' |
3319 | ||
3320 | |\$\<\.X\+ix\[d1b\!H\#\?vV0vrK\:ZH1\=2M\>iV\;\?aPhFB\<\*vW\@QW\@sO9\}cfZA\-i\'w\%hKd6gt1UJP\,15_\#QY\$M\^Mss_U\/\]\&LK9\[5vQub\^w\[KDD\<EjmhUZ\?\.akp2dF\>qmj\;2\}YWFdYx\.Ap\]hjCPTP\(n28k\+3\;o\&WXqs\/gOXdr\$\:r\'do0\;b4c\(f_Gr\=\"\\4\)\[01T7ajQJvL\$W\~mL_sS\/4h\:x\*\[ZN\=KLs\&L5zX\/\/\>it\,o\:aU\(\;Z\>pW\&T7oP\'2K\^E\:x9\'c\[\%z\-\,64JQ5AeH_G\#KijUKghQw\^\\vea3a\?kka_G\$8\#\`\*kynsxzBLru\'\]k_\[7FrVx\}\^\=\$blx\>s\-N\%j\;D\*aZDnsw\:YKZ\%Q\.Kne9\#hP\?\+b3\(SOvL\,\^\;\&u5\@\?5C5Bhb\=m\-vEh_L15Jl\]U\)0RP6\{q\%L\^_z5E\'Dw6X\b|DM | |\$\<\.X\+ix\[d1b\!H\#\?vV0vrK\:ZH1\=2M\>iV\;\?aPhFB\<\*vW\@QW\@sO9\}cfZA\-i\'w\%hKd6gt1UJP\,15_\#QY\$M\^Mss_U\/\]\&LK9\[5vQub\^w\[KDD\<EjmhUZ\?\.akp2dF\>qmj\;2\}YWFdYx\.Ap\]hjCPTP\(n28k\+3\;o\&WXqs\/gOXdr\$\:r\'do0\;b4c\(f_Gr\=\"\\4\)\[01T7ajQJvL\$W\~mL_sS\/4h\:x\*\[ZN\=KLs\&L5zX\/\/\>it\,o\:aU\(\;Z\>pW\&T7oP\'2K\^E\:x9\'c\[\%z\-\,64JQ5AeH_G\#KijUKghQw\^\\vea3a\?kka_G\$8\#\`\*kynsxzBLru\'\]k_\[7FrVx\}\^\=\$blx\>s\-N\%j\;D\*aZDnsw\:YKZ\%Q\.Kne9\#hP\?\+b3\(SOvL\,\^\;\&u5\@\?5C5Bhb\=m\-vEh_L15Jl\]U\)0RP6\{q\%L\^_z5E\'Dw6X\b|IDZ |
Memory allocation (code space): 816 | ||
3321 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
3322 | 0 812 Bra 0 | Bra |
3323 | 3 $<.X+ix[d1b!H#?vV0vrK:ZH1=2M>iV;?aPhFB<*vW@QW@sO9}cfZA-i'w%hKd6gt1UJP,15_#QY$M^Mss_U/]&LK9[5vQub^w[KDD<EjmhUZ?.akp2dF>qmj;2}YWFdYx.Ap]hjCPTP(n28k+3;o&WXqs/gOXdr$:r'do0;b4c(f_Gr="\4)[01T7ajQJvL$W~mL_sS/4h:x*[ZN=KLs&L5zX//>it,o:aU(;Z>pW&T7oP'2K^E:x9'c[%z-,64JQ5AeH_G#KijUKghQw^\vea3a?kka_G$8#`*kynsxzBLru']k_[7FrVx}^=$blx>s-N%j;D*aZDnsw:YKZ%Q.Kne9#hP?+b3(SOvL,^;&u5@?5C5Bhb=m-vEh_L15Jl]U)0RP6{q%L^_z5E'Dw6X | $<.X+ix[d1b!H#?vV0vrK:ZH1=2M>iV;?aPhFB<*vW@QW@sO9}cfZA-i'w%hKd6gt1UJP,15_#QY$M^Mss_U/]&LK9[5vQub^w[KDD<EjmhUZ?.akp2dF>qmj;2}YWFdYx.Ap]hjCPTP(n28k+3;o&WXqs/gOXdr$:r'do0;b4c(f_Gr="\4)[01T7ajQJvL$W~mL_sS/4h:x*[ZN=KLs&L5zX//>it,o:aU(;Z>pW&T7oP'2K^E:x9'c[%z-,64JQ5AeH_G#KijUKghQw^\vea3a?kka_G$8#`*kynsxzBLru']k_[7FrVx}^=$blx>s-N%j;D*aZDnsw:YKZ%Q.Kne9#hP?+b3(SOvL,^;&u5@?5C5Bhb=m-vEh_L15Jl]U)0RP6{q%L^_z5E'Dw6X |
3324 | 811 \b | \b |
3325 | 812 812 Ket | Ket |
3326 | 815 End | End |
3327 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
3328 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
3329 | No options | No options |
# | Line 3344 No need char | Line 3342 No need char |
3342 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
3343 | Partial matching not supported | Partial matching not supported |
3344 | No options | No options |
3345 | First char at start or follows \n | First char at start or follows newline |
3346 | No need char | No need char |
3347 | ||
3348 | /(.*)\d+\1/Is | /(.*)\d+\1/Is |
3349 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
3350 | Max back reference = 1 | Max back reference = 1 |
# | Line 3367 Capturing subpattern count = 2 | Line 3365 Capturing subpattern count = 2 |
3365 | Max back reference = 2 | Max back reference = 2 |
3366 | Partial matching not supported | Partial matching not supported |
3367 | No options | No options |
3368 | First char at start or follows \n | First char at start or follows newline |
3369 | Need char = 'z' | Need char = 'z' |
3370 | ||
3371 | /((.*))\d+\1/I | /((.*))\d+\1/I |
# | Line 3381 No need char | Line 3379 No need char |
3379 | 0: bc123bc | 0: bc123bc |
3380 | 1: bc | 1: bc |
3381 | 2: bc | 2: bc |
3382 | ||
3383 | /a[b]/I | /a[b]/I |
3384 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
3385 | No options | No options |
# | Line 3395 No options | Line 3393 No options |
3393 | First char = 'a' | First char = 'a' |
3394 | No need char | No need char |
3395 | ||
3396 | /(?=abc).xyz/iI | /(?=abc).xyz/IiI |
3397 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
3398 | Options: caseless | Options: caseless |
3399 | First char = 'a' (caseless) | First char = 'a' (caseless) |
# | Line 3404 Need char = 'z' (caseless) | Line 3402 Need char = 'z' (caseless) |
3402 | /(?=abc)(?i).xyz/I | /(?=abc)(?i).xyz/I |
3403 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
3404 | No options | No options |
Case state changes | ||
3405 | First char = 'a' | First char = 'a' |
3406 | Need char = 'z' (caseless) | Need char = 'z' (caseless) |
3407 | ||
# | Line 3524 No options | Line 3521 No options |
3521 | First char = 'a' | First char = 'a' |
3522 | Need char = 'b' | Need char = 'b' |
3523 | ||
3524 | /^a/mI | /^a/Im |
3525 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
3526 | Options: multiline | Options: multiline |
3527 | First char at start or follows \n | First char at start or follows newline |
3528 | Need char = 'a' | Need char = 'a' |
3529 | abcde | abcde |
3530 | 0: a | 0: a |
3531 | xy\nabc | xy\nabc |
3532 | 0: a | 0: a |
3533 | *** Failers | *** Failers |
3534 | No match | No match |
3535 | xyabc | xyabc |
3536 | No match | No match |
3537 | ||
3538 | /c|abc/I | /c|abc/I |
# | Line 3554 Starting byte set: A B a b | Line 3551 Starting byte set: A B a b |
3551 | /[ab](?i)cd/IS | /[ab](?i)cd/IS |
3552 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
3553 | No options | No options |
Case state changes | ||
3554 | No first char | No first char |
3555 | Need char = 'd' (caseless) | Need char = 'd' (caseless) |
3556 | Starting byte set: a b | Starting byte set: a b |
3557 | ||
3558 | /abc(?C)def/ | /abc(?C)def/I |
3559 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
3560 | No options | No options |
3561 | First char = 'a' | First char = 'a' |
# | Line 3568 Need char = 'f' | Line 3564 Need char = 'f' |
3564 | --->abcdef | --->abcdef |
3565 | 0 ^ ^ d | 0 ^ ^ d |
3566 | 0: abcdef | 0: abcdef |
3567 | 1234abcdef | 1234abcdef |
3568 | --->1234abcdef | --->1234abcdef |
3569 | 0 ^ ^ d | 0 ^ ^ d |
3570 | 0: abcdef | 0: abcdef |
# | Line 3576 Need char = 'f' | Line 3572 Need char = 'f' |
3572 | No match | No match |
3573 | abcxyz | abcxyz |
3574 | No match | No match |
3575 | abcxyzf | abcxyzf |
3576 | --->abcxyzf | --->abcxyzf |
3577 | 0 ^ ^ d | 0 ^ ^ d |
3578 | No match | No match |
3579 | ||
3580 | /abc(?C)de(?C1)f/ | /abc(?C)de(?C1)f/I |
3581 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
3582 | No options | No options |
3583 | First char = 'a' | First char = 'a' |
# | Line 3591 Need char = 'f' | Line 3587 Need char = 'f' |
3587 | 0 ^ ^ d | 0 ^ ^ d |
3588 | 1 ^ ^ f | 1 ^ ^ f |
3589 | 0: abcdef | 0: abcdef |
3590 | ||
3591 | /(?C1)\dabc(?C2)def/ | /(?C1)\dabc(?C2)def/I |
3592 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
3593 | No options | No options |
3594 | No first char | No first char |
# | Line 3607 Need char = 'f' | Line 3603 Need char = 'f' |
3603 | 0: 4abcdef | 0: 4abcdef |
3604 | *** Failers | *** Failers |
3605 | No match | No match |
3606 | abcdef | abcdef |
3607 | --->abcdef | --->abcdef |
3608 | 1 ^ \d | 1 ^ \d |
3609 | 1 ^ \d | 1 ^ \d |
# | Line 3616 No match | Line 3612 No match |
3612 | 1 ^ \d | 1 ^ \d |
3613 | 1 ^ \d | 1 ^ \d |
3614 | No match | No match |
3615 | ||
3616 | /(?C255)ab/ | /(?C255)ab/I |
3617 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
3618 | No options | No options |
3619 | First char = 'a' | First char = 'a' |
3620 | Need char = 'b' | Need char = 'b' |
3621 | ||
3622 | /(?C256)ab/ | /(?C256)ab/I |
3623 | Failed: number after (?C is > 255 at offset 6 | Failed: number after (?C is > 255 at offset 6 |
3624 | ||
3625 | /(?Cab)xx/ | /(?Cab)xx/I |
3626 | Failed: closing ) for (?C expected at offset 3 | Failed: closing ) for (?C expected at offset 3 |
3627 | ||
3628 | /(?C12vr)x/ | /(?C12vr)x/I |
3629 | Failed: closing ) for (?C expected at offset 5 | Failed: closing ) for (?C expected at offset 5 |
3630 | ||
3631 | /abc(?C)def/ | /abc(?C)def/I |
3632 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
3633 | No options | No options |
3634 | First char = 'a' | First char = 'a' |
# | Line 3644 No match | Line 3640 No match |
3640 | 0 ^ ^ d | 0 ^ ^ d |
3641 | 0: abcdef | 0: abcdef |
3642 | ||
3643 | /(abc)(?C)de(?C1)f/ | /(abc)(?C)de(?C1)f/I |
3644 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
3645 | No options | No options |
3646 | First char = 'a' | First char = 'a' |
# | Line 3655 Need char = 'f' | Line 3651 Need char = 'f' |
3651 | 1 ^ ^ f | 1 ^ ^ f |
3652 | 0: abcdef | 0: abcdef |
3653 | 1: abc | 1: abc |
3654 | 123abcdef\C+ | 123abcdef\C+ |
3655 | Callout 0: last capture = 1 | Callout 0: last capture = 1 |
3656 | 0: <unset> | 0: <unset> |
3657 | 1: abc | 1: abc |
# | Line 3668 Callout 1: last capture = 1 | Line 3664 Callout 1: last capture = 1 |
3664 | ^ ^ f | ^ ^ f |
3665 | 0: abcdef | 0: abcdef |
3666 | 1: abc | 1: abc |
3667 | 123abcdef\C- | 123abcdef\C- |
3668 | 0: abcdef | 0: abcdef |
3669 | 1: abc | 1: abc |
3670 | *** Failers | *** Failers |
3671 | No match | No match |
3672 | 123abcdef\C!1 | 123abcdef\C!1 |
3673 | --->123abcdef | --->123abcdef |
3674 | 0 ^ ^ d | 0 ^ ^ d |
3675 | 1 ^ ^ f | 1 ^ ^ f |
3676 | No match | No match |
3677 | ||
3678 | /(?C0)(abc(?C1))*/ | /(?C0)(abc(?C1))*/I |
3679 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
3680 | No options | No options |
3681 | No first char | No first char |
# | Line 3692 No need char | Line 3688 No need char |
3688 | 1 ^ ^ ) | 1 ^ ^ ) |
3689 | 0: abcabcabc | 0: abcabcabc |
3690 | 1: abc | 1: abc |
3691 | abcabc\C!1!3 | abcabc\C!1!3 |
3692 | --->abcabc | --->abcabc |
3693 | 0 ^ (abc(?C1))* | 0 ^ (abc(?C1))* |
3694 | 1 ^ ^ ) | 1 ^ ^ ) |
# | Line 3703 No need char | Line 3699 No need char |
3699 | --->*** Failers | --->*** Failers |
3700 | 0 ^ (abc(?C1))* | 0 ^ (abc(?C1))* |
3701 | 0: | 0: |
3702 | abcabcabc\C!1!3 | abcabcabc\C!1!3 |
3703 | --->abcabcabc | --->abcabcabc |
3704 | 0 ^ (abc(?C1))* | 0 ^ (abc(?C1))* |
3705 | 1 ^ ^ ) | 1 ^ ^ ) |
# | Line 3712 No need char | Line 3708 No need char |
3708 | 0: abcabc | 0: abcabc |
3709 | 1: abc | 1: abc |
3710 | ||
3711 | /(\d{3}(?C))*/ | /(\d{3}(?C))*/I |
3712 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
3713 | Partial matching not supported | Partial matching not supported |
3714 | No options | No options |
# | Line 3737 Callout 0: last capture = 1 | Line 3733 Callout 0: last capture = 1 |
3733 | ^ ^ ) | ^ ^ ) |
3734 | 0: 123456 | 0: 123456 |
3735 | 1: 456 | 1: 456 |
3736 | 123456789\C+ | 123456789\C+ |
3737 | Callout 0: last capture = -1 | Callout 0: last capture = -1 |
3738 | 0: <unset> | 0: <unset> |
3739 | --->123456789 | --->123456789 |
# | Line 3755 Callout 0: last capture = 1 | Line 3751 Callout 0: last capture = 1 |
3751 | 0: 123456789 | 0: 123456789 |
3752 | 1: 789 | 1: 789 |
3753 | ||
3754 | /((xyz)(?C)p|(?C1)xyzabc)/ | /((xyz)(?C)p|(?C1)xyzabc)/I |
3755 | Capturing subpattern count = 2 | Capturing subpattern count = 2 |
3756 | No options | No options |
3757 | First char = 'x' | First char = 'x' |
# | Line 3774 Callout 1: last capture = -1 | Line 3770 Callout 1: last capture = -1 |
3770 | 0: xyzabc | 0: xyzabc |
3771 | 1: xyzabc | 1: xyzabc |
3772 | ||
3773 | /(X)((xyz)(?C)p|(?C1)xyzabc)/ | /(X)((xyz)(?C)p|(?C1)xyzabc)/I |
3774 | Capturing subpattern count = 3 | Capturing subpattern count = 3 |
3775 | No options | No options |
3776 | First char = 'X' | First char = 'X' |
# | Line 3796 Callout 1: last capture = 1 | Line 3792 Callout 1: last capture = 1 |
3792 | 1: X | 1: X |
3793 | 2: xyzabc | 2: xyzabc |
3794 | ||
3795 | /(?=(abc))(?C)abcdef/ | /(?=(abc))(?C)abcdef/I |
3796 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
3797 | No options | No options |
3798 | First char = 'a' | First char = 'a' |
# | Line 3809 Callout 0: last capture = 1 | Line 3805 Callout 0: last capture = 1 |
3805 | ^ a | ^ a |
3806 | 0: abcdef | 0: abcdef |
3807 | 1: abc | 1: abc |
3808 | ||
3809 | /(?!(abc)(?C1)d)(?C2)abcxyz/ | /(?!(abc)(?C1)d)(?C2)abcxyz/I |
3810 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
3811 | No options | No options |
3812 | First char = 'a' | First char = 'a' |
3813 | Need char = 'z' | Need char = 'z' |
3814 | abcxyz\C+ | abcxyz\C+ |
3815 | Callout 1: last capture = 1 | Callout 1: last capture = 1 |
3816 | 0: <unset> | 0: <unset> |
3817 | 1: abc | 1: abc |
# | Line 3827 Callout 2: last capture = -1 | Line 3823 Callout 2: last capture = -1 |
3823 | ^ a | ^ a |
3824 | 0: abcxyz | 0: abcxyz |
3825 | ||
3826 | /(?<=(abc)(?C))xyz/ | /(?<=(abc)(?C))xyz/I |
3827 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
3828 | No options | No options |
3829 | First char = 'x' | First char = 'x' |
# | Line 3840 Callout 0: last capture = 1 | Line 3836 Callout 0: last capture = 1 |
3836 | ^ ) | ^ ) |
3837 | 0: xyz | 0: xyz |
3838 | 1: abc | 1: abc |
3839 | ||
3840 | /a(b+)(c*)(?C1)/ | /a(b+)(c*)(?C1)/I |
3841 | Capturing subpattern count = 2 | Capturing subpattern count = 2 |
3842 | Partial matching not supported | Partial matching not supported |
3843 | No options | No options |
# | Line 3867 Callout data = 1 | Line 3863 Callout data = 1 |
3863 | Callout data = 1 | Callout data = 1 |
3864 | No match | No match |
3865 | ||
3866 | /a(b+?)(c*?)(?C1)/ | /a(b+?)(c*?)(?C1)/I |
3867 | Capturing subpattern count = 2 | Capturing subpattern count = 2 |
3868 | Partial matching not supported | Partial matching not supported |
3869 | No options | No options |
# | Line 3892 Callout data = 1 | Line 3888 Callout data = 1 |
3888 | 1 ^ ^ | 1 ^ ^ |
3889 | Callout data = 1 | Callout data = 1 |
3890 | No match | No match |
3891 | ||
3892 | /(?C)abc/ | /(?C)abc/I |
3893 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
3894 | No options | No options |
3895 | First char = 'a' | First char = 'a' |
3896 | Need char = 'c' | Need char = 'c' |
3897 | ||
3898 | /(?C)^abc/ | /(?C)^abc/I |
3899 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
3900 | Options: anchored | Options: anchored |
3901 | No first char | No first char |
3902 | No need char | No need char |
3903 | ||
3904 | /(?C)a|b/S | /(?C)a|b/IS |
3905 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
3906 | No options | No options |
3907 | No first char | No first char |
3908 | No need char | No need char |
3909 | Starting byte set: a b | Starting byte set: a b |
3910 | ||
3911 | /(?R)/ | /(?R)/I |
3912 | Failed: recursive call could loop indefinitely at offset 3 | Failed: recursive call could loop indefinitely at offset 3 |
3913 | ||
3914 | /(a|(?R))/ | /(a|(?R))/I |
3915 | Failed: recursive call could loop indefinitely at offset 6 | Failed: recursive call could loop indefinitely at offset 6 |
3916 | ||
3917 | /(ab|(bc|(de|(?R))))/ | /(ab|(bc|(de|(?R))))/I |
3918 | Failed: recursive call could loop indefinitely at offset 15 | Failed: recursive call could loop indefinitely at offset 15 |
3919 | ||
3920 | /x(ab|(bc|(de|(?R))))/ | /x(ab|(bc|(de|(?R))))/I |
3921 | Capturing subpattern count = 3 | Capturing subpattern count = 3 |
3922 | No options | No options |
3923 | First char = 'x' | First char = 'x' |
# | Line 3950 No need char | Line 3946 No need char |
3946 | 3: xxab | 3: xxab |
3947 | *** Failers | *** Failers |
3948 | No match | No match |
3949 | xyab | xyab |
3950 | No match | No match |
3951 | ||
3952 | /(ab|(bc|(de|(?1))))/ | /(ab|(bc|(de|(?1))))/I |
3953 | Failed: recursive call could loop indefinitely at offset 15 | Failed: recursive call could loop indefinitely at offset 15 |
3954 | ||
3955 | /x(ab|(bc|(de|(?1)x)x)x)/ | /x(ab|(bc|(de|(?1)x)x)x)/I |
3956 | Failed: recursive call could loop indefinitely at offset 16 | Failed: recursive call could loop indefinitely at offset 16 |
3957 | ||
3958 | /^([^()]|\((?1)*\))*$/ | /^([^()]|\((?1)*\))*$/I |
3959 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
3960 | Options: anchored | Options: anchored |
3961 | No first char | No first char |
# | Line 3970 No need char | Line 3966 No need char |
3966 | a(b)c | a(b)c |
3967 | 0: a(b)c | 0: a(b)c |
3968 | 1: c | 1: c |
3969 | a(b(c))d | a(b(c))d |
3970 | 0: a(b(c))d | 0: a(b(c))d |
3971 | 1: d | 1: d |
3972 | *** Failers) | *** Failers) |
3973 | No match | No match |
3974 | a(b(c)d | a(b(c)d |
3975 | No match | No match |
3976 | ||
3977 | /^>abc>([^()]|\((?1)*\))*<xyz<$/ | /^>abc>([^()]|\((?1)*\))*<xyz<$/I |
3978 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
3979 | Options: anchored | Options: anchored |
3980 | No first char | No first char |
# | Line 3993 Need char = '<' | Line 3989 Need char = '<' |
3989 | 0: >abc>(1(2)3)<xyz< | 0: >abc>(1(2)3)<xyz< |
3990 | 1: (1(2)3) | 1: (1(2)3) |
3991 | ||
3992 | /(a(?1)b)/D | /(a(?1)b)/DZ |
3993 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
3994 | 0 16 Bra 0 | Bra |
3995 | 3 10 Bra 1 | CBra 1 |
3996 | 6 a | a |
3997 | 8 3 Recurse | Once |
3998 | 11 b | Recurse |
3999 | 13 10 Ket | Ket |
4000 | 16 16 Ket | b |
4001 | 19 End | Ket |
4002 | Ket | |
4003 | End | |
4004 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
4005 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
4006 | No options | No options |
4007 | First char = 'a' | First char = 'a' |
4008 | Need char = 'b' | Need char = 'b' |
4009 | ||
4010 | /(a(?1)+b)/D | /(a(?1)+b)/DZ |
4011 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
4012 | 0 22 Bra 0 | Bra |
4013 | 3 16 Bra 1 | CBra 1 |
4014 | 6 a | a |
4015 | 8 6 Bra 0 | Once |
4016 | 11 3 Recurse | Recurse |
4017 | 14 6 KetRmax | KetRmax |
4018 | 17 b | b |
4019 | 19 16 Ket | Ket |
4020 | 22 22 Ket | Ket |
4021 | 25 End | End |
4022 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
4023 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
4024 | No options | No options |
4025 | First char = 'a' | First char = 'a' |
4026 | Need char = 'b' | Need char = 'b' |
4027 | ||
4028 | /^\W*(?:((.)\W*(?1)\W*\2|)|((.)\W*(?3)\W*\4|\W*.\W*))\W*$/i | /^\W*(?:((.)\W*(?1)\W*\2|)|((.)\W*(?3)\W*\4|\W*.\W*))\W*$/Ii |
4029 | Capturing subpattern count = 4 | Capturing subpattern count = 4 |
4030 | Max back reference = 4 | Max back reference = 4 |
4031 | Partial matching not supported | Partial matching not supported |
# | Line 4050 No need char | Line 4048 No need char |
4048 | 2: <unset> | 2: <unset> |
4049 | 3: A man, a plan, a canal: Panama | 3: A man, a plan, a canal: Panama |
4050 | 4: A | 4: A |
4051 | Able was I ere I saw Elba. | Able was I ere I saw Elba. |
4052 | 0: Able was I ere I saw Elba. | 0: Able was I ere I saw Elba. |
4053 | 1: <unset> | 1: <unset> |
4054 | 2: <unset> | 2: <unset> |
# | Line 4058 No need char | Line 4056 No need char |
4056 | 4: A | 4: A |
4057 | *** Failers | *** Failers |
4058 | No match | No match |
4059 | The quick brown fox | The quick brown fox |
4060 | No match | No match |
4061 | ||
4062 | /^(\d+|\((?1)([+*-])(?1)\)|-(?1))$/ | /^(\d+|\((?1)([+*-])(?1)\)|-(?1))$/I |
4063 | Capturing subpattern count = 2 | Capturing subpattern count = 2 |
4064 | Partial matching not supported | Partial matching not supported |
4065 | Options: anchored | Options: anchored |
# | Line 4081 No need char | Line 4079 No need char |
4079 | No match | No match |
4080 | ((2+2)*-3)-7) | ((2+2)*-3)-7) |
4081 | No match | No match |
4082 | ||
4083 | /^(x(y|(?1){2})z)/ | /^(x(y|(?1){2})z)/I |
4084 | Capturing subpattern count = 2 | Capturing subpattern count = 2 |
4085 | Options: anchored | Options: anchored |
4086 | No first char | No first char |
# | Line 4091 No need char | Line 4089 No need char |
4089 | 0: xyz | 0: xyz |
4090 | 1: xyz | 1: xyz |
4091 | 2: y | 2: y |
4092 | xxyzxyzz | xxyzxyzz |
4093 | 0: xxyzxyzz | 0: xxyzxyzz |
4094 | 1: xxyzxyzz | 1: xxyzxyzz |
4095 | 2: xyzxyz | 2: xyzxyz |
# | Line 4099 No need char | Line 4097 No need char |
4097 | No match | No match |
4098 | xxyzz | xxyzz |
4099 | No match | No match |
4100 | xxyzxyzxyzz | xxyzxyzxyzz |
4101 | No match | No match |
4102 | ||
4103 | /((< (?: (?(R) \d++ | [^<>]*+) | (?2)) * >))/x | /((< (?: (?(R) \d++ | [^<>]*+) | (?2)) * >))/Ix |
4104 | Capturing subpattern count = 2 | Capturing subpattern count = 2 |
4105 | Partial matching not supported | Partial matching not supported |
4106 | Options: extended | Options: extended |
# | Line 4124 Need char = '>' | Line 4122 Need char = '>' |
4122 | 0: <def> | 0: <def> |
4123 | 1: <def> | 1: <def> |
4124 | 2: <def> | 2: <def> |
4125 | <abc<>def> | <abc<>def> |
4126 | 0: <abc<>def> | 0: <abc<>def> |
4127 | 1: <abc<>def> | 1: <abc<>def> |
4128 | 2: <abc<>def> | 2: <abc<>def> |
4129 | <abc<> | <abc<> |
4130 | 0: <> | 0: <> |
4131 | 1: <> | 1: <> |
4132 | 2: <> | 2: <> |
# | Line 4137 No match | Line 4135 No match |
4135 | <abc | <abc |
4136 | No match | No match |
4137 | ||
4138 | /(?1)/ | /(?1)/I |
4139 | Failed: reference to non-existent subpattern at offset 3 | Failed: reference to non-existent subpattern at offset 3 |
4140 | ||
4141 | /((?2)(abc)/ | /((?2)(abc)/I |
4142 | Failed: reference to non-existent subpattern at offset 4 | Failed: missing ) at offset 10 |
4143 | ||
4144 | /^(abc)def(?1)/ | /^(abc)def(?1)/I |
4145 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
4146 | Options: anchored | Options: anchored |
4147 | No first char | No first char |
# | Line 4152 No need char | Line 4150 No need char |
4150 | 0: abcdefabc | 0: abcdefabc |
4151 | 1: abc | 1: abc |
4152 | ||
4153 | /^(a|b|c)=(?1)+/ | /^(a|b|c)=(?1)+/I |
4154 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
4155 | Options: anchored | Options: anchored |
4156 | No first char | No first char |
# | Line 4163 No need char | Line 4161 No need char |
4161 | a=b | a=b |
4162 | 0: a=b | 0: a=b |
4163 | 1: a | 1: a |
4164 | a=bc | a=bc |
4165 | 0: a=bc | 0: a=bc |
4166 | 1: a | 1: a |
4167 | ||
4168 | /^(a|b|c)=((?1))+/ | /^(a|b|c)=((?1))+/I |
4169 | Capturing subpattern count = 2 | Capturing subpattern count = 2 |
4170 | Options: anchored | Options: anchored |
4171 | No first char | No first char |
# | Line 4180 No need char | Line 4178 No need char |
4178 | 0: a=b | 0: a=b |
4179 | 1: a | 1: a |
4180 | 2: b | 2: b |
4181 | a=bc | a=bc |
4182 | 0: a=bc | 0: a=bc |
4183 | 1: a | 1: a |
4184 | 2: c | 2: c |
4185 | ||
4186 | /a(?P<name1>b|c)d(?P<longername2>e)/D | /a(?P<name1>b|c)d(?P<longername2>e)/DZ |
4187 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
4188 | 0 28 Bra 0 | Bra |
4189 | 3 a | a |
4190 | 5 5 Bra 1 | CBra 1 |
4191 | 8 b | b |
4192 | 10 5 Alt | Alt |
4193 | 13 c | c |
4194 | 15 10 Ket | Ket |
4195 | 18 d | d |
4196 | 20 5 Bra 2 | CBra 2 |
4197 | 23 e | e |
4198 | 25 5 Ket | Ket |
4199 | 28 28 Ket | Ket |
4200 | 31 End | End |
4201 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
4202 | Capturing subpattern count = 2 | Capturing subpattern count = 2 |
4203 | Named capturing subpatterns: | Named capturing subpatterns: |
# | Line 4212 Need char = 'e' | Line 4210 Need char = 'e' |
4210 | 0: abde | 0: abde |
4211 | 1: b | 1: b |
4212 | 2: e | 2: e |
4213 | acde | acde |
4214 | 0: acde | 0: acde |
4215 | 1: c | 1: c |
4216 | 2: e | 2: e |
4217 | ||
4218 | /(?:a(?P<c>c(?P<d>d)))(?P<a>a)/D | /(?:a(?P<c>c(?P<d>d)))(?P<a>a)/DZ |
4219 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
4220 | 0 35 Bra 0 | Bra |
4221 | 3 21 Bra 0 | Bra |
4222 | 6 a | a |
4223 | 8 13 Bra 1 | CBra 1 |
4224 | 11 c | c |
4225 | 13 5 Bra 2 | CBra 2 |
4226 | 16 d | d |
4227 | 18 5 Ket | Ket |
4228 | 21 13 Ket | Ket |
4229 | 24 21 Ket | Ket |
4230 | 27 5 Bra 3 | CBra 3 |
4231 | 30 a | a |
4232 | 32 5 Ket | Ket |
4233 | 35 35 Ket | Ket |
4234 | 38 End | End |
4235 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
4236 | Capturing subpattern count = 3 | Capturing subpattern count = 3 |
4237 | Named capturing subpatterns: | Named capturing subpatterns: |
# | Line 4244 No options | Line 4242 No options |
4242 | First char = 'a' | First char = 'a' |
4243 | Need char = 'a' | Need char = 'a' |
4244 | ||
4245 | /(?P<a>a)...(?P=a)bbb(?P>a)d/D | /(?P<a>a)...(?P=a)bbb(?P>a)d/DZ |
4246 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
4247 | 0 28 Bra 0 | Bra |
4248 | 3 5 Bra 1 | CBra 1 |
4249 | 6 a | a |
4250 | 8 5 Ket | Ket |
4251 | 11 Any | Any |
4252 | 12 Any | Any |
4253 | 13 Any | Any |
4254 | 14 \1 | \1 |
4255 | 17 bbb | bbb |
4256 | 23 3 Recurse | Once |
4257 | 26 d | Recurse |
4258 | 28 28 Ket | Ket |
4259 | 31 End | d |
4260 | Ket | |
4261 | End | |
4262 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
4263 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
4264 | Max back reference = 1 | Max back reference = 1 |
# | Line 4268 No options | Line 4268 No options |
4268 | First char = 'a' | First char = 'a' |
4269 | Need char = 'd' | Need char = 'd' |
4270 | ||
4271 | /^\W*(?:(?P<one>(?P<two>.)\W*(?P>one)\W*(?P=two)|)|(?P<three>(?P<four>.)\W*(?P>three)\W*(?P=four)|\W*.\W*))\W*$/i | /^\W*(?:(?P<one>(?P<two>.)\W*(?P>one)\W*(?P=two)|)|(?P<three>(?P<four>.)\W*(?P>three)\W*(?P=four)|\W*.\W*))\W*$/Ii |
4272 | Capturing subpattern count = 4 | Capturing subpattern count = 4 |
4273 | Max back reference = 4 | Max back reference = 4 |
4274 | Named capturing subpatterns: | Named capturing subpatterns: |
# | Line 4296 No need char | Line 4296 No need char |
4296 | 2: <unset> | 2: <unset> |
4297 | 3: A man, a plan, a canal: Panama | 3: A man, a plan, a canal: Panama |
4298 | 4: A | 4: A |
4299 | Able was I ere I saw Elba. | Able was I ere I saw Elba. |
4300 | 0: Able was I ere I saw Elba. | 0: Able was I ere I saw Elba. |
4301 | 1: <unset> | 1: <unset> |
4302 | 2: <unset> | 2: <unset> |
# | Line 4304 No need char | Line 4304 No need char |
4304 | 4: A | 4: A |
4305 | *** Failers | *** Failers |
4306 | No match | No match |
4307 | The quick brown fox | The quick brown fox |
4308 | No match | No match |
4309 | ||
4310 | /((?(R)a|b))\1(?1)?/ | /((?(R)a|b))\1(?1)?/I |
4311 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
4312 | Max back reference = 1 | Max back reference = 1 |
4313 | No options | No options |
# | Line 4316 No need char | Line 4316 No need char |
4316 | bb | bb |
4317 | 0: bb | 0: bb |
4318 | 1: b | 1: b |
4319 | bbaa | bbaa |
4320 | 0: bba | 0: bba |
4321 | 1: b | 1: b |
4322 | ||
4323 | /(.*)a/sI | /(.*)a/Is |
4324 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
4325 | Partial matching not supported | Partial matching not supported |
4326 | Options: anchored dotall | Options: anchored dotall |
4327 | No first char | No first char |
4328 | Need char = 'a' | Need char = 'a' |
4329 | ||
4330 | /(.*)a\1/sI | /(.*)a\1/Is |
4331 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
4332 | Max back reference = 1 | Max back reference = 1 |
4333 | Partial matching not supported | Partial matching not supported |
# | Line 4335 Options: dotall | Line 4335 Options: dotall |
4335 | No first char | No first char |
4336 | Need char = 'a' | Need char = 'a' |
4337 | ||
4338 | /(.*)a(b)\2/sI | /(.*)a(b)\2/Is |
4339 | Capturing subpattern count = 2 | Capturing subpattern count = 2 |
4340 | Max back reference = 2 | Max back reference = 2 |
4341 | Partial matching not supported | Partial matching not supported |
# | Line 4343 Options: anchored dotall | Line 4343 Options: anchored dotall |
4343 | No first char | No first char |
4344 | Need char = 'b' | Need char = 'b' |
4345 | ||
4346 | /((.*)a|(.*)b)z/sI | /((.*)a|(.*)b)z/Is |
4347 | Capturing subpattern count = 3 | Capturing subpattern count = 3 |
4348 | Partial matching not supported | Partial matching not supported |
4349 | Options: anchored dotall | Options: anchored dotall |
4350 | No first char | No first char |
4351 | Need char = 'z' | Need char = 'z' |
4352 | ||
4353 | /((.*)a|(.*)b)z\1/sI | /((.*)a|(.*)b)z\1/Is |
4354 | Capturing subpattern count = 3 | Capturing subpattern count = 3 |
4355 | Max back reference = 1 | Max back reference = 1 |
4356 | Partial matching not supported | Partial matching not supported |
# | Line 4358 Options: dotall | Line 4358 Options: dotall |
4358 | No first char | No first char |
4359 | Need char = 'z' | Need char = 'z' |
4360 | ||
4361 | /((.*)a|(.*)b)z\2/sI | /((.*)a|(.*)b)z\2/Is |
4362 | Capturing subpattern count = 3 | Capturing subpattern count = 3 |
4363 | Max back reference = 2 | Max back reference = 2 |
4364 | Partial matching not supported | Partial matching not supported |
# | Line 4366 Options: dotall | Line 4366 Options: dotall |
4366 | No first char | No first char |
4367 | Need char = 'z' | Need char = 'z' |
4368 | ||
4369 | /((.*)a|(.*)b)z\3/sI | /((.*)a|(.*)b)z\3/Is |
4370 | Capturing subpattern count = 3 | Capturing subpattern count = 3 |
4371 | Max back reference = 3 | Max back reference = 3 |
4372 | Partial matching not supported | Partial matching not supported |
# | Line 4374 Options: dotall | Line 4374 Options: dotall |
4374 | No first char | No first char |
4375 | Need char = 'z' | Need char = 'z' |
4376 | ||
4377 | /((.*)a|^(.*)b)z\3/sI | /((.*)a|^(.*)b)z\3/Is |
4378 | Capturing subpattern count = 3 | Capturing subpattern count = 3 |
4379 | Max back reference = 3 | Max back reference = 3 |
4380 | Partial matching not supported | Partial matching not supported |
# | Line 4382 Options: anchored dotall | Line 4382 Options: anchored dotall |
4382 | No first char | No first char |
4383 | Need char = 'z' | Need char = 'z' |
4384 | ||
4385 | /(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a/sI | /(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a/Is |
4386 | Capturing subpattern count = 31 | Capturing subpattern count = 31 |
4387 | Partial matching not supported | Partial matching not supported |
4388 | Options: anchored dotall | Options: anchored dotall |
4389 | No first char | No first char |
4390 | No need char | No need char |
4391 | ||
4392 | /(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a\31/sI | /(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a\31/Is |
4393 | Capturing subpattern count = 31 | Capturing subpattern count = 31 |
4394 | Max back reference = 31 | Max back reference = 31 |
4395 | Partial matching not supported | Partial matching not supported |
# | Line 4397 Options: dotall | Line 4397 Options: dotall |
4397 | No first char | No first char |
4398 | No need char | No need char |
4399 | ||
4400 | /(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a\32/sI | /(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a\32/Is |
4401 | Capturing subpattern count = 32 | Capturing subpattern count = 32 |
4402 | Max back reference = 32 | Max back reference = 32 |
4403 | Partial matching not supported | Partial matching not supported |
# | Line 4405 Options: dotall | Line 4405 Options: dotall |
4405 | No first char | No first char |
4406 | No need char | No need char |
4407 | ||
4408 | /(a)(bc)/ND | /(a)(bc)/INDZ |
4409 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
4410 | 0 21 Bra 0 | Bra |
4411 | 3 5 Bra 0 | Bra |
4412 | 6 a | a |
4413 | 8 5 Ket | Ket |
4414 | 11 7 Bra 0 | Bra |
4415 | 14 bc | bc |
4416 | 18 7 Ket | Ket |
4417 | 21 21 Ket | Ket |
4418 | 24 End | End |
4419 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
4420 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
4421 | Options: | Options: no_auto_capture |
4422 | First char = 'a' | First char = 'a' |
4423 | Need char = 'c' | Need char = 'c' |
4424 | abc | abc |
4425 | 0: abc | 0: abc |
4426 | ||
4427 | /(?P<one>a)(bc)/ND | /(?P<one>a)(bc)/INDZ |
4428 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
4429 | 0 21 Bra 0 | Bra |
4430 | 3 5 Bra 1 | CBra 1 |
4431 | 6 a | a |
4432 | 8 5 Ket | Ket |
4433 | 11 7 Bra 0 | Bra |
4434 | 14 bc | bc |
4435 | 18 7 Ket | Ket |
4436 | 21 21 Ket | Ket |
4437 | 24 End | End |
4438 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
4439 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
4440 | Named capturing subpatterns: | Named capturing subpatterns: |
4441 | one 1 | one 1 |
4442 | Options: | Options: no_auto_capture |
4443 | First char = 'a' | First char = 'a' |
4444 | Need char = 'c' | Need char = 'c' |
4445 | abc | abc |
4446 | 0: abc | 0: abc |
4447 | 1: a | 1: a |
4448 | ||
4449 | /(a)(?P<named>bc)/ND | /(a)(?P<named>bc)/INDZ |
4450 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
4451 | 0 21 Bra 0 | Bra |
4452 | 3 5 Bra 0 | Bra |
4453 | 6 a | a |
4454 | 8 5 Ket | Ket |
4455 | 11 7 Bra 1 | CBra 1 |
4456 | 14 bc | bc |
4457 | 18 7 Ket | Ket |
4458 | 21 21 Ket | Ket |
4459 | 24 End | End |
4460 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
4461 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
4462 | Named capturing subpatterns: | Named capturing subpatterns: |
4463 | named 1 | named 1 |
4464 | Options: | Options: no_auto_capture |
4465 | First char = 'a' | First char = 'a' |
4466 | Need char = 'c' | Need char = 'c' |
4467 | ||
4468 | /(a+)*zz/ | /(a+)*zz/I |
4469 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
4470 | Partial matching not supported | Partial matching not supported |
4471 | No options | No options |
4472 | No first char | No first char |
4473 | Need char = 'z' | Need char = 'z' |
4474 | aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaazzbbbbbb\M | aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaazzbbbbbb\M |
4475 | Minimum match limit = 8 | Minimum match() limit = 8 |
4476 | Minimum match() recursion limit = 6 | |
4477 | 0: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaazz | 0: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaazz |
4478 | 1: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa | 1: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa |
4479 | aaaaaaaaaaaaaz\M | aaaaaaaaaaaaaz\M |
4480 | Minimum match limit = 32768 | Minimum match() limit = 32768 |
4481 | Minimum match() recursion limit = 42 | |
4482 | No match | No match |
4483 | ||
4484 | /(aaa(?C1)bbb|ab)/ | /(aaa(?C1)bbb|ab)/I |
4485 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
4486 | No options | No options |
4487 | First char = 'a' | First char = 'a' |
# | Line 4506 Callout data = 1 | Line 4508 Callout data = 1 |
4508 | Callout data = -1 | Callout data = -1 |
4509 | No match | No match |
4510 | ||
4511 | /ab(?P<one>cd)ef(?P<two>gh)/ | /ab(?P<one>cd)ef(?P<two>gh)/I |
4512 | Capturing subpattern count = 2 | Capturing subpattern count = 2 |
4513 | Named capturing subpatterns: | Named capturing subpatterns: |
4514 | one 1 | one 1 |