/[pcre]/code/trunk/testdata/testoutput2
ViewVC logotype

Contents of /code/trunk/testdata/testoutput2

Parent Directory Parent Directory | Revision Log Revision Log


Revision 511 - (show annotations) (download)
Mon Mar 29 09:25:38 2010 UTC (4 years, 4 months ago) by ph10
File size: 222786 byte(s)
Make (*ACCEPT) work inside an atomic group.

1 /-- This set of tests is not Perl-compatible. It checks on special features
2 of PCRE's API, error diagnostics, and the compiled code of some patterns.
3 It also checks the non-Perl syntax the PCRE supports (Python, .NET,
4 Oniguruma). Finally, there are some tests where PCRE and Perl differ,
5 either because PCRE can't be compatible, or there is potential Perl
6 bug. --/
7
8 /-- Originally, the Perl 5.10 things were in here too, but now I have separated
9 many (most?) of them out into test 11. However, there may still be some
10 that were overlooked. --/
11
12 /(a)b|/I
13 Capturing subpattern count = 1
14 No options
15 No first char
16 No need char
17
18 /abc/I
19 Capturing subpattern count = 0
20 No options
21 First char = 'a'
22 Need char = 'c'
23 abc
24 0: abc
25 defabc
26 0: abc
27 \Aabc
28 0: abc
29 *** Failers
30 No match
31 \Adefabc
32 No match
33 ABC
34 No match
35
36 /^abc/I
37 Capturing subpattern count = 0
38 Options: anchored
39 No first char
40 No need char
41 abc
42 0: abc
43 \Aabc
44 0: abc
45 *** Failers
46 No match
47 defabc
48 No match
49 \Adefabc
50 No match
51
52 /a+bc/I
53 Capturing subpattern count = 0
54 No options
55 First char = 'a'
56 Need char = 'c'
57
58 /a*bc/I
59 Capturing subpattern count = 0
60 No options
61 No first char
62 Need char = 'c'
63
64 /a{3}bc/I
65 Capturing subpattern count = 0
66 No options
67 First char = 'a'
68 Need char = 'c'
69
70 /(abc|a+z)/I
71 Capturing subpattern count = 1
72 No options
73 First char = 'a'
74 No need char
75
76 /^abc$/I
77 Capturing subpattern count = 0
78 Options: anchored
79 No first char
80 No need char
81 abc
82 0: abc
83 *** Failers
84 No match
85 def\nabc
86 No match
87
88 /ab\idef/X
89 Failed: unrecognized character follows \ at offset 3
90
91 /(?X)ab\idef/X
92 Failed: unrecognized character follows \ at offset 7
93
94 /x{5,4}/
95 Failed: numbers out of order in {} quantifier at offset 5
96
97 /z{65536}/
98 Failed: number too big in {} quantifier at offset 7
99
100 /[abcd/
101 Failed: missing terminating ] for character class at offset 5
102
103 /(?X)[\B]/
104 Failed: invalid escape sequence in character class at offset 6
105
106 /[z-a]/
107 Failed: range out of order in character class at offset 3
108
109 /^*/
110 Failed: nothing to repeat at offset 1
111
112 /(abc/
113 Failed: missing ) at offset 4
114
115 /(?# abc/
116 Failed: missing ) after comment at offset 7
117
118 /(?z)abc/
119 Failed: unrecognized character after (? or (?- at offset 2
120
121 /.*b/I
122 Capturing subpattern count = 0
123 No options
124 First char at start or follows newline
125 Need char = 'b'
126
127 /.*?b/I
128 Capturing subpattern count = 0
129 No options
130 First char at start or follows newline
131 Need char = 'b'
132
133 /cat|dog|elephant/I
134 Capturing subpattern count = 0
135 No options
136 No first char
137 No need char
138 this sentence eventually mentions a cat
139 0: cat
140 this sentences rambles on and on for a while and then reaches elephant
141 0: elephant
142
143 /cat|dog|elephant/IS
144 Capturing subpattern count = 0
145 No options
146 No first char
147 No need char
148 Subject length lower bound = 3
149 Starting byte set: c d e
150 this sentence eventually mentions a cat
151 0: cat
152 this sentences rambles on and on for a while and then reaches elephant
153 0: elephant
154
155 /cat|dog|elephant/IiS
156 Capturing subpattern count = 0
157 Options: caseless
158 No first char
159 No need char
160 Subject length lower bound = 3
161 Starting byte set: C D E c d e
162 this sentence eventually mentions a CAT cat
163 0: CAT
164 this sentences rambles on and on for a while to elephant ElePhant
165 0: elephant
166
167 /a|[bcd]/IS
168 Capturing subpattern count = 0
169 No options
170 No first char
171 No need char
172 Subject length lower bound = 1
173 Starting byte set: a b c d
174
175 /(a|[^\dZ])/IS
176 Capturing subpattern count = 1
177 No options
178 No first char
179 No need char
180 Subject length lower bound = 1
181 Starting byte set: \x00 \x01 \x02 \x03 \x04 \x05 \x06 \x07 \x08 \x09 \x0a
182 \x0b \x0c \x0d \x0e \x0f \x10 \x11 \x12 \x13 \x14 \x15 \x16 \x17 \x18 \x19
183 \x1a \x1b \x1c \x1d \x1e \x1f \x20 ! " # $ % & ' ( ) * + , - . / : ; < = >
184 ? @ 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 [ \ ] ^ _ ` a b c d
185 e f g h i j k l m n o p q r s t u v w x y z { | } ~ \x7f \x80 \x81 \x82 \x83
186 \x84 \x85 \x86 \x87 \x88 \x89 \x8a \x8b \x8c \x8d \x8e \x8f \x90 \x91 \x92
187 \x93 \x94 \x95 \x96 \x97 \x98 \x99 \x9a \x9b \x9c \x9d \x9e \x9f \xa0 \xa1
188 \xa2 \xa3 \xa4 \xa5 \xa6 \xa7 \xa8 \xa9 \xaa \xab \xac \xad \xae \xaf \xb0
189 \xb1 \xb2 \xb3 \xb4 \xb5 \xb6 \xb7 \xb8 \xb9 \xba \xbb \xbc \xbd \xbe \xbf
190 \xc0 \xc1 \xc2 \xc3 \xc4 \xc5 \xc6 \xc7 \xc8 \xc9 \xca \xcb \xcc \xcd \xce
191 \xcf \xd0 \xd1 \xd2 \xd3 \xd4 \xd5 \xd6 \xd7 \xd8 \xd9 \xda \xdb \xdc \xdd
192 \xde \xdf \xe0 \xe1 \xe2 \xe3 \xe4 \xe5 \xe6 \xe7 \xe8 \xe9 \xea \xeb \xec
193 \xed \xee \xef \xf0 \xf1 \xf2 \xf3 \xf4 \xf5 \xf6 \xf7 \xf8 \xf9 \xfa \xfb
194 \xfc \xfd \xfe \xff
195
196 /(a|b)*[\s]/IS
197 Capturing subpattern count = 1
198 No options
199 No first char
200 No need char
201 Subject length lower bound = 1
202 Starting byte set: \x09 \x0a \x0c \x0d \x20 a b
203
204 /(ab\2)/
205 Failed: reference to non-existent subpattern at offset 6
206
207 /{4,5}abc/
208 Failed: nothing to repeat at offset 4
209
210 /(a)(b)(c)\2/I
211 Capturing subpattern count = 3
212 Max back reference = 2
213 No options
214 First char = 'a'
215 Need char = 'c'
216 abcb
217 0: abcb
218 1: a
219 2: b
220 3: c
221 \O0abcb
222 Matched, but too many substrings
223 \O3abcb
224 Matched, but too many substrings
225 0: abcb
226 \O6abcb
227 Matched, but too many substrings
228 0: abcb
229 1: a
230 \O9abcb
231 Matched, but too many substrings
232 0: abcb
233 1: a
234 2: b
235 \O12abcb
236 0: abcb
237 1: a
238 2: b
239 3: c
240
241 /(a)bc|(a)(b)\2/I
242 Capturing subpattern count = 3
243 Max back reference = 2
244 No options
245 First char = 'a'
246 No need char
247 abc
248 0: abc
249 1: a
250 \O0abc
251 Matched, but too many substrings
252 \O3abc
253 Matched, but too many substrings
254 0: abc
255 \O6abc
256 0: abc
257 1: a
258 aba
259 0: aba
260 1: <unset>
261 2: a
262 3: b
263 \O0aba
264 Matched, but too many substrings
265 \O3aba
266 Matched, but too many substrings
267 0: aba
268 \O6aba
269 Matched, but too many substrings
270 0: aba
271 1: <unset>
272 \O9aba
273 Matched, but too many substrings
274 0: aba
275 1: <unset>
276 2: a
277 \O12aba
278 0: aba
279 1: <unset>
280 2: a
281 3: b
282
283 /abc$/IE
284 Capturing subpattern count = 0
285 Options: dollar_endonly
286 First char = 'a'
287 Need char = 'c'
288 abc
289 0: abc
290 *** Failers
291 No match
292 abc\n
293 No match
294 abc\ndef
295 No match
296
297 /(a)(b)(c)(d)(e)\6/
298 Failed: reference to non-existent subpattern at offset 17
299
300 /the quick brown fox/I
301 Capturing subpattern count = 0
302 No options
303 First char = 't'
304 Need char = 'x'
305 the quick brown fox
306 0: the quick brown fox
307 this is a line with the quick brown fox
308 0: the quick brown fox
309
310 /the quick brown fox/IA
311 Capturing subpattern count = 0
312 Options: anchored
313 No first char
314 No need char
315 the quick brown fox
316 0: the quick brown fox
317 *** Failers
318 No match
319 this is a line with the quick brown fox
320 No match
321
322 /ab(?z)cd/
323 Failed: unrecognized character after (? or (?- at offset 4
324
325 /^abc|def/I
326 Capturing subpattern count = 0
327 No options
328 No first char
329 No need char
330 abcdef
331 0: abc
332 abcdef\B
333 0: def
334
335 /.*((abc)$|(def))/I
336 Capturing subpattern count = 3
337 No options
338 First char at start or follows newline
339 No need char
340 defabc
341 0: defabc
342 1: abc
343 2: abc
344 \Zdefabc
345 0: def
346 1: def
347 2: <unset>
348 3: def
349
350 /abc/P
351 abc
352 0: abc
353 *** Failers
354 No match: POSIX code 17: match failed
355
356 /^abc|def/P
357 abcdef
358 0: abc
359 abcdef\B
360 0: def
361
362 /.*((abc)$|(def))/P
363 defabc
364 0: defabc
365 1: abc
366 2: abc
367 \Zdefabc
368 0: def
369 1: def
370 3: def
371
372 /the quick brown fox/P
373 the quick brown fox
374 0: the quick brown fox
375 *** Failers
376 No match: POSIX code 17: match failed
377 The Quick Brown Fox
378 No match: POSIX code 17: match failed
379
380 /the quick brown fox/Pi
381 the quick brown fox
382 0: the quick brown fox
383 The Quick Brown Fox
384 0: The Quick Brown Fox
385
386 /abc.def/P
387 *** Failers
388 No match: POSIX code 17: match failed
389 abc\ndef
390 No match: POSIX code 17: match failed
391
392 /abc$/P
393 abc
394 0: abc
395 abc\n
396 0: abc
397
398 /(abc)\2/P
399 Failed: POSIX code 15: bad back reference at offset 7
400
401 /(abc\1)/P
402 abc
403 No match: POSIX code 17: match failed
404
405 /)/
406 Failed: unmatched parentheses at offset 0
407
408 /a[]b/
409 Failed: missing terminating ] for character class at offset 4
410
411 /[^aeiou ]{3,}/I
412 Capturing subpattern count = 0
413 No options
414 No first char
415 No need char
416 co-processors, and for
417 0: -pr
418
419 /<.*>/I
420 Capturing subpattern count = 0
421 No options
422 First char = '<'
423 Need char = '>'
424 abc<def>ghi<klm>nop
425 0: <def>ghi<klm>
426
427 /<.*?>/I
428 Capturing subpattern count = 0
429 No options
430 First char = '<'
431 Need char = '>'
432 abc<def>ghi<klm>nop
433 0: <def>
434
435 /<.*>/IU
436 Capturing subpattern count = 0
437 Options: ungreedy
438 First char = '<'
439 Need char = '>'
440 abc<def>ghi<klm>nop
441 0: <def>
442
443 /(?U)<.*>/I
444 Capturing subpattern count = 0
445 Options: ungreedy
446 First char = '<'
447 Need char = '>'
448 abc<def>ghi<klm>nop
449 0: <def>
450
451 /<.*?>/IU
452 Capturing subpattern count = 0
453 Options: ungreedy
454 First char = '<'
455 Need char = '>'
456 abc<def>ghi<klm>nop
457 0: <def>ghi<klm>
458
459 /={3,}/IU
460 Capturing subpattern count = 0
461 Options: ungreedy
462 First char = '='
463 Need char = '='
464 abc========def
465 0: ===
466
467 /(?U)={3,}?/I
468 Capturing subpattern count = 0
469 Options: ungreedy
470 First char = '='
471 Need char = '='
472 abc========def
473 0: ========
474
475 /(?<!bar|cattle)foo/I
476 Capturing subpattern count = 0
477 No options
478 First char = 'f'
479 Need char = 'o'
480 foo
481 0: foo
482 catfoo
483 0: foo
484 *** Failers
485 No match
486 the barfoo
487 No match
488 and cattlefoo
489 No match
490
491 /(?<=a+)b/
492 Failed: lookbehind assertion is not fixed length at offset 6
493
494 /(?<=aaa|b{0,3})b/
495 Failed: lookbehind assertion is not fixed length at offset 14
496
497 /(?<!(foo)a\1)bar/
498 Failed: lookbehind assertion is not fixed length at offset 12
499
500 /(?i)abc/I
501 Capturing subpattern count = 0
502 Options: caseless
503 First char = 'a' (caseless)
504 Need char = 'c' (caseless)
505
506 /(a|(?m)a)/I
507 Capturing subpattern count = 1
508 No options
509 First char = 'a'
510 No need char
511
512 /(?i)^1234/I
513 Capturing subpattern count = 0
514 Options: anchored caseless
515 No first char
516 No need char
517
518 /(^b|(?i)^d)/I
519 Capturing subpattern count = 1
520 Options: anchored
521 No first char
522 No need char
523
524 /(?s).*/I
525 Capturing subpattern count = 0
526 Options: anchored dotall
527 No first char
528 No need char
529
530 /[abcd]/IS
531 Capturing subpattern count = 0
532 No options
533 No first char
534 No need char
535 Subject length lower bound = 1
536 Starting byte set: a b c d
537
538 /(?i)[abcd]/IS
539 Capturing subpattern count = 0
540 Options: caseless
541 No first char
542 No need char
543 Subject length lower bound = 1
544 Starting byte set: A B C D a b c d
545
546 /(?m)[xy]|(b|c)/IS
547 Capturing subpattern count = 1
548 Options: multiline
549 No first char
550 No need char
551 Subject length lower bound = 1
552 Starting byte set: b c x y
553
554 /(^a|^b)/Im
555 Capturing subpattern count = 1
556 Options: multiline
557 First char at start or follows newline
558 No need char
559
560 /(?i)(^a|^b)/Im
561 Capturing subpattern count = 1
562 Options: caseless multiline
563 First char at start or follows newline
564 No need char
565
566 /(a)(?(1)a|b|c)/
567 Failed: conditional group contains more than two branches at offset 13
568
569 /(?(?=a)a|b|c)/
570 Failed: conditional group contains more than two branches at offset 12
571
572 /(?(1a)/
573 Failed: missing ) at offset 6
574
575 /(?(1a))/
576 Failed: reference to non-existent subpattern at offset 6
577
578 /(?(?i))/
579 Failed: assertion expected after (?( at offset 3
580
581 /(?(abc))/
582 Failed: reference to non-existent subpattern at offset 7
583
584 /(?(?<ab))/
585 Failed: syntax error in subpattern name (missing terminator) at offset 7
586
587 /((?s)blah)\s+\1/I
588 Capturing subpattern count = 1
589 Max back reference = 1
590 No options
591 First char = 'b'
592 Need char = 'h'
593
594 /((?i)blah)\s+\1/I
595 Capturing subpattern count = 1
596 Max back reference = 1
597 No options
598 First char = 'b' (caseless)
599 Need char = 'h' (caseless)
600
601 /((?i)b)/IDZS
602 ------------------------------------------------------------------
603 Bra
604 CBra 1
605 01 Opt
606 NC b
607 Ket
608 00 Opt
609 Ket
610 End
611 ------------------------------------------------------------------
612 Capturing subpattern count = 1
613 No options
614 First char = 'b' (caseless)
615 No need char
616 Subject length lower bound = 1
617 No set of starting bytes
618
619 /(a*b|(?i:c*(?-i)d))/IS
620 Capturing subpattern count = 1
621 No options
622 No first char
623 No need char
624 Subject length lower bound = 1
625 Starting byte set: C a b c d
626
627 /a$/I
628 Capturing subpattern count = 0
629 No options
630 First char = 'a'
631 No need char
632 a
633 0: a
634 a\n
635 0: a
636 *** Failers
637 No match
638 \Za
639 No match
640 \Za\n
641 No match
642
643 /a$/Im
644 Capturing subpattern count = 0
645 Options: multiline
646 First char = 'a'
647 No need char
648 a
649 0: a
650 a\n
651 0: a
652 \Za\n
653 0: a
654 *** Failers
655 No match
656 \Za
657 No match
658
659 /\Aabc/Im
660 Capturing subpattern count = 0
661 Options: anchored multiline
662 No first char
663 No need char
664
665 /^abc/Im
666 Capturing subpattern count = 0
667 Options: multiline
668 First char at start or follows newline
669 Need char = 'c'
670
671 /^((a+)(?U)([ab]+)(?-U)([bc]+)(\w*))/I
672 Capturing subpattern count = 5
673 Options: anchored
674 No first char
675 No need char
676 aaaaabbbbbcccccdef
677 0: aaaaabbbbbcccccdef
678 1: aaaaabbbbbcccccdef
679 2: aaaaa
680 3: b
681 4: bbbbccccc
682 5: def
683
684 /(?<=foo)[ab]/IS
685 Capturing subpattern count = 0
686 No options
687 No first char
688 No need char
689 Subject length lower bound = 1
690 Starting byte set: a b
691
692 /(?<!foo)(alpha|omega)/IS
693 Capturing subpattern count = 1
694 No options
695 No first char
696 Need char = 'a'
697 Subject length lower bound = 5
698 Starting byte set: a o
699
700 /(?!alphabet)[ab]/IS
701 Capturing subpattern count = 0
702 No options
703 No first char
704 No need char
705 Subject length lower bound = 1
706 Starting byte set: a b
707
708 /(?<=foo\n)^bar/Im
709 Capturing subpattern count = 0
710 Contains explicit CR or LF match
711 Options: multiline
712 No first char
713 Need char = 'r'
714 foo\nbarbar
715 0: bar
716 ***Failers
717 No match
718 rhubarb
719 No match
720 barbell
721 No match
722 abc\nbarton
723 No match
724
725 /^(?<=foo\n)bar/Im
726 Capturing subpattern count = 0
727 Contains explicit CR or LF match
728 Options: multiline
729 First char at start or follows newline
730 Need char = 'r'
731 foo\nbarbar
732 0: bar
733 ***Failers
734 No match
735 rhubarb
736 No match
737 barbell
738 No match
739 abc\nbarton
740 No match
741
742 /(?>^abc)/Im
743 Capturing subpattern count = 0
744 Options: multiline
745 First char at start or follows newline
746 Need char = 'c'
747 abc
748 0: abc
749 def\nabc
750 0: abc
751 *** Failers
752 No match
753 defabc
754 No match
755
756 /(?<=ab(c+)d)ef/
757 Failed: lookbehind assertion is not fixed length at offset 11
758
759 /(?<=ab(?<=c+)d)ef/
760 Failed: lookbehind assertion is not fixed length at offset 12
761
762 /(?<=ab(c|de)f)g/
763 Failed: lookbehind assertion is not fixed length at offset 13
764
765 /The next three are in testinput2 because they have variable length branches/
766
767 /(?<=bullock|donkey)-cart/I
768 Capturing subpattern count = 0
769 No options
770 First char = '-'
771 Need char = 't'
772 the bullock-cart
773 0: -cart
774 a donkey-cart race
775 0: -cart
776 *** Failers
777 No match
778 cart
779 No match
780 horse-and-cart
781 No match
782
783 /(?<=ab(?i)x|y|z)/I
784 Capturing subpattern count = 0
785 No options
786 No first char
787 No need char
788
789 /(?>.*)(?<=(abcd)|(xyz))/I
790 Capturing subpattern count = 2
791 No options
792 First char at start or follows newline
793 No need char
794 alphabetabcd
795 0: alphabetabcd
796 1: abcd
797 endingxyz
798 0: endingxyz
799 1: <unset>
800 2: xyz
801
802 /(?<=ab(?i)x(?-i)y|(?i)z|b)ZZ/I
803 Capturing subpattern count = 0
804 No options
805 First char = 'Z'
806 Need char = 'Z'
807 abxyZZ
808 0: ZZ
809 abXyZZ
810 0: ZZ
811 ZZZ
812 0: ZZ
813 zZZ
814 0: ZZ
815 bZZ
816 0: ZZ
817 BZZ
818 0: ZZ
819 *** Failers
820 No match
821 ZZ
822 No match
823 abXYZZ
824 No match
825 zzz
826 No match
827 bzz
828 No match
829
830 /(?<!(foo)a)bar/I
831 Capturing subpattern count = 1
832 No options
833 First char = 'b'
834 Need char = 'r'
835 bar
836 0: bar
837 foobbar
838 0: bar
839 *** Failers
840 No match
841 fooabar
842 No match
843
844 /This one is here because Perl 5.005_02 doesn't fail it/I
845 Capturing subpattern count = 0
846 No options
847 First char = 'T'
848 Need char = 't'
849
850 /^(a)?(?(1)a|b)+$/I
851 Capturing subpattern count = 1
852 Options: anchored
853 No first char
854 No need char
855 *** Failers
856 No match
857 a
858 No match
859
860 /This one is here because Perl behaves differently; see also the following/I
861 Capturing subpattern count = 0
862 No options
863 First char = 'T'
864 Need char = 'g'
865
866 /^(a\1?){4}$/I
867 Capturing subpattern count = 1
868 Max back reference = 1
869 Options: anchored
870 No first char
871 No need char
872 aaaa
873 No match
874 aaaaaa
875 No match
876
877 /Perl does not fail these two for the final subjects. Neither did PCRE until/
878 /release 8.01. The problem is in backtracking into a subpattern that contains/
879 No match
880 /a recursive reference to itself. PCRE has now made these into atomic patterns./
881 No match
882
883 /^(xa|=?\1a){2}$/
884 xa=xaa
885 0: xa=xaa
886 1: =xaa
887 ** Failers
888 No match
889 xa=xaaa
890 No match
891
892 /^(xa|=?\1a)+$/
893 xa=xaa
894 0: xa=xaa
895 1: =xaa
896 ** Failers
897 No match
898 xa=xaaa
899 No match
900
901 /These are syntax tests from Perl 5.005/I
902 Capturing subpattern count = 0
903 No options
904 First char = 'T'
905 Need char = '5'
906
907 /a[b-a]/
908 Failed: range out of order in character class at offset 4
909
910 /a[]b/
911 Failed: missing terminating ] for character class at offset 4
912
913 /a[/
914 Failed: missing terminating ] for character class at offset 2
915
916 /*a/
917 Failed: nothing to repeat at offset 0
918
919 /(*)b/
920 Failed: nothing to repeat at offset 1
921
922 /abc)/
923 Failed: unmatched parentheses at offset 3
924
925 /(abc/
926 Failed: missing ) at offset 4
927
928 /a**/
929 Failed: nothing to repeat at offset 2
930
931 /)(/
932 Failed: unmatched parentheses at offset 0
933
934 /\1/
935 Failed: reference to non-existent subpattern at offset 2
936
937 /\2/
938 Failed: reference to non-existent subpattern at offset 2
939
940 /(a)|\2/
941 Failed: reference to non-existent subpattern at offset 6
942
943 /a[b-a]/Ii
944 Failed: range out of order in character class at offset 4
945
946 /a[]b/Ii
947 Failed: missing terminating ] for character class at offset 4
948
949 /a[/Ii
950 Failed: missing terminating ] for character class at offset 2
951
952 /*a/Ii
953 Failed: nothing to repeat at offset 0
954
955 /(*)b/Ii
956 Failed: nothing to repeat at offset 1
957
958 /abc)/Ii
959 Failed: unmatched parentheses at offset 3
960
961 /(abc/Ii
962 Failed: missing ) at offset 4
963
964 /a**/Ii
965 Failed: nothing to repeat at offset 2
966
967 /)(/Ii
968 Failed: unmatched parentheses at offset 0
969
970 /:(?:/
971 Failed: missing ) at offset 4
972
973 /(?<%)b/
974 Failed: unrecognized character after (?< at offset 3
975
976 /a(?{)b/
977 Failed: unrecognized character after (? or (?- at offset 3
978
979 /a(?{{})b/
980 Failed: unrecognized character after (? or (?- at offset 3
981
982 /a(?{}})b/
983 Failed: unrecognized character after (? or (?- at offset 3
984
985 /a(?{"{"})b/
986 Failed: unrecognized character after (? or (?- at offset 3
987
988 /a(?{"{"}})b/
989 Failed: unrecognized character after (? or (?- at offset 3
990
991 /(?(1?)a|b)/
992 Failed: malformed number or name after (?( at offset 4
993
994 /[a[:xyz:/
995 Failed: missing terminating ] for character class at offset 8
996
997 /(?<=x+)y/
998 Failed: lookbehind assertion is not fixed length at offset 6
999
1000 /a{37,17}/
1001 Failed: numbers out of order in {} quantifier at offset 7
1002
1003 /abc/\
1004 Failed: \ at end of pattern at offset 4
1005
1006 /abc/\P
1007 Failed: POSIX code 9: bad escape sequence at offset 4
1008
1009 /abc/\i
1010 Failed: \ at end of pattern at offset 4
1011
1012 /(a)bc(d)/I
1013 Capturing subpattern count = 2
1014 No options
1015 First char = 'a'
1016 Need char = 'd'
1017 abcd
1018 0: abcd
1019 1: a
1020 2: d
1021 abcd\C2
1022 0: abcd
1023 1: a
1024 2: d
1025 2C d (1)
1026 abcd\C5
1027 0: abcd
1028 1: a
1029 2: d
1030 copy substring 5 failed -7
1031
1032 /(.{20})/I
1033 Capturing subpattern count = 1
1034 No options
1035 No first char
1036 No need char
1037 abcdefghijklmnopqrstuvwxyz
1038 0: abcdefghijklmnopqrst
1039 1: abcdefghijklmnopqrst
1040 abcdefghijklmnopqrstuvwxyz\C1
1041 0: abcdefghijklmnopqrst
1042 1: abcdefghijklmnopqrst
1043 1C abcdefghijklmnopqrst (20)
1044 abcdefghijklmnopqrstuvwxyz\G1
1045 0: abcdefghijklmnopqrst
1046 1: abcdefghijklmnopqrst
1047 1G abcdefghijklmnopqrst (20)
1048
1049 /(.{15})/I
1050 Capturing subpattern count = 1
1051 No options
1052 No first char
1053 No need char
1054 abcdefghijklmnopqrstuvwxyz
1055 0: abcdefghijklmno
1056 1: abcdefghijklmno
1057 abcdefghijklmnopqrstuvwxyz\C1\G1
1058 0: abcdefghijklmno
1059 1: abcdefghijklmno
1060 1C abcdefghijklmno (15)
1061 1G abcdefghijklmno (15)
1062
1063 /(.{16})/I
1064 Capturing subpattern count = 1
1065 No options
1066 No first char
1067 No need char
1068 abcdefghijklmnopqrstuvwxyz
1069 0: abcdefghijklmnop
1070 1: abcdefghijklmnop
1071 abcdefghijklmnopqrstuvwxyz\C1\G1\L
1072 0: abcdefghijklmnop
1073 1: abcdefghijklmnop
1074 1C abcdefghijklmnop (16)
1075 1G abcdefghijklmnop (16)
1076 0L abcdefghijklmnop
1077 1L abcdefghijklmnop
1078
1079 /^(a|(bc))de(f)/I
1080 Capturing subpattern count = 3
1081 Options: anchored
1082 No first char
1083 No need char
1084 adef\G1\G2\G3\G4\L
1085 0: adef
1086 1: a
1087 2: <unset>
1088 3: f
1089 1G a (1)
1090 2G (0)
1091 3G f (1)
1092 get substring 4 failed -7
1093 0L adef
1094 1L a
1095 2L
1096 3L f
1097 bcdef\G1\G2\G3\G4\L
1098 0: bcdef
1099 1: bc
1100 2: bc
1101 3: f
1102 1G bc (2)
1103 2G bc (2)
1104 3G f (1)
1105 get substring 4 failed -7
1106 0L bcdef
1107 1L bc
1108 2L bc
1109 3L f
1110 adefghijk\C0
1111 0: adef
1112 1: a
1113 2: <unset>
1114 3: f
1115 0C adef (4)
1116
1117 /^abc\00def/I
1118 Capturing subpattern count = 0
1119 Options: anchored
1120 No first char
1121 No need char
1122 abc\00def\L\C0
1123 0: abc\x00def
1124 0C abc (7)
1125 0L abc
1126
1127 /word ((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+
1128 )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+
1129 )?)?)?)?)?)?)?)?)?otherword/I
1130 Capturing subpattern count = 8
1131 Contains explicit CR or LF match
1132 No options
1133 First char = 'w'
1134 Need char = 'd'
1135
1136 /.*X/IDZ
1137 ------------------------------------------------------------------
1138 Bra
1139 Any*
1140 X
1141 Ket
1142 End
1143 ------------------------------------------------------------------
1144 Capturing subpattern count = 0
1145 No options
1146 First char at start or follows newline
1147 Need char = 'X'
1148
1149 /.*X/IDZs
1150 ------------------------------------------------------------------
1151 Bra
1152 AllAny*
1153 X
1154 Ket
1155 End
1156 ------------------------------------------------------------------
1157 Capturing subpattern count = 0
1158 Options: anchored dotall
1159 No first char
1160 Need char = 'X'
1161
1162 /(.*X|^B)/IDZ
1163 ------------------------------------------------------------------
1164 Bra
1165 CBra 1
1166 Any*
1167 X
1168 Alt
1169 ^
1170 B
1171 Ket
1172 Ket
1173 End
1174 ------------------------------------------------------------------
1175 Capturing subpattern count = 1
1176 No options
1177 First char at start or follows newline
1178 No need char
1179
1180 /(.*X|^B)/IDZs
1181 ------------------------------------------------------------------
1182 Bra
1183 CBra 1
1184 AllAny*
1185 X
1186 Alt
1187 ^
1188 B
1189 Ket
1190 Ket
1191 End
1192 ------------------------------------------------------------------
1193 Capturing subpattern count = 1
1194 Options: anchored dotall
1195 No first char
1196 No need char
1197
1198 /(?s)(.*X|^B)/IDZ
1199 ------------------------------------------------------------------
1200 Bra
1201 CBra 1
1202 AllAny*
1203 X
1204 Alt
1205 ^
1206 B
1207 Ket
1208 Ket
1209 End
1210 ------------------------------------------------------------------
1211 Capturing subpattern count = 1
1212 Options: anchored dotall
1213 No first char
1214 No need char
1215
1216 /(?s:.*X|^B)/IDZ
1217 ------------------------------------------------------------------
1218 Bra
1219 Bra
1220 04 Opt
1221 AllAny*
1222 X
1223 Alt
1224 04 Opt
1225 ^
1226 B
1227 Ket
1228 00 Opt
1229 Ket
1230 End
1231 ------------------------------------------------------------------
1232 Capturing subpattern count = 0
1233 Options: anchored
1234 No first char
1235 No need char
1236
1237 /\Biss\B/I+
1238 Capturing subpattern count = 0
1239 No options
1240 First char = 'i'
1241 Need char = 's'
1242 Mississippi
1243 0: iss
1244 0+ issippi
1245
1246 /\Biss\B/I+P
1247 Mississippi
1248 0: iss
1249 0+ issippi
1250
1251 /iss/IG+
1252 Capturing subpattern count = 0
1253 No options
1254 First char = 'i'
1255 Need char = 's'
1256 Mississippi
1257 0: iss
1258 0+ issippi
1259 0: iss
1260 0+ ippi
1261
1262 /\Biss\B/IG+
1263 Capturing subpattern count = 0
1264 No options
1265 First char = 'i'
1266 Need char = 's'
1267 Mississippi
1268 0: iss
1269 0+ issippi
1270
1271 /\Biss\B/Ig+
1272 Capturing subpattern count = 0
1273 No options
1274 First char = 'i'
1275 Need char = 's'
1276 Mississippi
1277 0: iss
1278 0+ issippi
1279 0: iss
1280 0+ ippi
1281 *** Failers
1282 No match
1283 Mississippi\A
1284 No match
1285
1286 /(?<=[Ms])iss/Ig+
1287 Capturing subpattern count = 0
1288 No options
1289 First char = 'i'
1290 Need char = 's'
1291 Mississippi
1292 0: iss
1293 0+ issippi
1294 0: iss
1295 0+ ippi
1296
1297 /(?<=[Ms])iss/IG+
1298 Capturing subpattern count = 0
1299 No options
1300 First char = 'i'
1301 Need char = 's'
1302 Mississippi
1303 0: iss
1304 0+ issippi
1305
1306 /^iss/Ig+
1307 Capturing subpattern count = 0
1308 Options: anchored
1309 No first char
1310 No need char
1311 ississippi
1312 0: iss
1313 0+ issippi
1314
1315 /.*iss/Ig+
1316 Capturing subpattern count = 0
1317 No options
1318 First char at start or follows newline
1319 Need char = 's'
1320 abciss\nxyzisspqr
1321 0: abciss
1322 0+ \x0axyzisspqr
1323 0: xyziss
1324 0+ pqr
1325
1326 /.i./I+g
1327 Capturing subpattern count = 0
1328 No options
1329 No first char
1330 Need char = 'i'
1331 Mississippi
1332 0: Mis
1333 0+ sissippi
1334 0: sis
1335 0+ sippi
1336 0: sip
1337 0+ pi
1338 Mississippi\A
1339 0: Mis
1340 0+ sissippi
1341 0: sis
1342 0+ sippi
1343 0: sip
1344 0+ pi
1345 Missouri river
1346 0: Mis
1347 0+ souri river
1348 0: ri
1349 0+ river
1350 0: riv
1351 0+ er
1352 Missouri river\A
1353 0: Mis
1354 0+ souri river
1355
1356 /^.is/I+g
1357 Capturing subpattern count = 0
1358 Options: anchored
1359 No first char
1360 No need char
1361 Mississippi
1362 0: Mis
1363 0+ sissippi
1364
1365 /^ab\n/Ig+
1366 Capturing subpattern count = 0
1367 Contains explicit CR or LF match
1368 Options: anchored
1369 No first char
1370 No need char
1371 ab\nab\ncd
1372 0: ab\x0a
1373 0+ ab\x0acd
1374
1375 /^ab\n/Img+
1376 Capturing subpattern count = 0
1377 Contains explicit CR or LF match
1378 Options: multiline
1379 First char at start or follows newline
1380 Need char = 10
1381 ab\nab\ncd
1382 0: ab\x0a
1383 0+ ab\x0acd
1384 0: ab\x0a
1385 0+ cd
1386
1387 /abc/I
1388 Capturing subpattern count = 0
1389 No options
1390 First char = 'a'
1391 Need char = 'c'
1392
1393 /abc|bac/I
1394 Capturing subpattern count = 0
1395 No options
1396 No first char
1397 Need char = 'c'
1398
1399 /(abc|bac)/I
1400 Capturing subpattern count = 1
1401 No options
1402 No first char
1403 Need char = 'c'
1404
1405 /(abc|(c|dc))/I
1406 Capturing subpattern count = 2
1407 No options
1408 No first char
1409 Need char = 'c'
1410
1411 /(abc|(d|de)c)/I
1412 Capturing subpattern count = 2
1413 No options
1414 No first char
1415 Need char = 'c'
1416
1417 /a*/I
1418 Capturing subpattern count = 0
1419 No options
1420 No first char
1421 No need char
1422
1423 /a+/I
1424 Capturing subpattern count = 0
1425 No options
1426 First char = 'a'
1427 No need char
1428
1429 /(baa|a+)/I
1430 Capturing subpattern count = 1
1431 No options
1432 No first char
1433 Need char = 'a'
1434
1435 /a{0,3}/I
1436 Capturing subpattern count = 0
1437 No options
1438 No first char
1439 No need char
1440
1441 /baa{3,}/I
1442 Capturing subpattern count = 0
1443 No options
1444 First char = 'b'
1445 Need char = 'a'
1446
1447 /"([^\\"]+|\\.)*"/I
1448 Capturing subpattern count = 1
1449 No options
1450 First char = '"'
1451 Need char = '"'
1452
1453 /(abc|ab[cd])/I
1454 Capturing subpattern count = 1
1455 No options
1456 First char = 'a'
1457 No need char
1458
1459 /(a|.)/I
1460 Capturing subpattern count = 1
1461 No options
1462 No first char
1463 No need char
1464
1465 /a|ba|\w/I
1466 Capturing subpattern count = 0
1467 No options
1468 No first char
1469 No need char
1470
1471 /abc(?=pqr)/I
1472 Capturing subpattern count = 0
1473 No options
1474 First char = 'a'
1475 Need char = 'r'
1476
1477 /...(?<=abc)/I
1478 Capturing subpattern count = 0
1479 No options
1480 No first char
1481 No need char
1482
1483 /abc(?!pqr)/I
1484 Capturing subpattern count = 0
1485 No options
1486 First char = 'a'
1487 Need char = 'c'
1488
1489 /ab./I
1490 Capturing subpattern count = 0
1491 No options
1492 First char = 'a'
1493 Need char = 'b'
1494
1495 /ab[xyz]/I
1496 Capturing subpattern count = 0
1497 No options
1498 First char = 'a'
1499 Need char = 'b'
1500
1501 /abc*/I
1502 Capturing subpattern count = 0
1503 No options
1504 First char = 'a'
1505 Need char = 'b'
1506
1507 /ab.c*/I
1508 Capturing subpattern count = 0
1509 No options
1510 First char = 'a'
1511 Need char = 'b'
1512
1513 /a.c*/I
1514 Capturing subpattern count = 0
1515 No options
1516 First char = 'a'
1517 No need char
1518
1519 /.c*/I
1520 Capturing subpattern count = 0
1521 No options
1522 No first char
1523 No need char
1524
1525 /ac*/I
1526 Capturing subpattern count = 0
1527 No options
1528 First char = 'a'
1529 No need char
1530
1531 /(a.c*|b.c*)/I
1532 Capturing subpattern count = 1
1533 No options
1534 No first char
1535 No need char
1536
1537 /a.c*|aba/I
1538 Capturing subpattern count = 0
1539 No options
1540 First char = 'a'
1541 No need char
1542
1543 /.+a/I
1544 Capturing subpattern count = 0
1545 No options
1546 No first char
1547 Need char = 'a'
1548
1549 /(?=abcda)a.*/I
1550 Capturing subpattern count = 0
1551 No options
1552 First char = 'a'
1553 Need char = 'a'
1554
1555 /(?=a)a.*/I
1556 Capturing subpattern count = 0
1557 No options
1558 First char = 'a'
1559 No need char
1560
1561 /a(b)*/I
1562 Capturing subpattern count = 1
1563 No options
1564 First char = 'a'
1565 No need char
1566
1567 /a\d*/I
1568 Capturing subpattern count = 0
1569 No options
1570 First char = 'a'
1571 No need char
1572
1573 /ab\d*/I
1574 Capturing subpattern count = 0
1575 No options
1576 First char = 'a'
1577 Need char = 'b'
1578
1579 /a(\d)*/I
1580 Capturing subpattern count = 1
1581 No options
1582 First char = 'a'
1583 No need char
1584
1585 /abcde{0,0}/I
1586 Capturing subpattern count = 0
1587 No options
1588 First char = 'a'
1589 Need char = 'd'
1590
1591 /ab\d+/I
1592 Capturing subpattern count = 0
1593 No options
1594 First char = 'a'
1595 Need char = 'b'
1596
1597 /a(?(1)b)(.)/I
1598 Capturing subpattern count = 1
1599 No options
1600 First char = 'a'
1601 No need char
1602
1603 /a(?(1)bag|big)(.)/I
1604 Capturing subpattern count = 1
1605 No options
1606 First char = 'a'
1607 Need char = 'g'
1608
1609 /a(?(1)bag|big)*(.)/I
1610 Capturing subpattern count = 1
1611 No options
1612 First char = 'a'
1613 No need char
1614
1615 /a(?(1)bag|big)+(.)/I
1616 Capturing subpattern count = 1
1617 No options
1618 First char = 'a'
1619 Need char = 'g'
1620
1621 /a(?(1)b..|b..)(.)/I
1622 Capturing subpattern count = 1
1623 No options
1624 First char = 'a'
1625 Need char = 'b'
1626
1627 /ab\d{0}e/I
1628 Capturing subpattern count = 0
1629 No options
1630 First char = 'a'
1631 Need char = 'e'
1632
1633 /a?b?/I
1634 Capturing subpattern count = 0
1635 No options
1636 No first char
1637 No need char
1638 a
1639 0: a
1640 b
1641 0: b
1642 ab
1643 0: ab
1644 \
1645 0:
1646 *** Failers
1647 0:
1648 \N
1649 No match
1650
1651 /|-/I
1652 Capturing subpattern count = 0
1653 No options
1654 No first char
1655 No need char
1656 abcd
1657 0:
1658 -abc
1659 0:
1660 \Nab-c
1661 0: -
1662 *** Failers
1663 0:
1664 \Nabc
1665 No match
1666
1667 /a*(b+)(z)(z)/P
1668 aaaabbbbzzzz
1669 0: aaaabbbbzz
1670 1: bbbb
1671 2: z
1672 3: z
1673 aaaabbbbzzzz\O0
1674 aaaabbbbzzzz\O1
1675 0: aaaabbbbzz
1676 aaaabbbbzzzz\O2
1677 0: aaaabbbbzz
1678 1: bbbb
1679 aaaabbbbzzzz\O3
1680 0: aaaabbbbzz
1681 1: bbbb
1682 2: z
1683 aaaabbbbzzzz\O4
1684 0: aaaabbbbzz
1685 1: bbbb
1686 2: z
1687 3: z
1688 aaaabbbbzzzz\O5
1689 0: aaaabbbbzz
1690 1: bbbb
1691 2: z
1692 3: z
1693
1694 /^.?abcd/IS
1695 Capturing subpattern count = 0
1696 Options: anchored
1697 No first char
1698 Need char = 'd'
1699 Subject length lower bound = 4
1700 No set of starting bytes
1701
1702 /\( # ( at start
1703 (?: # Non-capturing bracket
1704 (?>[^()]+) # Either a sequence of non-brackets (no backtracking)
1705 | # Or
1706 (?R) # Recurse - i.e. nested bracketed string
1707 )* # Zero or more contents
1708 \) # Closing )
1709 /Ix
1710 Capturing subpattern count = 0
1711 Options: extended
1712 First char = '('
1713 Need char = ')'
1714 (abcd)
1715 0: (abcd)
1716 (abcd)xyz
1717 0: (abcd)
1718 xyz(abcd)
1719 0: (abcd)
1720 (ab(xy)cd)pqr
1721 0: (ab(xy)cd)
1722 (ab(xycd)pqr
1723 0: (xycd)
1724 () abc ()
1725 0: ()
1726 12(abcde(fsh)xyz(foo(bar))lmno)89
1727 0: (abcde(fsh)xyz(foo(bar))lmno)
1728 *** Failers
1729 No match
1730 abcd
1731 No match
1732 abcd)
1733 No match
1734 (abcd
1735 No match
1736
1737 /\( ( (?>[^()]+) | (?R) )* \) /Ixg
1738 Capturing subpattern count = 1
1739 Options: extended
1740 First char = '('
1741 Need char = ')'
1742 (ab(xy)cd)pqr
1743 0: (ab(xy)cd)
1744 1: cd
1745 1(abcd)(x(y)z)pqr
1746 0: (abcd)
1747 1: abcd
1748 0: (x(y)z)
1749 1: z
1750
1751 /\( (?: (?>[^()]+) | (?R) ) \) /Ix
1752 Capturing subpattern count = 0
1753 Options: extended
1754 First char = '('
1755 Need char = ')'
1756 (abcd)
1757 0: (abcd)
1758 (ab(xy)cd)
1759 0: (xy)
1760 (a(b(c)d)e)
1761 0: (c)
1762 ((ab))
1763 0: ((ab))
1764 *** Failers
1765 No match
1766 ()
1767 No match
1768
1769 /\( (?: (?>[^()]+) | (?R) )? \) /Ix
1770 Capturing subpattern count = 0
1771 Options: extended
1772 First char = '('
1773 Need char = ')'
1774 ()
1775 0: ()
1776 12(abcde(fsh)xyz(foo(bar))lmno)89
1777 0: (fsh)
1778
1779 /\( ( (?>[^()]+) | (?R) )* \) /Ix
1780 Capturing subpattern count = 1
1781 Options: extended
1782 First char = '('
1783 Need char = ')'
1784 (ab(xy)cd)
1785 0: (ab(xy)cd)
1786 1: cd
1787
1788 /\( ( ( (?>[^()]+) | (?R) )* ) \) /Ix
1789 Capturing subpattern count = 2
1790 Options: extended
1791 First char = '('
1792 Need char = ')'
1793 (ab(xy)cd)
1794 0: (ab(xy)cd)
1795 1: ab(xy)cd
1796 2: cd
1797
1798 /\( (123)? ( ( (?>[^()]+) | (?R) )* ) \) /Ix
1799 Capturing subpattern count = 3
1800 Options: extended
1801 First char = '('
1802 Need char = ')'
1803 (ab(xy)cd)
1804 0: (ab(xy)cd)
1805 1: <unset>
1806 2: ab(xy)cd
1807 3: cd
1808 (123ab(xy)cd)
1809 0: (123ab(xy)cd)
1810 1: 123
1811 2: ab(xy)cd
1812 3: cd
1813
1814 /\( ( (123)? ( (?>[^()]+) | (?R) )* ) \) /Ix
1815 Capturing subpattern count = 3
1816 Options: extended
1817 First char = '('
1818 Need char = ')'
1819 (ab(xy)cd)
1820 0: (ab(xy)cd)
1821 1: ab(xy)cd
1822 2: <unset>
1823 3: cd
1824 (123ab(xy)cd)
1825 0: (123ab(xy)cd)
1826 1: 123ab(xy)cd
1827 2: 123
1828 3: cd
1829
1830 /\( (((((((((( ( (?>[^()]+) | (?R) )* )))))))))) \) /Ix
1831 Capturing subpattern count = 11
1832 Options: extended
1833 First char = '('
1834 Need char = ')'
1835 (ab(xy)cd)
1836 0: (ab(xy)cd)
1837 1: ab(xy)cd
1838 2: ab(xy)cd
1839 3: ab(xy)cd
1840 4: ab(xy)cd
1841 5: ab(xy)cd
1842 6: ab(xy)cd
1843 7: ab(xy)cd
1844 8: ab(xy)cd
1845 9: ab(xy)cd
1846 10: ab(xy)cd
1847 11: cd
1848
1849 /\( ( ( (?>[^()<>]+) | ((?>[^()]+)) | (?R) )* ) \) /Ix
1850 Capturing subpattern count = 3
1851 Options: extended
1852 First char = '('
1853 Need char = ')'
1854 (abcd(xyz<p>qrs)123)
1855 0: (abcd(xyz<p>qrs)123)
1856 1: abcd(xyz<p>qrs)123
1857 2: 123
1858
1859 /\( ( ( (?>[^()]+) | ((?R)) )* ) \) /Ix
1860 Capturing subpattern count = 3
1861 Options: extended
1862 First char = '('
1863 Need char = ')'
1864 (ab(cd)ef)
1865 0: (ab(cd)ef)
1866 1: ab(cd)ef
1867 2: ef
1868 3: (cd)
1869 (ab(cd(ef)gh)ij)
1870 0: (ab(cd(ef)gh)ij)
1871 1: ab(cd(ef)gh)ij
1872 2: ij
1873 3: (cd(ef)gh)
1874
1875 /^[[:alnum:]]/DZ
1876 ------------------------------------------------------------------
1877 Bra
1878 ^
1879 [0-9A-Za-z]
1880 Ket
1881 End
1882 ------------------------------------------------------------------
1883 Capturing subpattern count = 0
1884 Options: anchored
1885 No first char
1886 No need char
1887
1888 /^[[:^alnum:]]/DZ
1889 ------------------------------------------------------------------
1890 Bra
1891 ^
1892 [\x00-/:-@[-`{-\xff] (neg)
1893 Ket
1894 End
1895 ------------------------------------------------------------------
1896 Capturing subpattern count = 0
1897 Options: anchored
1898 No first char
1899 No need char
1900
1901 /^[[:alpha:]]/DZ
1902 ------------------------------------------------------------------
1903 Bra
1904 ^
1905 [A-Za-z]
1906 Ket
1907 End
1908 ------------------------------------------------------------------
1909 Capturing subpattern count = 0
1910 Options: anchored
1911 No first char
1912 No need char
1913
1914 /^[[:^alpha:]]/DZ
1915 ------------------------------------------------------------------
1916 Bra
1917 ^
1918 [\x00-@[-`{-\xff] (neg)
1919 Ket
1920 End
1921 ------------------------------------------------------------------
1922 Capturing subpattern count = 0
1923 Options: anchored
1924 No first char
1925 No need char
1926
1927 /[_[:alpha:]]/IS
1928 Capturing subpattern count = 0
1929 No options
1930 No first char
1931 No need char
1932 Subject length lower bound = 1
1933 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
1934 _ 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
1935
1936 /^[[:ascii:]]/DZ
1937 ------------------------------------------------------------------
1938 Bra
1939 ^
1940 [\x00-\x7f]
1941 Ket
1942 End
1943 ------------------------------------------------------------------
1944 Capturing subpattern count = 0
1945 Options: anchored
1946 No first char
1947 No need char
1948
1949 /^[[:^ascii:]]/DZ
1950 ------------------------------------------------------------------
1951 Bra
1952 ^
1953 [\x80-\xff] (neg)
1954 Ket
1955 End
1956 ------------------------------------------------------------------
1957 Capturing subpattern count = 0
1958 Options: anchored
1959 No first char
1960 No need char
1961
1962 /^[[:blank:]]/DZ
1963 ------------------------------------------------------------------
1964 Bra
1965 ^
1966 [\x09 ]
1967 Ket
1968 End
1969 ------------------------------------------------------------------
1970 Capturing subpattern count = 0
1971 Options: anchored
1972 No first char
1973 No need char
1974
1975 /^[[:^blank:]]/DZ
1976 ------------------------------------------------------------------
1977 Bra
1978 ^
1979 [\x00-\x08\x0a-\x1f!-\xff] (neg)
1980 Ket
1981 End
1982 ------------------------------------------------------------------
1983 Capturing subpattern count = 0
1984 Options: anchored
1985 No first char
1986 No need char
1987
1988 /[\n\x0b\x0c\x0d[:blank:]]/IS
1989 Capturing subpattern count = 0
1990 Contains explicit CR or LF match
1991 No options
1992 No first char
1993 No need char
1994 Subject length lower bound = 1
1995 Starting byte set: \x09 \x0a \x0b \x0c \x0d \x20
1996
1997 /^[[:cntrl:]]/DZ
1998 ------------------------------------------------------------------
1999 Bra
2000 ^
2001 [\x00-\x1f\x7f]
2002 Ket
2003 End
2004 ------------------------------------------------------------------
2005 Capturing subpattern count = 0
2006 Options: anchored
2007 No first char
2008 No need char
2009
2010 /^[[:digit:]]/DZ
2011 ------------------------------------------------------------------
2012 Bra
2013 ^
2014 [0-9]
2015 Ket
2016 End
2017 ------------------------------------------------------------------
2018 Capturing subpattern count = 0
2019 Options: anchored
2020 No first char
2021 No need char
2022
2023 /^[[:graph:]]/DZ
2024 ------------------------------------------------------------------
2025 Bra
2026 ^
2027 [!-~]
2028 Ket
2029 End
2030 ------------------------------------------------------------------
2031 Capturing subpattern count = 0
2032 Options: anchored
2033 No first char
2034 No need char
2035
2036 /^[[:lower:]]/DZ
2037 ------------------------------------------------------------------
2038 Bra
2039 ^
2040 [a-z]
2041 Ket
2042 End
2043 ------------------------------------------------------------------
2044 Capturing subpattern count = 0
2045 Options: anchored
2046 No first char
2047 No need char
2048
2049 /^[[:print:]]/DZ
2050 ------------------------------------------------------------------
2051 Bra
2052 ^
2053 [ -~]
2054 Ket
2055 End
2056 ------------------------------------------------------------------
2057 Capturing subpattern count = 0
2058 Options: anchored
2059 No first char
2060 No need char
2061
2062 /^[[:punct:]]/DZ
2063 ------------------------------------------------------------------
2064 Bra
2065 ^
2066 [!-/:-@[-`{-~]
2067 Ket
2068 End
2069 ------------------------------------------------------------------
2070 Capturing subpattern count = 0
2071 Options: anchored
2072 No first char
2073 No need char
2074
2075 /^[[:space:]]/DZ
2076 ------------------------------------------------------------------
2077 Bra
2078 ^
2079 [\x09-\x0d ]
2080 Ket
2081 End
2082 ------------------------------------------------------------------
2083 Capturing subpattern count = 0
2084 Options: anchored
2085 No first char
2086 No need char
2087
2088 /^[[:upper:]]/DZ
2089 ------------------------------------------------------------------
2090 Bra
2091 ^
2092 [A-Z]
2093 Ket
2094 End
2095 ------------------------------------------------------------------
2096 Capturing subpattern count = 0
2097 Options: anchored
2098 No first char
2099 No need char
2100
2101 /^[[:xdigit:]]/DZ
2102 ------------------------------------------------------------------
2103 Bra
2104 ^
2105 [0-9A-Fa-f]
2106 Ket
2107 End
2108 ------------------------------------------------------------------
2109 Capturing subpattern count = 0
2110 Options: anchored
2111 No first char
2112 No need char
2113
2114 /^[[:word:]]/DZ
2115 ------------------------------------------------------------------
2116 Bra
2117 ^
2118 [0-9A-Z_a-z]
2119 Ket
2120 End
2121 ------------------------------------------------------------------
2122 Capturing subpattern count = 0
2123 Options: anchored
2124 No first char
2125 No need char
2126
2127 /^[[:^cntrl:]]/DZ
2128 ------------------------------------------------------------------
2129 Bra
2130 ^
2131 [ -~\x80-\xff] (neg)
2132 Ket
2133 End
2134 ------------------------------------------------------------------
2135 Capturing subpattern count = 0
2136 Options: anchored
2137 No first char
2138 No need char
2139
2140 /^[12[:^digit:]]/DZ
2141 ------------------------------------------------------------------
2142 Bra
2143 ^
2144 [\x00-/12:-\xff] (neg)
2145 Ket
2146 End
2147 ------------------------------------------------------------------
2148 Capturing subpattern count = 0
2149 Options: anchored
2150 No first char
2151 No need char
2152
2153 /^[[:^blank:]]/DZ
2154 ------------------------------------------------------------------
2155 Bra
2156 ^
2157 [\x00-\x08\x0a-\x1f!-\xff] (neg)
2158 Ket
2159 End
2160 ------------------------------------------------------------------
2161 Capturing subpattern count = 0
2162 Options: anchored
2163 No first char
2164 No need char
2165
2166 /[01[:alpha:]%]/DZ
2167 ------------------------------------------------------------------
2168 Bra
2169 [%01A-Za-z]
2170 Ket
2171 End
2172 ------------------------------------------------------------------
2173 Capturing subpattern count = 0
2174 No options
2175 No first char
2176 No need char
2177
2178 /[[.ch.]]/I
2179 Failed: POSIX collating elements are not supported at offset 1
2180
2181 /[[=ch=]]/I
2182 Failed: POSIX collating elements are not supported at offset 1
2183
2184 /[[:rhubarb:]]/I
2185 Failed: unknown POSIX class name at offset 3
2186
2187 /[[:upper:]]/Ii
2188 Capturing subpattern count = 0
2189 Options: caseless
2190 No first char
2191 No need char
2192 A
2193 0: A
2194 a
2195 0: a
2196
2197 /[[:lower:]]/Ii
2198 Capturing subpattern count = 0
2199 Options: caseless
2200 No first char
2201 No need char
2202 A
2203 0: A
2204 a
2205 0: a
2206
2207 /((?-i)[[:lower:]])[[:lower:]]/Ii
2208 Capturing subpattern count = 1
2209 Options: caseless
2210 No first char
2211 No need char
2212 ab
2213 0: ab
2214 1: a
2215 aB
2216 0: aB
2217 1: a
2218 *** Failers
2219 0: ai
2220 1: a
2221 Ab
2222 No match
2223 AB
2224 No match
2225
2226 /[\200-\110]/I
2227 Failed: range out of order in character class at offset 9
2228
2229 /^(?(0)f|b)oo/I
2230 Failed: invalid condition (?(0) at offset 6
2231
2232 /This one's here because of the large output vector needed/I
2233 Capturing subpattern count = 0
2234 No options
2235 First char = 'T'
2236 Need char = 'd'
2237
2238 /(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\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
2239 Capturing subpattern count = 271
2240 Max back reference = 270
2241 No options
2242 No first char
2243 No need char
2244 \O900 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 ABC ABC
2245 0: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 ABC ABC
2246 1: 1
2247 2: 2
2248 3: 3
2249 4: 4
2250 5: 5
2251 6: 6
2252 7: 7
2253 8: 8
2254 9: 9
2255 10: 10
2256 11: 11
2257 12: 12
2258 13: 13
2259 14: 14
2260 15: 15
2261 16: 16
2262 17: 17
2263 18: 18
2264 19: 19
2265 20: 20
2266 21: 21
2267 22: 22
2268 23: 23
2269 24: 24
2270 25: 25
2271 26: 26
2272 27: 27
2273 28: 28
2274 29: 29
2275 30: 30
2276 31: 31
2277 32: 32
2278 33: 33
2279 34: 34
2280 35: 35
2281 36: 36
2282 37: 37
2283 38: 38
2284 39: 39
2285 40: 40
2286 41: 41
2287 42: 42
2288 43: 43
2289 44: 44
2290 45: 45
2291 46: 46
2292 47: 47
2293 48: 48
2294 49: 49
2295 50: 50
2296 51: 51
2297 52: 52
2298 53: 53
2299 54: 54
2300 55: 55
2301 56: 56
2302 57: 57
2303 58: 58
2304 59: 59
2305 60: 60
2306 61: 61
2307 62: 62
2308 63: 63
2309 64: 64
2310 65: 65
2311 66: 66
2312 67: 67
2313 68: 68
2314 69: 69
2315 70: 70
2316 71: 71
2317 72: 72
2318 73: 73
2319 74: 74
2320 75: 75
2321 76: 76
2322 77: 77
2323 78: 78
2324 79: 79
2325 80: 80
2326 81: 81
2327 82: 82
2328 83: 83
2329 84: 84
2330 85: 85
2331 86: 86
2332 87: 87
2333 88: 88
2334 89: 89
2335 90: 90
2336 91: 91
2337 92: 92
2338 93: 93
2339 94: 94
2340 95: 95
2341 96: 96
2342 97: 97
2343 98: 98
2344 99: 99
2345 100: 100
2346 101: 101
2347 102: 102
2348 103: 103
2349 104: 104
2350 105: 105
2351 106: 106
2352 107: 107
2353 108: 108
2354 109: 109
2355 110: 110
2356 111: 111
2357 112: 112
2358 113: 113
2359 114: 114
2360 115: 115
2361 116: 116
2362 117: 117
2363 118: 118
2364 119: 119
2365 120: 120
2366 121: 121
2367 122: 122
2368 123: 123
2369 124: 124
2370 125: 125
2371 126: 126
2372 127: 127
2373 128: 128
2374 129: 129
2375 130: 130
2376 131: 131
2377 132: 132
2378 133: 133
2379 134: 134
2380 135: 135
2381 136: 136
2382 137: 137
2383 138: 138
2384 139: 139
2385 140: 140
2386 141: 141
2387 142: 142
2388 143: 143
2389 144: 144
2390 145: 145
2391 146: 146
2392 147: 147
2393 148: 148
2394 149: 149
2395 150: 150
2396 151: 151
2397 152: 152
2398 153: 153
2399 154: 154
2400 155: 155
2401 156: 156
2402 157: 157
2403 158: 158
2404 159: 159
2405 160: 160
2406 161: 161
2407 162: 162
2408 163: 163
2409 164: 164
2410 165: 165
2411 166: 166
2412 167: 167
2413 168: 168
2414 169: 169
2415 170: 170
2416 171: 171
2417 172: 172
2418 173: 173
2419 174: 174
2420 175: 175
2421 176: 176
2422 177: 177
2423 178: 178
2424 179: 179
2425 180: 180
2426 181: 181
2427 182: 182
2428 183: 183
2429 184: 184
2430 185: 185
2431 186: 186
2432 187: 187
2433 188: 188
2434 189: 189
2435 190: 190
2436 191: 191
2437 192: 192
2438 193: 193
2439 194: 194
2440 195: 195
2441 196: 196
2442 197: 197
2443 198: 198
2444 199: 199
2445 200: 200
2446 201: 201
2447 202: 202
2448 203: 203
2449 204: 204
2450 205: 205
2451 206: 206
2452 207: 207
2453 208: 208
2454 209: 209
2455 210: 210
2456 211: 211
2457 212: 212
2458 213: 213
2459 214: 214
2460 215: 215
2461 216: 216
2462 217: 217
2463 218: 218
2464 219: 219
2465 220: 220
2466 221: 221
2467 222: 222
2468 223: 223
2469 224: 224
2470 225: 225
2471 226: 226
2472 227: 227
2473 228: 228
2474 229: 229
2475 230: 230
2476 231: 231
2477 232: 232
2478 233: 233
2479 234: 234
2480 235: 235
2481 236: 236
2482 237: 237
2483 238: 238
2484 239: 239
2485 240: 240
2486 241: 241
2487 242: 242
2488 243: 243
2489 244: 244
2490 245: 245
2491 246: 246
2492 247: 247
2493 248: 248
2494 249: 249
2495 250: 250
2496 251: 251
2497 252: 252
2498 253: 253
2499 254: 254
2500 255: 255
2501 256: 256
2502 257: 257
2503 258: 258
2504 259: 259
2505 260: 260
2506 261: 261
2507 262: 262
2508 263: 263
2509 264: 264
2510 265: 265
2511 266: 266
2512 267: 267
2513 268: 268
2514 269: 269
2515 270: ABC
2516 271: ABC
2517
2518 /This one's here because Perl does this differently and PCRE can't at present/I
2519 Capturing subpattern count = 0
2520 No options
2521 First char = 'T'
2522 Need char = 't'
2523
2524 /(main(O)?)+/I
2525 Capturing subpattern count = 2
2526 No options
2527 First char = 'm'
2528 Need char = 'n'
2529 mainmain
2530 0: mainmain
2531 1: main
2532 mainOmain
2533 0: mainOmain
2534 1: main
2535 2: O
2536
2537 /These are all cases where Perl does it differently (nested captures)/I
2538 Capturing subpattern count = 1
2539 No options
2540 First char = 'T'
2541 Need char = 's'
2542
2543 /^(a(b)?)+$/I
2544 Capturing subpattern count = 2
2545 Options: anchored
2546 No first char
2547 No need char
2548 aba
2549 0: aba
2550 1: a
2551 2: b
2552
2553 /^(aa(bb)?)+$/I
2554 Capturing subpattern count = 2
2555 Options: anchored
2556 No first char
2557 No need char
2558 aabbaa
2559 0: aabbaa
2560 1: aa
2561 2: bb
2562
2563 /^(aa|aa(bb))+$/I
2564 Capturing subpattern count = 2
2565 Options: anchored
2566 No first char
2567 No need char
2568 aabbaa
2569 0: aabbaa
2570 1: aa
2571 2: bb
2572
2573 /^(aa(bb)??)+$/I
2574 Capturing subpattern count = 2
2575 Options: anchored
2576 No first char
2577 No need char
2578 aabbaa
2579 0: aabbaa
2580 1: aa
2581 2: bb
2582
2583 /^(?:aa(bb)?)+$/I
2584 Capturing subpattern count = 1
2585 Options: anchored
2586 No first char
2587 No need char
2588 aabbaa
2589 0: aabbaa
2590 1: bb
2591
2592 /^(aa(b(b))?)+$/I
2593 Capturing subpattern count = 3
2594 Options: anchored
2595 No first char
2596 No need char
2597 aabbaa
2598 0: aabbaa
2599 1: aa
2600 2: bb
2601 3: b
2602
2603 /^(?:aa(b(b))?)+$/I
2604 Capturing subpattern count = 2
2605 Options: anchored
2606 No first char
2607 No need char
2608 aabbaa
2609 0: aabbaa
2610 1: bb
2611 2: b
2612
2613 /^(?:aa(b(?:b))?)+$/I
2614 Capturing subpattern count = 1
2615 Options: anchored
2616 No first char
2617 No need char
2618 aabbaa
2619 0: aabbaa
2620 1: bb
2621
2622 /^(?:aa(bb(?:b))?)+$/I
2623 Capturing subpattern count = 1
2624 Options: anchored
2625 No first char
2626 No need char
2627 aabbbaa
2628 0: aabbbaa
2629 1: bbb
2630
2631 /^(?:aa(b(?:bb))?)+$/I
2632 Capturing subpattern count = 1
2633 Options: anchored
2634 No first char
2635 No need char
2636 aabbbaa
2637 0: aabbbaa
2638 1: bbb
2639
2640 /^(?:aa(?:b(b))?)+$/I
2641 Capturing subpattern count = 1
2642 Options: anchored
2643 No first char
2644 No need char
2645 aabbaa
2646 0: aabbaa
2647 1: b
2648
2649 /^(?:aa(?:b(bb))?)+$/I
2650 Capturing subpattern count = 1
2651 Options: anchored
2652 No first char
2653 No need char
2654 aabbbaa
2655 0: aabbbaa
2656 1: bb
2657
2658 /^(aa(b(bb))?)+$/I
2659 Capturing subpattern count = 3
2660 Options: anchored
2661 No first char
2662 No need char
2663 aabbbaa
2664 0: aabbbaa
2665 1: aa
2666 2: bbb
2667 3: bb
2668
2669 /^(aa(bb(bb))?)+$/I
2670 Capturing subpattern count = 3
2671 Options: anchored
2672 No first char
2673 No need char
2674 aabbbbaa
2675 0: aabbbbaa
2676 1: aa
2677 2: bbbb
2678 3: bb
2679
2680 /--------------------------------------------------------------------/I
2681 Capturing subpattern count = 0
2682 No options
2683 First char = '-'
2684 Need char = '-'
2685
2686 /#/IxDZ
2687 ------------------------------------------------------------------
2688 Bra
2689 Ket
2690 End
2691 ------------------------------------------------------------------
2692 Capturing subpattern count = 0
2693 Options: extended
2694 No first char
2695 No need char
2696
2697 /a#/IxDZ
2698 ------------------------------------------------------------------
2699 Bra
2700 a
2701 Ket
2702 End
2703 ------------------------------------------------------------------
2704 Capturing subpattern count = 0
2705 Options: extended
2706 First char = 'a'
2707 No need char
2708
2709 /[\s]/DZ
2710 ------------------------------------------------------------------
2711 Bra
2712 [\x09\x0a\x0c\x0d ]
2713 Ket
2714 End
2715 ------------------------------------------------------------------
2716 Capturing subpattern count = 0
2717 No options
2718 No first char
2719 No need char
2720
2721 /[\S]/DZ
2722 ------------------------------------------------------------------
2723 Bra
2724 [\x00-\x08\x0b\x0e-\x1f!-\xff] (neg)
2725 Ket
2726 End
2727 ------------------------------------------------------------------
2728 Capturing subpattern count = 0
2729 No options
2730 No first char
2731 No need char
2732
2733 /a(?i)b/DZ
2734 ------------------------------------------------------------------
2735 Bra
2736 a
2737 01 Opt
2738 NC b
2739 Ket
2740 End
2741 ------------------------------------------------------------------
2742 Capturing subpattern count = 0
2743 No options
2744 First char = 'a'
2745 Need char = 'b' (caseless)
2746 ab
2747 0: ab
2748 aB
2749 0: aB
2750 *** Failers
2751 No match
2752 AB
2753 No match
2754
2755 /(a(?i)b)/DZ
2756 ------------------------------------------------------------------
2757 Bra
2758 CBra 1
2759 a
2760 01 Opt
2761 NC b
2762 Ket
2763 00 Opt
2764 Ket
2765 End
2766 ------------------------------------------------------------------
2767 Capturing subpattern count = 1
2768 No options
2769 First char = 'a'
2770 Need char = 'b' (caseless)
2771 ab
2772 0: ab
2773 1: ab
2774 aB
2775 0: aB
2776 1: aB
2777 *** Failers
2778 No match
2779 AB
2780 No match
2781
2782 / (?i)abc/IxDZ
2783 ------------------------------------------------------------------
2784 Bra
2785 NC abc
2786 Ket
2787 End
2788 ------------------------------------------------------------------
2789 Capturing subpattern count = 0
2790 Options: caseless extended
2791 First char = 'a' (caseless)
2792 Need char = 'c' (caseless)
2793
2794 /#this is a comment
2795 (?i)abc/IxDZ
2796 ------------------------------------------------------------------
2797 Bra
2798 NC abc
2799 Ket
2800 End
2801 ------------------------------------------------------------------
2802 Capturing subpattern count = 0
2803 Options: caseless extended
2804 First char = 'a' (caseless)
2805 Need char = 'c' (caseless)
2806
2807 /123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890/DZ
2808 ------------------------------------------------------------------
2809 Bra
2810 123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890
2811 Ket
2812 End
2813 ------------------------------------------------------------------
2814 Capturing subpattern count = 0
2815 No options
2816 First char = '1'
2817 Need char = '0'
2818
2819 /\Q123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890/DZ
2820 ------------------------------------------------------------------
2821 Bra
2822 123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890
2823 Ket
2824 End
2825 ------------------------------------------------------------------
2826 Capturing subpattern count = 0
2827 No options
2828 First char = '1'
2829 Need char = '0'
2830
2831 /\Q\E/DZ
2832 ------------------------------------------------------------------
2833 Bra
2834 Ket
2835 End
2836 ------------------------------------------------------------------
2837 Capturing subpattern count = 0
2838 No options
2839 No first char
2840 No need char
2841 \
2842 0:
2843
2844 /\Q\Ex/DZ
2845 ------------------------------------------------------------------
2846 Bra
2847 x
2848 Ket
2849 End
2850 ------------------------------------------------------------------
2851 Capturing subpattern count = 0
2852 No options
2853 First char = 'x'
2854 No need char
2855
2856 / \Q\E/DZ
2857 ------------------------------------------------------------------
2858 Bra
2859
2860 Ket
2861 End
2862 ------------------------------------------------------------------
2863 Capturing subpattern count = 0
2864 No options
2865 First char = ' '
2866 No need char
2867
2868 /a\Q\E/DZ
2869 ------------------------------------------------------------------
2870 Bra
2871 a
2872 Ket
2873 End
2874 ------------------------------------------------------------------
2875 Capturing subpattern count = 0
2876 No options
2877 First char = 'a'
2878 No need char
2879 abc
2880 0: a
2881 bca
2882 0: a
2883 bac
2884 0: a
2885
2886 /a\Q\Eb/DZ
2887 ------------------------------------------------------------------
2888 Bra
2889 ab
2890 Ket
2891 End
2892 ------------------------------------------------------------------
2893 Capturing subpattern count = 0
2894 No options
2895 First char = 'a'
2896 Need char = 'b'
2897 abc
2898 0: ab
2899
2900 /\Q\Eabc/DZ
2901 ------------------------------------------------------------------
2902 Bra
2903 abc
2904 Ket
2905 End
2906 ------------------------------------------------------------------
2907 Capturing subpattern count = 0
2908 No options
2909 First char = 'a'
2910 Need char = 'c'
2911
2912 /x*+\w/DZ
2913 ------------------------------------------------------------------
2914 Bra
2915 x*+
2916 \w
2917 Ket
2918 End
2919 ------------------------------------------------------------------
2920 Capturing subpattern count = 0
2921 No options
2922 No first char
2923 No need char
2924 *** Failers
2925 0: F
2926 xxxxx
2927 No match
2928
2929 /x?+/DZ
2930 ------------------------------------------------------------------
2931 Bra
2932 x?+
2933 Ket
2934 End
2935 ------------------------------------------------------------------
2936 Capturing subpattern count = 0
2937 No options
2938 No first char
2939 No need char
2940
2941 /x++/DZ
2942 ------------------------------------------------------------------
2943 Bra
2944 x++
2945 Ket
2946 End
2947 ------------------------------------------------------------------
2948 Capturing subpattern count = 0
2949 No options
2950 First char = 'x'
2951 No need char
2952
2953 /x{1,3}+/DZ
2954 ------------------------------------------------------------------
2955 Bra
2956 Once
2957 x
2958 x{0,2}
2959 Ket
2960 Ket
2961 End
2962 ------------------------------------------------------------------
2963 Capturing subpattern count = 0
2964 No options
2965 First char = 'x'
2966 No need char
2967
2968 /(x)*+/DZ
2969 ------------------------------------------------------------------
2970 Bra
2971 Once
2972 Brazero
2973 CBra 1
2974 x
2975 KetRmax
2976 Ket
2977 Ket
2978 End
2979 ------------------------------------------------------------------
2980 Capturing subpattern count = 1
2981 No options
2982 No first char
2983 No need char
2984
2985 /^(\w++|\s++)*$/I
2986 Capturing subpattern count = 1
2987 Options: anchored
2988 No first char
2989 No need char
2990 now is the time for all good men to come to the aid of the party
2991 0: now is the time for all good men to come to the aid of the party
2992 1: party
2993 *** Failers
2994 No match
2995 this is not a line with only words and spaces!
2996 No match
2997
2998 /(\d++)(\w)/I
2999 Capturing subpattern count = 2
3000 No options
3001 No first char
3002 No need char
3003 12345a
3004 0: 12345a
3005 1: 12345
3006 2: a
3007 *** Failers
3008 No match
3009 12345+
3010 No match
3011
3012 /a++b/I
3013 Capturing subpattern count = 0
3014 No options
3015 First char = 'a'
3016 Need char = 'b'
3017 aaab
3018 0: aaab
3019
3020 /(a++b)/I
3021 Capturing subpattern count = 1
3022 No options
3023 First char = 'a'
3024 Need char = 'b'
3025 aaab
3026 0: aaab
3027 1: aaab
3028
3029 /(a++)b/I
3030 Capturing subpattern count = 1
3031 No options
3032 First char = 'a'
3033 Need char = 'b'
3034 aaab
3035 0: aaab
3036 1: aaa
3037
3038 /([^()]++|\([^()]*\))+/I
3039 Capturing subpattern count = 1
3040 No options
3041 No first char
3042 No need char
3043 ((abc(ade)ufh()()x
3044 0: abc(ade)ufh()()x
3045 1: x
3046
3047 /\(([^()]++|\([^()]+\))+\)/I
3048 Capturing subpattern count = 1
3049 No options
3050 First char = '('
3051 Need char = ')'
3052 (abc)
3053 0: (abc)
3054 1: abc
3055 (abc(def)xyz)
3056 0: (abc(def)xyz)
3057 1: xyz
3058 *** Failers
3059 No match
3060 ((()aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
3061 No match
3062
3063 /(abc){1,3}+/DZ
3064 ------------------------------------------------------------------
3065 Bra
3066 Once
3067 CBra 1
3068 abc
3069 Ket
3070 Brazero
3071 Bra
3072 CBra 1
3073 abc
3074 Ket
3075 Brazero
3076 CBra 1
3077 abc
3078 Ket
3079 Ket
3080 Ket
3081 Ket
3082 End
3083 ------------------------------------------------------------------
3084 Capturing subpattern count = 1
3085 No options
3086 First char = 'a'
3087 Need char = 'c'
3088
3089 /a+?+/I
3090 Failed: nothing to repeat at offset 3
3091
3092 /a{2,3}?+b/I
3093 Failed: nothing to repeat at offset 7
3094
3095 /(?U)a+?+/I
3096 Failed: nothing to repeat at offset 7
3097
3098 /a{2,3}?+b/IU
3099 Failed: nothing to repeat at offset 7
3100
3101 /x(?U)a++b/DZ
3102 ------------------------------------------------------------------
3103 Bra
3104 x
3105 a++
3106 b
3107 Ket
3108 End
3109 ------------------------------------------------------------------
3110 Capturing subpattern count = 0
3111 No options
3112 First char = 'x'
3113 Need char = 'b'
3114 xaaaab
3115 0: xaaaab
3116
3117 /(?U)xa++b/DZ
3118 ------------------------------------------------------------------
3119 Bra
3120 x
3121 a++
3122 b
3123 Ket
3124 End
3125 ------------------------------------------------------------------
3126 Capturing subpattern count = 0
3127 Options: ungreedy
3128 First char = 'x'
3129 Need char = 'b'
3130 xaaaab
3131 0: xaaaab
3132
3133 /^((a+)(?U)([ab]+)(?-U)([bc]+)(\w*))/DZ
3134 ------------------------------------------------------------------
3135 Bra
3136 ^
3137 CBra 1
3138 CBra 2
3139 a+
3140 Ket
3141 CBra 3
3142 [ab]+?
3143 Ket
3144 CBra 4
3145 [bc]+
3146 Ket
3147 CBra 5
3148 \w*
3149 Ket
3150 Ket
3151 Ket
3152 End
3153 ------------------------------------------------------------------
3154 Capturing subpattern count = 5
3155 Options: anchored
3156 No first char
3157 No need char
3158
3159 /^x(?U)a+b/DZ
3160 ------------------------------------------------------------------
3161 Bra
3162 ^
3163 x
3164 a++
3165 b
3166 Ket
3167 End
3168 ------------------------------------------------------------------
3169 Capturing subpattern count = 0
3170 Options: anchored
3171 No first char
3172 Need char = 'b'
3173
3174 /^x(?U)(a+)b/DZ
3175 ------------------------------------------------------------------
3176 Bra
3177 ^
3178 x
3179 CBra 1
3180 a+?
3181 Ket
3182 b
3183 Ket
3184 End
3185 ------------------------------------------------------------------
3186 Capturing subpattern count = 1
3187 Options: anchored
3188 No first char
3189 Need char = 'b'
3190
3191 /[.x.]/I
3192 Failed: POSIX collating elements are not supported at offset 0
3193
3194 /[=x=]/I
3195 Failed: POSIX collating elements are not supported at offset 0
3196
3197 /[:x:]/I
3198 Failed: POSIX named classes are supported only within a class at offset 0
3199
3200 /\l/I
3201 Failed: PCRE does not support \L, \l, \N, \U, or \u at offset 1
3202
3203 /\L/I
3204 Failed: PCRE does not support \L, \l, \N, \U, or \u at offset 1
3205
3206 /\N{name}/I
3207 Failed: PCRE does not support \L, \l, \N, \U, or \u at offset 1
3208
3209 /\u/I
3210 Failed: PCRE does not support \L, \l, \N, \U, or \u at offset 1
3211
3212 /\U/I
3213 Failed: PCRE does not support \L, \l, \N, \U, or \u at offset 1
3214
3215 /[/I
3216 Failed: missing terminating ] for character class at offset 1
3217
3218 /[a-/I
3219 Failed: missing terminating ] for character class at offset 3
3220
3221 /[[:space:]/I
3222 Failed: missing terminating ] for character class at offset 10
3223
3224 /[\s]/IDZ
3225 ------------------------------------------------------------------
3226 Bra
3227 [\x09\x0a\x0c\x0d ]
3228 Ket
3229 End
3230 ------------------------------------------------------------------
3231 Capturing subpattern count = 0
3232 No options
3233 No first char
3234 No need char
3235
3236 /[[:space:]]/IDZ
3237 ------------------------------------------------------------------
3238 Bra
3239 [\x09-\x0d ]
3240 Ket
3241 End
3242 ------------------------------------------------------------------
3243 Capturing subpattern count = 0
3244 No options
3245 No first char
3246 No need char
3247
3248 /[[:space:]abcde]/IDZ
3249 ------------------------------------------------------------------
3250 Bra
3251 [\x09-\x0d a-e]
3252 Ket
3253 End
3254 ------------------------------------------------------------------
3255 Capturing subpattern count = 0
3256 No options
3257 No first char
3258 No need char
3259
3260 /< (?: (?(R) \d++ | [^<>]*+) | (?R)) * >/Ix
3261 Capturing subpattern count = 0
3262 Options: extended
3263 First char = '<'
3264 Need char = '>'
3265 <>
3266 0: <>
3267 <abcd>
3268 0: <abcd>
3269 <abc <123> hij>
3270 0: <abc <123> hij>
3271 <abc <def> hij>
3272 0: <def>
3273 <abc<>def>
3274 0: <abc<>def>
3275 <abc<>
3276 0: <>
3277 *** Failers
3278 No match
3279 <abc
3280 No match
3281
3282 |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
3283 ------------------------------------------------------------------
3284 Bra
3285 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
3286 \b
3287 Ket
3288 End
3289 ------------------------------------------------------------------
3290 Capturing subpattern count = 0
3291 No options
3292 First char = '8'
3293 Need char = 'X'
3294
3295 |\$\<\.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
3296 ------------------------------------------------------------------
3297 Bra
3298 $<.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
3299 \b
3300 Ket
3301 End
3302 ------------------------------------------------------------------
3303 Capturing subpattern count = 0
3304 No options
3305 First char = '$'
3306 Need char = 'X'
3307
3308 /(.*)\d+\1/I
3309 Capturing subpattern count = 1
3310 Max back reference = 1
3311 No options
3312 No first char
3313 No need char
3314
3315 /(.*)\d+/I
3316 Capturing subpattern count = 1
3317 No options
3318 First char at start or follows newline
3319 No need char
3320
3321 /(.*)\d+\1/Is
3322 Capturing subpattern count = 1
3323 Max back reference = 1
3324 Options: dotall
3325 No first char
3326 No need char
3327
3328 /(.*)\d+/Is
3329 Capturing subpattern count = 1
3330 Options: anchored dotall
3331 No first char
3332 No need char
3333
3334 /(.*(xyz))\d+\2/I
3335 Capturing subpattern count = 2
3336 Max back reference = 2
3337 No options
3338 First char at start or follows newline
3339 Need char = 'z'
3340
3341 /((.*))\d+\1/I
3342 Capturing subpattern count = 2
3343 Max back reference = 1
3344 No options
3345 No first char
3346 No need char
3347 abc123bc
3348 0: bc123bc
3349 1: bc
3350 2: bc
3351
3352 /a[b]/I
3353 Capturing subpattern count = 0
3354 No options
3355 First char = 'a'
3356 Need char = 'b'
3357
3358 /(?=a).*/I
3359 Capturing subpattern count = 0
3360 No options
3361 First char = 'a'
3362 No need char
3363
3364 /(?=abc).xyz/IiI
3365 Capturing subpattern count = 0
3366 Options: caseless
3367 First char = 'a' (caseless)
3368 Need char = 'z' (caseless)
3369
3370 /(?=abc)(?i).xyz/I
3371 Capturing subpattern count = 0
3372 No options
3373 First char = 'a'
3374 Need char = 'z' (caseless)
3375
3376 /(?=a)(?=b)/I
3377 Capturing subpattern count = 0
3378 No options
3379 First char = 'a'
3380 No need char
3381
3382 /(?=.)a/I
3383 Capturing subpattern count = 0
3384 No options
3385 First char = 'a'
3386 No need char
3387
3388 /((?=abcda)a)/I
3389 Capturing subpattern count = 1
3390 No options
3391 First char = 'a'
3392 Need char = 'a'
3393
3394 /((?=abcda)ab)/I
3395 Capturing subpattern count = 1
3396 No options
3397 First char = 'a'
3398 Need char = 'b'
3399
3400 /()a/I
3401 Capturing subpattern count = 1
3402 No options
3403 No first char
3404 Need char = 'a'
3405
3406 /(?(1)ab|ac)(.)/I
3407 Capturing subpattern count = 1
3408 No options
3409 First char = 'a'
3410 No need char
3411
3412 /(?(1)abz|acz)(.)/I
3413 Capturing subpattern count = 1
3414 No options
3415 First char = 'a'
3416 Need char = 'z'
3417
3418 /(?(1)abz)(.)/I
3419 Capturing subpattern count = 1
3420 No options
3421 No first char
3422 No need char
3423
3424 /(?(1)abz)(1)23/I
3425 Capturing subpattern count = 1
3426 No options
3427 No first char
3428 Need char = '3'
3429
3430 /(a)+/I
3431 Capturing subpattern count = 1
3432 No options
3433 First char = 'a'
3434 No need char
3435
3436 /(a){2,3}/I
3437 Capturing subpattern count = 1
3438 No options
3439 First char = 'a'
3440 Need char = 'a'
3441
3442 /(a)*/I
3443 Capturing subpattern count = 1
3444 No options
3445 No first char
3446 No need char
3447
3448 /[a]/I
3449 Capturing subpattern count = 0
3450 No options
3451 First char = 'a'
3452 No need char
3453
3454 /[ab]/I
3455 Capturing subpattern count = 0
3456 No options
3457 No first char
3458 No need char
3459
3460 /[ab]/IS
3461 Capturing subpattern count = 0
3462 No options
3463 No first char
3464 No need char
3465 Subject length lower bound = 1
3466 Starting byte set: a b
3467
3468 /[^a]/I
3469 Capturing subpattern count = 0
3470 No options
3471 No first char
3472 No need char
3473
3474 /\d456/I
3475 Capturing subpattern count = 0
3476 No options
3477 No first char
3478 Need char = '6'
3479
3480 /\d456/IS
3481 Capturing subpattern count = 0
3482 No options
3483 No first char
3484 Need char = '6'
3485 Subject length lower bound = 4
3486 Starting byte set: 0 1 2 3 4 5 6 7 8 9
3487
3488 /a^b/I
3489 Capturing subpattern count = 0
3490 No options
3491 First char = 'a'
3492 Need char = 'b'
3493
3494 /^a/Im
3495 Capturing subpattern count = 0
3496 Options: multiline
3497 First char at start or follows newline
3498 Need char = 'a'
3499 abcde
3500 0: a
3501 xy\nabc
3502 0: a
3503 *** Failers
3504 No match
3505 xyabc
3506 No match
3507
3508 /c|abc/I
3509 Capturing subpattern count = 0
3510 No options
3511 No first char
3512 Need char = 'c'
3513
3514 /(?i)[ab]/IS
3515 Capturing subpattern count = 0
3516 Options: caseless
3517 No first char
3518 No need char
3519 Subject length lower bound = 1
3520 Starting byte set: A B a b
3521
3522 /[ab](?i)cd/IS
3523 Capturing subpattern count = 0
3524 No options
3525 No first char
3526 Need char = 'd' (caseless)
3527 Subject length lower bound = 3
3528 Starting byte set: a b
3529
3530 /abc(?C)def/I
3531 Capturing subpattern count = 0
3532 No options
3533 First char = 'a'
3534 Need char = 'f'
3535 abcdef
3536 --->abcdef
3537 0 ^ ^ d
3538 0: abcdef
3539 1234abcdef
3540 --->1234abcdef
3541 0 ^ ^ d
3542 0: abcdef
3543 *** Failers
3544 No match
3545 abcxyz
3546 No match
3547 abcxyzf
3548 --->abcxyzf
3549 0 ^ ^ d
3550 No match
3551
3552 /abc(?C)de(?C1)f/I
3553 Capturing subpattern count = 0
3554 No options
3555 First char = 'a'
3556 Need char = 'f'
3557 123abcdef
3558 --->123abcdef
3559 0 ^ ^ d
3560 1 ^ ^ f
3561 0: abcdef
3562
3563 /(?C1)\dabc(?C2)def/I
3564 Capturing subpattern count = 0
3565 No options
3566 No first char
3567 Need char = 'f'
3568 1234abcdef
3569 --->1234abcdef
3570 1 ^ \d
3571 1 ^ \d
3572 1 ^ \d
3573 1 ^ \d
3574 2 ^ ^ d
3575 0: 4abcdef
3576 *** Failers
3577 No match
3578 abcdef
3579 --->abcdef
3580 1 ^ \d
3581 1 ^ \d
3582 1 ^ \d
3583 1 ^ \d
3584 1 ^ \d
3585 1 ^ \d
3586 No match
3587
3588 /(?C255)ab/I
3589 Capturing subpattern count = 0
3590 No options
3591 First char = 'a'
3592 Need char = 'b'
3593
3594 /(?C256)ab/I
3595 Failed: number after (?C is > 255 at offset 6
3596
3597 /(?Cab)xx/I
3598 Failed: closing ) for (?C expected at offset 3
3599
3600 /(?C12vr)x/I
3601 Failed: closing ) for (?C expected at offset 5
3602
3603 /abc(?C)def/I
3604 Capturing subpattern count = 0
3605 No options
3606 First char = 'a'
3607 Need char = 'f'
3608 *** Failers
3609 No match
3610 \x83\x0\x61bcdef
3611 --->\x83\x00abcdef
3612 0 ^ ^ d
3613 0: abcdef
3614
3615 /(abc)(?C)de(?C1)f/I
3616 Capturing subpattern count = 1
3617 No options
3618 First char = 'a'
3619 Need char = 'f'
3620 123abcdef
3621 --->123abcdef
3622 0 ^ ^ d
3623 1 ^ ^ f
3624 0: abcdef
3625 1: abc
3626 123abcdef\C+
3627 Callout 0: last capture = 1
3628 0: <unset>
3629 1: abc
3630 --->123abcdef
3631 ^ ^ d
3632 Callout 1: last capture = 1
3633 0: <unset>
3634 1: abc
3635 --->123abcdef
3636 ^ ^ f
3637 0: abcdef
3638 1: abc
3639 123abcdef\C-
3640 0: abcdef
3641 1: abc
3642 *** Failers
3643 No match
3644 123abcdef\C!1
3645 --->123abcdef
3646 0 ^ ^ d
3647 1 ^ ^ f
3648 No match
3649
3650 /(?C0)(abc(?C1))*/I
3651 Capturing subpattern count = 1
3652 No options
3653 No first char
3654 No need char
3655 abcabcabc
3656 --->abcabcabc
3657 0 ^ (abc(?C1))*
3658 1 ^ ^ )
3659 1 ^ ^ )
3660 1 ^ ^ )
3661 0: abcabcabc
3662 1: abc
3663 abcabc\C!1!3
3664 --->abcabc
3665 0 ^ (abc(?C1))*
3666 1 ^ ^ )
3667 1 ^ ^ )
3668 0: abcabc
3669 1: abc
3670 *** Failers
3671 --->*** Failers
3672 0 ^ (abc(?C1))*
3673 0:
3674 abcabcabc\C!1!3
3675 --->abcabcabc
3676 0 ^ (abc(?C1))*
3677 1 ^ ^ )
3678 1 ^ ^ )
3679 1 ^ ^ )
3680 0: abcabc
3681 1: abc
3682
3683 /(\d{3}(?C))*/I
3684 Capturing subpattern count = 1
3685 No options
3686 No first char
3687 No need char
3688 123\C+
3689 Callout 0: last capture = -1
3690 0: <unset>
3691 --->123
3692 ^ ^ )
3693 0: 123
3694 1: 123
3695 123456\C+
3696 Callout 0: last capture = -1
3697 0: <unset>
3698 --->123456
3699 ^ ^ )
3700 Callout 0: last capture = 1
3701 0: <unset>
3702 1: 123
3703 --->123456
3704 ^ ^ )
3705 0: 123456
3706 1: 456
3707 123456789\C+
3708 Callout 0: last capture = -1
3709 0: <unset>
3710 --->123456789
3711 ^ ^ )
3712 Callout 0: last capture = 1
3713 0: <unset>
3714 1: 123
3715 --->123456789
3716 ^ ^ )
3717 Callout 0: last capture = 1
3718 0: <unset>
3719 1: 456
3720 --->123456789
3721 ^ ^ )
3722 0: 123456789
3723 1: 789
3724
3725 /((xyz)(?C)p|(?C1)xyzabc)/I
3726 Capturing subpattern count = 2
3727 No options
3728 First char = 'x'
3729 No need char
3730 xyzabc\C+
3731 Callout 0: last capture = 2
3732 0: <unset>
3733 1: <unset>
3734 2: xyz
3735 --->xyzabc
3736 ^ ^ p
3737 Callout 1: last capture = -1
3738 0: <unset>
3739 --->xyzabc
3740 ^ x
3741 0: xyzabc
3742 1: xyzabc
3743
3744 /(X)((xyz)(?C)p|(?C1)xyzabc)/I
3745 Capturing subpattern count = 3
3746 No options
3747 First char = 'X'
3748 Need char = 'x'
3749 Xxyzabc\C+
3750 Callout 0: last capture = 3
3751 0: <unset>
3752 1: X
3753 2: <unset>
3754 3: xyz
3755 --->Xxyzabc
3756 ^ ^ p
3757 Callout 1: last capture = 1
3758 0: <unset>
3759 1: X
3760 --->Xxyzabc
3761 ^^ x
3762 0: Xxyzabc
3763 1: X
3764 2: xyzabc
3765
3766 /(?=(abc))(?C)abcdef/I
3767 Capturing subpattern count = 1
3768 No options
3769 First char = 'a'
3770 Need char = 'f'
3771 abcdef\C+
3772 Callout 0: last capture = 1
3773 0: <unset>
3774 1: abc
3775 --->abcdef
3776 ^ a
3777 0: abcdef
3778 1: abc
3779
3780 /(?!(abc)(?C1)d)(?C2)abcxyz/I
3781 Capturing subpattern count = 1
3782 No options
3783 First char = 'a'
3784 Need char = 'z'
3785 abcxyz\C+
3786 Callout 1: last capture = 1
3787 0: <unset>
3788 1: abc
3789 --->abcxyz
3790 ^ ^ d
3791 Callout 2: last capture = -1
3792 0: <unset>
3793 --->abcxyz
3794 ^ a
3795 0: abcxyz
3796
3797 /(?<=(abc)(?C))xyz/I
3798 Capturing subpattern count = 1
3799 No options
3800 First char = 'x'
3801 Need char = 'z'
3802 abcxyz\C+
3803 Callout 0: last capture = 1
3804 0: <unset>
3805 1: abc
3806 --->abcxyz
3807 ^ )
3808 0: xyz
3809 1: abc
3810
3811 /a(b+)(c*)(?C1)/I
3812 Capturing subpattern count = 2
3813 No options
3814 First char = 'a'
3815 Need char = 'b'
3816 abbbbbccc\C*1
3817 --->abbbbbccc
3818 1 ^ ^
3819 Callout data = 1
3820 1 ^ ^
3821 Callout data = 1
3822 1 ^ ^
3823 Callout data = 1
3824 1 ^ ^
3825 Callout data = 1
3826 1 ^ ^
3827 Callout data = 1
3828 1 ^ ^
3829 Callout data = 1
3830 1 ^ ^
3831 Callout data = 1
3832 1 ^ ^
3833 Callout data = 1
3834 No match
3835
3836 /a(b+?)(c*?)(?C1)/I
3837 Capturing subpattern count = 2
3838 No options
3839 First char = 'a'
3840 Need char = 'b'
3841 abbbbbccc\C*1
3842 --->abbbbbccc
3843 1 ^ ^
3844 Callout data = 1
3845 1 ^ ^
3846 Callout data = 1
3847 1 ^ ^
3848 Callout data = 1
3849 1 ^ ^
3850 Callout data = 1
3851 1 ^ ^
3852 Callout data = 1
3853 1 ^ ^
3854 Callout data = 1
3855 1 ^ ^
3856 Callout data = 1
3857 1 ^ ^
3858 Callout data = 1
3859 No match
3860
3861 /(?C)abc/I
3862 Capturing subpattern count = 0
3863 No options
3864 First char = 'a'
3865 Need char = 'c'
3866
3867 /(?C)^abc/I
3868 Capturing subpattern count = 0
3869 Options: anchored
3870 No first char
3871 No need char
3872
3873 /(?C)a|b/IS
3874 Capturing subpattern count = 0
3875 No options
3876 No first char
3877 No need char
3878 Subject length lower bound = 1
3879 Starting byte set: a b
3880
3881 /(?R)/I
3882 Failed: recursive call could loop indefinitely at offset 3
3883
3884 /(a|(?R))/I
3885 Failed: recursive call could loop indefinitely at offset 6
3886
3887 /(ab|(bc|(de|(?R))))/I
3888 Failed: recursive call could loop indefinitely at offset 15
3889
3890 /x(ab|(bc|(de|(?R))))/I
3891 Capturing subpattern count = 3
3892 No options
3893 First char = 'x'
3894 No need char
3895 xab
3896 0: xab
3897 1: ab
3898 xbc
3899 0: xbc
3900 1: bc
3901 2: bc
3902 xde
3903 0: xde
3904 1: de
3905 2: de
3906 3: de
3907 xxab
3908 0: xxab
3909 1: xab
3910 2: xab
3911 3: xab
3912 xxxab
3913 0: xxxab
3914 1: xxab
3915 2: xxab
3916 3: xxab
3917 *** Failers
3918 No match
3919 xyab
3920 No match
3921
3922 /(ab|(bc|(de|(?1))))/I
3923 Failed: recursive call could loop indefinitely at offset 15
3924
3925 /x(ab|(bc|(de|(?1)x)x)x)/I
3926 Failed: recursive call could loop indefinitely at offset 16
3927
3928 /^([^()]|\((?1)*\))*$/I
3929 Capturing subpattern count = 1
3930 Options: anchored
3931 No first char
3932 No need char
3933 abc
3934 0: abc
3935 1: c
3936 a(b)c
3937 0: a(b)c
3938 1: c
3939 a(b(c))d
3940 0: a(b(c))d
3941 1: d
3942 *** Failers)
3943 No match
3944 a(b(c)d
3945 No match
3946
3947 /^>abc>([^()]|\((?1)*\))*<xyz<$/I
3948 Capturing subpattern count = 1
3949 Options: anchored
3950 No first char
3951 Need char = '<'
3952 >abc>123<xyz<
3953 0: >abc>123<xyz<
3954 1: 3
3955 >abc>1(2)3<xyz<
3956 0: >abc>1(2)3<xyz<
3957 1: 3
3958 >abc>(1(2)3)<xyz<
3959 0: >abc>(1(2)3)<xyz<
3960 1: (1(2)3)
3961
3962 /(a(?1)b)/DZ
3963 ------------------------------------------------------------------
3964 Bra
3965 CBra 1
3966 a
3967 Once
3968 Recurse
3969 Ket
3970 b
3971 Ket
3972 Ket
3973 End
3974 ------------------------------------------------------------------
3975 Capturing subpattern count = 1
3976 No options
3977 First char = 'a'
3978 Need char = 'b'
3979
3980 /(a(?1)+b)/DZ
3981 ------------------------------------------------------------------
3982 Bra
3983 CBra 1
3984 a
3985 Once
3986 Recurse
3987 KetRmax
3988 b
3989 Ket
3990 Ket
3991 End
3992 ------------------------------------------------------------------
3993 Capturing subpattern count = 1
3994 No options
3995 First char = 'a'
3996 Need char = 'b'
3997
3998 /^(\d+|\((?1)([+*-])(?1)\)|-(?1))$/I
3999 Capturing subpattern count = 2
4000 Options: anchored
4001 No first char
4002 No need char
4003 12
4004 0: 12
4005 1: 12
4006 (((2+2)*-3)-7)
4007 0: (((2+2)*-3)-7)
4008 1: (((2+2)*-3)-7)
4009 2: -
4010 -12
4011 0: -12
4012 1: -12
4013 *** Failers
4014 No match
4015 ((2+2)*-3)-7)
4016 No match
4017
4018 /^(x(y|(?1){2})z)/I
4019 Capturing subpattern count = 2
4020 Options: anchored
4021 No first char
4022 No need char
4023 xyz
4024 0: xyz
4025 1: xyz
4026 2: y
4027 xxyzxyzz
4028 0: xxyzxyzz
4029 1: xxyzxyzz
4030 2: xyzxyz
4031 *** Failers
4032 No match
4033 xxyzz
4034 No match
4035 xxyzxyzxyzz
4036 No match
4037
4038 /((< (?: (?(R) \d++ | [^<>]*+) | (?2)) * >))/Ix
4039 Capturing subpattern count = 2
4040 Options: extended
4041 First char = '<'
4042 Need char = '>'
4043 <>
4044 0: <>
4045 1: <>
4046 2: <>
4047 <abcd>
4048 0: <abcd>
4049 1: <abcd>
4050 2: <abcd>
4051 <abc <123> hij>
4052 0: <abc <123> hij>
4053 1: <abc <123> hij>
4054 2: <abc <123> hij>
4055 <abc <def> hij>
4056 0: <def>
4057 1: <def>
4058 2: <def>
4059 <abc<>def>
4060 0: <abc<>def>
4061 1: <abc<>def>
4062 2: <abc<>def>
4063 <abc<>
4064 0: <>
4065 1: <>
4066 2: <>
4067 *** Failers
4068 No match
4069 <abc
4070 No match
4071
4072 /(?1)/I
4073 Failed: reference to non-existent subpattern at offset 3
4074
4075 /((?2)(abc)/I
4076 Failed: missing ) at offset 10
4077
4078 /^(abc)def(?1)/I
4079 Capturing subpattern count = 1
4080 Options: anchored
4081 No first char
4082 No need char
4083 abcdefabc
4084 0: abcdefabc
4085 1: abc
4086
4087 /^(a|b|c)=(?1)+/I
4088 Capturing subpattern count = 1
4089 Options: anchored
4090 No first char
4091 No need char
4092 a=a
4093 0: a=a
4094 1: a
4095 a=b
4096 0: a=b
4097 1: a
4098 a=bc
4099 0: a=bc
4100 1: a
4101
4102 /^(a|b|c)=((?1))+/I
4103 Capturing subpattern count = 2
4104 Options: anchored
4105 No first char
4106 No need char
4107 a=a
4108 0: a=a
4109 1: a
4110 2: a
4111 a=b
4112 0: a=b
4113 1: a
4114 2: b
4115 a=bc
4116 0: a=bc
4117 1: a
4118 2: c
4119
4120 /a(?P<name1>b|c)d(?P<longername2>e)/DZ
4121 ------------------------------------------------------------------
4122 Bra
4123 a
4124 CBra 1
4125 b
4126 Alt
4127 c
4128 Ket
4129 d
4130 CBra 2
4131 e
4132 Ket
4133 Ket
4134 End
4135 ------------------------------------------------------------------
4136 Capturing subpattern count = 2
4137 Named capturing subpatterns:
4138 longername2 2
4139 name1 1
4140 No options
4141 First char = 'a'
4142 Need char = 'e'
4143 abde
4144 0: abde
4145 1: b
4146 2: e
4147 acde
4148 0: acde
4149 1: c
4150 2: e
4151
4152 /(?:a(?P<c>c(?P<d>d)))(?P<a>a)/DZ
4153 ------------------------------------------------------------------
4154 Bra
4155 Bra
4156 a
4157 CBra 1
4158 c
4159 CBra 2
4160 d
4161 Ket
4162 Ket
4163 Ket
4164 CBra 3
4165 a
4166 Ket
4167 Ket
4168 End
4169 ------------------------------------------------------------------
4170 Capturing subpattern count = 3
4171 Named capturing subpatterns:
4172 a 3
4173 c 1
4174 d 2
4175 No options
4176 First char = 'a'
4177 Need char = 'a'
4178
4179 /(?P<a>a)...(?P=a)bbb(?P>a)d/DZ
4180 ------------------------------------------------------------------
4181 Bra
4182 CBra 1
4183 a
4184 Ket
4185 Any
4186 Any
4187 Any
4188 \1
4189 bbb
4190 Once
4191 Recurse
4192 Ket
4193 d
4194 Ket
4195 End
4196 ------------------------------------------------------------------
4197 Capturing subpattern count = 1
4198 Max back reference = 1
4199 Named capturing subpatterns:
4200 a 1
4201 No options
4202 First char = 'a'
4203 Need char = 'd'
4204
4205 /^\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
4206 Capturing subpattern count = 4
4207 Max back reference = 4
4208 Named capturing subpatterns:
4209 four 4
4210 one 1
4211 three 3
4212 two 2
4213 Options: anchored caseless
4214 No first char
4215 No need char
4216 1221
4217 0: 1221
4218 1: 1221
4219 2: 1
4220 Satan, oscillate my metallic sonatas!
4221 0: Satan, oscillate my metallic sonatas!
4222 1: <unset>
4223 2: <unset>
4224 3: Satan, oscillate my metallic sonatas
4225 4: S
4226 A man, a plan, a canal: Panama!
4227 0: A man, a plan, a canal: Panama!
4228 1: <unset>
4229 2: <unset>
4230 3: A man, a plan, a canal: Panama
4231 4: A
4232 Able was I ere I saw Elba.
4233 0: Able was I ere I saw Elba.
4234 1: <unset>
4235 2: <unset>
4236 3: Able was I ere I saw Elba
4237 4: A
4238 *** Failers
4239 No match
4240 The quick brown fox
4241 No match
4242
4243 /((?(R)a|b))\1(?1)?/I
4244 Capturing subpattern count = 1
4245 Max back reference = 1
4246 No options
4247 No first char
4248 No need char
4249 bb
4250 0: bb
4251 1: b
4252 bbaa
4253 0: bba
4254 1: b
4255
4256 /(.*)a/Is
4257 Capturing subpattern count = 1
4258 Options: anchored dotall
4259 No first char
4260 Need char = 'a'
4261
4262 /(.*)a\1/Is
4263 Capturing subpattern count = 1
4264 Max back reference = 1
4265 Options: dotall
4266 No first char
4267 Need char = 'a'
4268
4269 /(.*)a(b)\2/Is
4270 Capturing subpattern count = 2
4271 Max back reference = 2
4272 Options: anchored dotall
4273 No first char
4274 Need char = 'b'
4275
4276 /((.*)a|(.*)b)z/Is
4277 Capturing subpattern count = 3
4278 Options: anchored dotall
4279 No first char
4280 Need char = 'z'
4281
4282 /((.*)a|(.*)b)z\1/Is
4283 Capturing subpattern count = 3
4284 Max back reference = 1
4285 Options: dotall
4286 No first char
4287 Need char = 'z'
4288
4289 /((.*)a|(.*)b)z\2/Is
4290 Capturing subpattern count = 3
4291 Max back reference = 2
4292 Options: dotall
4293 No first char
4294 Need char = 'z'
4295
4296 /((.*)a|(.*)b)z\3/Is
4297 Capturing subpattern count = 3
4298 Max back reference = 3
4299 Options: dotall
4300 No first char
4301 Need char = 'z'
4302
4303 /((.*)a|^(.*)b)z\3/Is
4304 Capturing subpattern count = 3
4305 Max back reference = 3
4306 Options: anchored dotall
4307 No first char
4308 Need char = 'z'
4309
4310 /(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a/Is
4311 Capturing subpattern count = 31
4312 Options: anchored dotall
4313 No first char
4314 No need char
4315
4316 /(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a\31/Is
4317 Capturing subpattern count = 31
4318 Max back reference = 31
4319 Options: dotall
4320 No first char
4321 No need char
4322
4323 /(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a\32/Is
4324 Capturing subpattern count = 32
4325 Max back reference = 32
4326 Options: dotall
4327 No first char
4328 No need char
4329
4330 /(a)(bc)/INDZ
4331 ------------------------------------------------------------------
4332 Bra
4333 Bra
4334 a
4335 Ket
4336 Bra
4337 bc
4338 Ket
4339 Ket
4340 End
4341 ------------------------------------------------------------------
4342 Capturing subpattern count = 0
4343 Options: no_auto_capture
4344 First char = 'a'
4345 Need char = 'c'
4346 abc
4347 0: abc
4348
4349 /(?P<one>a)(bc)/INDZ
4350 ------------------------------------------------------------------
4351 Bra
4352 CBra 1
4353 a
4354 Ket
4355 Bra
4356 bc
4357 Ket
4358 Ket
4359 End
4360 ------------------------------------------------------------------
4361 Capturing subpattern count = 1
4362 Named capturing subpatterns:
4363 one 1
4364 Options: no_auto_capture
4365 First char = 'a'
4366 Need char = 'c'
4367 abc
4368 0: abc
4369 1: a
4370
4371 /(a)(?P<named>bc)/INDZ
4372 ------------------------------------------------------------------
4373 Bra
4374 Bra
4375 a
4376 Ket
4377 CBra 1
4378 bc
4379 Ket
4380 Ket
4381 End
4382 ------------------------------------------------------------------
4383 Capturing subpattern count = 1
4384 Named capturing subpatterns:
4385 named 1
4386 Options: no_auto_capture
4387 First char = 'a'
4388 Need char = 'c'
4389
4390 /(a+)*zz/I
4391 Capturing subpattern count = 1
4392 No options
4393 No first char
4394 Need char = 'z'
4395 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaazzbbbbbb\M
4396 Minimum match() limit = 8
4397 Minimum match() recursion limit = 6
4398 0: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaazz
4399 1: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
4400 aaaaaaaaaaaaaz\M
4401 Minimum match() limit = 32768
4402 Minimum match() recursion limit = 42
4403 No match
4404
4405 /(aaa(?C1)bbb|ab)/I
4406 Capturing subpattern count = 1
4407 No options
4408 First char = 'a'
4409 Need char = 'b'
4410 aaabbb
4411 --->aaabbb
4412 1 ^ ^ b
4413 0: aaabbb
4414 1: aaabbb
4415 aaabbb\C*0
4416 --->aaabbb
4417 1 ^ ^ b
4418 0: aaabbb
4419 1: aaabbb
4420 aaabbb\C*1
4421 --->aaabbb
4422 1 ^ ^ b
4423 Callout data = 1
4424 0: ab
4425 1: ab
4426 aaabbb\C*-1
4427 --->aaabbb
4428 1 ^ ^ b
4429 Callout data = -1
4430 No match
4431
4432 /ab(?P<one>cd)ef(?P<two>gh)/I
4433 Capturing subpattern count = 2
4434 Named capturing subpatterns:
4435 one 1
4436 two 2
4437 No options
4438 First char = 'a'
4439 Need char = 'h'
4440 abcdefgh
4441 0: abcdefgh
4442 1: cd
4443 2: gh
4444 abcdefgh\C1\Gtwo
4445 0: abcdefgh
4446 1: cd
4447 2: gh
4448 1C cd (2)
4449 G gh (2) two
4450 abcdefgh\Cone\Ctwo
4451 0: abcdefgh
4452 1: cd
4453 2: gh
4454 C cd (2) one
4455 C gh (2) two
4456 abcdefgh\Cthree
4457 no parentheses with name "three"
4458 0: abcdefgh
4459 1: cd
4460 2: gh
4461 copy substring three failed -7
4462
4463 /(?P<Tes>)(?P<Test>)/DZ
4464 ------------------------------------------------------------------
4465 Bra
4466 CBra 1
4467 Ket
4468 CBra 2
4469 Ket
4470 Ket
4471 End
4472 ------------------------------------------------------------------
4473 Capturing subpattern count = 2
4474 Named capturing subpatterns:
4475 Tes 1
4476 Test 2
4477 No options
4478 No first char
4479 No need char
4480
4481 /(?P<Test>)(?P<Tes>)/DZ
4482 ------------------------------------------------------------------
4483 Bra
4484 CBra 1
4485 Ket
4486 CBra 2
4487 Ket
4488 Ket
4489 End
4490 ------------------------------------------------------------------
4491 Capturing subpattern count = 2
4492 Named capturing subpatterns:
4493 Tes 2
4494 Test 1
4495 No options
4496 No first char
4497 No need char
4498
4499 /(?P<Z>zz)(?P<A>aa)/I
4500 Capturing subpattern count = 2
4501 Named capturing subpatterns:
4502 A 2
4503 Z 1
4504 No options
4505 First char = 'z'
4506 Need char = 'a'
4507 zzaa\CZ
4508 0: zzaa
4509 1: zz
4510 2: aa
4511 C zz (2) Z
4512 zzaa\CA
4513 0: zzaa
4514 1: zz
4515 2: aa
4516 C aa (2) A
4517
4518 /(?P<x>eks)(?P<x>eccs)/I
4519 Failed: two named subpatterns have the same name at offset 15
4520
4521 /(?P<abc>abc(?P<def>def)(?P<abc>xyz))/I
4522 Failed: two named subpatterns have the same name at offset 30
4523
4524 "\[((?P<elem>\d+)(,(?P>elem))*)\]"I
4525 Capturing subpattern count = 3
4526 Named capturing subpatterns:
4527 elem 2
4528 No options
4529 First char = '['
4530 Need char = ']'
4531 [10,20,30,5,5,4,4,2,43,23,4234]
4532 0: [10,20,30,5,5,4,4,2,43,23,4234]
4533 1: 10,20,30,5,5,4,4,2,43,23,4234
4534 2: 10
4535 3: ,4234
4536 *** Failers
4537 No match
4538 []
4539 No match
4540
4541 "\[((?P<elem>\d+)(,(?P>elem))*)?\]"I
4542 Capturing subpattern count = 3
4543 Named capturing subpatterns:
4544 elem 2
4545 No options
4546 First char = '['
4547 Need char = ']'
4548 [10,20,30,5,5,4,4,2,43,23,4234]
4549 0: [10,20,30,5,5,4,4,2,43,23,4234]
4550 1: 10,20,30,5,5,4,4,2,43,23,4234
4551 2: 10
4552 3: ,4234
4553 []
4554 0: []
4555
4556 /(a(b(?2)c))?/DZ
4557 ------------------------------------------------------------------
4558 Bra
4559 Brazero
4560 CBra 1
4561 a
4562 CBra 2
4563 b
4564 Once
4565 Recurse
4566 Ket
4567 c
4568 Ket
4569 Ket
4570 Ket
4571 End
4572 ------------------------------------------------------------------
4573 Capturing subpattern count = 2
4574 No options
4575 No first char
4576 No need char
4577
4578 /(a(b(?2)c))*/DZ
4579 ------------------------------------------------------------------
4580 Bra
4581 Brazero
4582 CBra 1
4583 a
4584 CBra 2
4585 b
4586 Once
4587 Recurse
4588 Ket
4589 c
4590 Ket
4591 KetRmax
4592 Ket
4593 End
4594 ------------------------------------------------------------------
4595 Capturing subpattern count = 2
4596 No options
4597 No first char
4598 No need char
4599
4600 /(a(b(?2)c)){0,2}/DZ
4601 ------------------------------------------------------------------
4602 Bra
4603 Brazero
4604 Bra
4605 CBra 1
4606 a
4607 CBra 2
4608 b
4609 Once
4610 Recurse
4611 Ket
4612 c
4613 Ket
4614 Ket
4615 Brazero
4616 CBra 1
4617 a
4618 CBra 2
4619 b
4620 Once
4621 Recurse
4622 Ket
4623 c
4624 Ket
4625 Ket
4626 Ket
4627 Ket
4628 End
4629 ------------------------------------------------------------------
4630 Capturing subpattern count = 2
4631 No options
4632 No first char
4633 No need char
4634
4635 /[ab]{1}+/DZ
4636 ------------------------------------------------------------------
4637 Bra
4638 Once
4639 [ab]{1,1}
4640 Ket
4641 Ket
4642 End
4643 ------------------------------------------------------------------
4644 Capturing subpattern count = 0
4645 No options
4646 No first char
4647 No need char
4648
4649 /((w\/|-|with)*(free|immediate)*.*?shipping\s*[!.-]*)/Ii
4650 Capturing subpattern count = 3
4651 Options: caseless
4652 No first char
4653 Need char = 'g' (caseless)
4654 Baby Bjorn Active Carrier - With free SHIPPING!!
4655 0: Baby Bjorn Active Carrier - With free SHIPPING!!
4656 1: Baby Bjorn Active Carrier - With free SHIPPING!!
4657
4658 /((w\/|-|with)*(free|immediate)*.*?shipping\s*[!.-]*)/IiS
4659 Capturing subpattern count = 3
4660 Options: caseless
4661 No first char
4662 Need char = 'g' (caseless)
4663 Subject length lower bound = 8
4664 No set of starting bytes
4665 Baby Bjorn Active Carrier - With free SHIPPING!!
4666 0: Baby Bjorn Active Carrier - With free SHIPPING!!
4667 1: Baby Bjorn Active Carrier - With free SHIPPING!!
4668
4669 /a*.*b/ISDZ
4670 ------------------------------------------------------------------
4671 Bra
4672 a*
4673 Any*
4674 b
4675 Ket
4676 End
4677 ------------------------------------------------------------------
4678 Capturing subpattern count = 0
4679 No options
4680 No first char
4681 Need char = 'b'
4682 Subject length lower bound = 1
4683 No set of starting bytes
4684
4685 /(a|b)*.?c/ISDZ
4686 ------------------------------------------------------------------
4687 Bra
4688 Brazero
4689 CBra 1
4690 a
4691 Alt
4692 b
4693 KetRmax
4694 Any?
4695 c
4696 Ket
4697 End
4698 ------------------------------------------------------------------
4699 Capturing subpattern count = 1
4700 No options
4701 No first char
4702 Need char = 'c'
4703 Subject length lower bound = 1
4704 No set of starting bytes
4705
4706 /abc(?C255)de(?C)f/DZ
4707 ------------------------------------------------------------------
4708 Bra
4709 abc
4710 Callout 255 10 1
4711 de
4712 Callout 0 16 1
4713 f
4714 Ket
4715 End
4716 ------------------------------------------------------------------
4717 Capturing subpattern count = 0
4718 No options
4719 First char = 'a'
4720 Need char = 'f'
4721
4722 /abcde/ICDZ
4723 ------------------------------------------------------------------
4724 Bra
4725 Callout 255 0 1
4726 a
4727 Callout 255 1 1
4728 b
4729 Callout 255 2 1
4730 c
4731 Callout 255 3 1
4732 d
4733 Callout 255 4 1
4734 e
4735 Callout 255 5 0
4736 Ket
4737 End
4738 ------------------------------------------------------------------
4739 Capturing subpattern count = 0
4740 Options:
4741 First char = 'a'
4742 Need char = 'e'
4743 abcde
4744 --->abcde
4745 +0 ^ a
4746 +1 ^^ b
4747 +2 ^ ^ c
4748 +3 ^ ^ d
4749 +4 ^ ^ e
4750 +5 ^ ^
4751 0: abcde
4752 abcdfe
4753 --->abcdfe
4754 +0 ^ a
4755 +1 ^^ b
4756 +2 ^ ^ c
4757 +3 ^ ^ d
4758 +4 ^ ^ e
4759 No match
4760
4761 /a*b/ICDZ
4762 ------------------------------------------------------------------
4763 Bra
4764 Callout 255 0 2
4765 a*+
4766 Callout 255 2 1
4767 b
4768 Callout 255 3 0
4769 Ket
4770 End
4771 ------------------------------------------------------------------
4772 Capturing subpattern count = 0
4773 Options:
4774 No first char
4775 Need char = 'b'
4776 ab
4777 --->ab
4778 +0 ^ a*
4779 +2 ^^ b
4780 +3 ^ ^
4781 0: ab
4782 aaaab
4783 --->aaaab
4784 +0 ^ a*
4785 +2 ^ ^ b
4786 +3 ^ ^
4787 0: aaaab
4788 aaaacb
4789 --->aaaacb
4790 +0 ^ a*
4791 +2 ^ ^ b
4792 +0 ^ a*
4793 +2 ^ ^ b
4794 +0 ^ a*
4795 +2 ^ ^ b
4796 +0 ^ a*
4797 +2 ^^ b
4798 +0 ^ a*
4799 +2 ^ b
4800 +0 ^ a*
4801 +2 ^ b
4802 +3 ^^
4803 0: b
4804
4805 /a+b/ICDZ
4806 ------------------------------------------------------------------
4807 Bra
4808 Callout 255 0 2
4809 a++
4810 Callout 255 2 1
4811 b
4812 Callout 255 3 0
4813 Ket
4814 End
4815 ------------------------------------------------------------------
4816 Capturing subpattern count = 0
4817 Options:
4818 First char = 'a'
4819 Need char = 'b'
4820 ab
4821 --->ab
4822 +0 ^ a+
4823 +2 ^^ b
4824 +3 ^ ^
4825 0: ab
4826 aaaab
4827 --->aaaab
4828 +0 ^ a+
4829 +2 ^ ^ b
4830 +3 ^ ^
4831 0: aaaab
4832 aaaacb
4833 --->aaaacb
4834 +0 ^ a+
4835 +2 ^ ^ b
4836 +0 ^ a+
4837 +2 ^ ^ b
4838 +0 ^ a+
4839 +2 ^ ^ b
4840 +0 ^ a+
4841 +2 ^^ b
4842 No match
4843
4844 /(abc|def)x/ICDZ
4845 ------------------------------------------------------------------
4846 Bra
4847 Callout 255 0 9
4848 CBra 1
4849 Callout 255 1 1
4850 a
4851 Callout 255 2 1
4852 b
4853 Callout 255 3 1
4854 c
4855 Callout 255 4 0
4856 Alt
4857 Callout 255 5 1
4858 d
4859 Callout 255 6 1
4860 e
4861 Callout 255 7 1
4862 f
4863 Callout 255 8 0
4864 Ket
4865 Callout 255 9 1
4866 x
4867 Callout 255 10 0
4868 Ket
4869 End
4870 ------------------------------------------------------------------
4871 Capturing subpattern count = 1
4872 Options:
4873 No first char
4874 Need char = 'x'
4875 abcx
4876 --->abcx
4877 +0 ^ (abc|def)
4878 +1 ^ a
4879 +2 ^^ b
4880 +3 ^ ^ c
4881 +4 ^ ^ |
4882 +9 ^ ^ x
4883 +10 ^ ^
4884 0: abcx
4885 1: abc
4886 defx
4887 --->defx
4888 +0 ^ (abc|def)
4889 +1 ^ a
4890 +5 ^ d
4891 +6 ^^ e
4892 +7 ^ ^ f
4893 +8 ^ ^ )
4894 +9 ^ ^ x
4895 +10 ^ ^
4896 0: defx
4897 1: def
4898 abcdefzx
4899 --->abcdefzx
4900 +0 ^ (abc|def)
4901 +1 ^ a
4902 +2 ^^ b
4903 +3 ^ ^ c
4904 +4 ^ ^ |
4905 +9 ^ ^ x
4906 +5 ^ d
4907 +0 ^ (abc|def)
4908 +1 ^ a
4909 +5 ^ d
4910 +0 ^ (abc|def)
4911 +1 ^ a
4912 +5 ^ d
4913 +0 ^ (abc|def)
4914 +1 ^ a
4915 +5 ^ d
4916 +6 ^^ e
4917 +7 ^ ^ f
4918 +8 ^ ^ )
4919 +9 ^ ^ x
4920 +0 ^ (abc|def)
4921 +1 ^ a
4922 +5 ^ d
4923 +0 ^ (abc|def)
4924 +1 ^ a
4925 +5 ^ d
4926 +0 ^ (abc|def)
4927 +1 ^ a
4928 +5 ^ d
4929 +0 ^ (abc|def)
4930 +1 ^ a
4931 +5 ^ d
4932 No match
4933
4934 /(ab|cd){3,4}/IC
4935 Capturing subpattern count = 1
4936 Options:
4937 No first char
4938 No need char
4939 ababab
4940 --->ababab
4941 +0 ^ (ab|cd){3,4}
4942 +1 ^ a
4943 +2 ^^ b
4944 +3 ^ ^ |
4945 +1 ^ ^ a
4946 +2 ^ ^ b
4947 +3 ^ ^ |
4948 +1 ^ ^ a
4949 +2 ^ ^ b
4950 +3 ^ ^ |
4951 +1 ^ ^ a
4952 +4 ^ ^ c
4953 +12 ^ ^
4954 0: ababab
4955 1: ab
4956 abcdabcd
4957 --->abcdabcd
4958 +0 ^ (ab|cd){3,4}
4959 +1 ^ a
4960 +2 ^^ b
4961 +3 ^ ^ |
4962 +1 ^ ^ a
4963 +4 ^ ^ c
4964 +5 ^ ^ d
4965 +6 ^ ^ )
4966 +1 ^ ^ a
4967 +2 ^ ^ b
4968 +3 ^ ^ |
4969 +1 ^ ^ a
4970 +4 ^ ^ c
4971 +5 ^ ^ d
4972 +6 ^ ^ )
4973 +12 ^ ^
4974 0: abcdabcd
4975 1: cd
4976 abcdcdcdcdcd
4977 --->abcdcdcdcdcd
4978 +0 ^ (ab|cd){3,4}
4979 +1 ^ a
4980 +2 ^^ b
4981 +3 ^ ^ |
4982 +1 ^ ^ a
4983 +4 ^ ^ c
4984 +5 ^ ^ d
4985 +6 ^ ^ )
4986 +1 ^ ^ a
4987 +4 ^ ^ c
4988 +5 ^ ^ d
4989 +6 ^ ^ )
4990 +1 ^ ^ a
4991 +4 ^ ^ c
4992 +5 ^ ^ d
4993 +6 ^ ^ )
4994 +12 ^ ^
4995 0: abcdcdcd
4996 1: cd
4997
4998 /([ab]{,4}c|xy)/ICDZ
4999 ------------------------------------------------------------------
5000 Bra
5001 Callout 255 0 14
5002 CBra 1
5003 Callout 255 1 4
5004 [ab]
5005 Callout 255 5 1
5006 {
5007 Callout 255 6 1
5008 ,
5009 Callout 255 7 1
5010 4
5011 Callout 255 8 1
5012 }
5013 Callout 255 9 1
5014 c
5015 Callout 255 10 0
5016 Alt
5017 Callout 255 11 1
5018 x
5019 Callout 255 12 1
5020 y
5021 Callout 255 13 0
5022 Ket
5023 Callout 255 14 0
5024 Ket
5025 End
5026 ------------------------------------------------------------------
5027 Capturing subpattern count = 1
5028 Options:
5029 No first char
5030 No need char
5031 Note: that { does NOT introduce a quantifier
5032 --->Note: that { does NOT introduce a quantifier
5033 +0 ^ ([ab]{,4}c|xy)
5034 +1 ^ [ab]
5035 +11 ^ x
5036 +0 ^ ([ab]{,4}c|xy)
5037 +1 ^ [ab]
5038 +11 ^ x
5039 +0 ^ ([ab]{,4}c|xy)
5040 +1 ^ [ab]
5041 +11 ^ x
5042 +0 ^ ([ab]{,4}c|xy)
5043 +1 ^ [ab]
5044 +11 ^ x
5045 +0 ^ ([ab]{,4}c|xy)
5046 +1 ^ [ab]
5047 +11 ^ x
5048 +0 ^ ([ab]{,4}c|xy)
5049 +1 ^ [ab]
5050 +11 ^ x
5051 +0 ^ ([ab]{,4}c|xy)
5052 +1 ^ [ab]
5053 +11 ^ x
5054 +0 ^ ([ab]{,4}c|xy)
5055 +1 ^ [ab]
5056 +11 ^ x
5057 +0 ^ ([ab]{,4}c|xy)
5058 +1 ^ [ab]
5059 +5 ^^ {
5060 +11 ^ x
5061 +0 ^ ([ab]{,4}c|xy)
5062 +1 ^ [ab]
5063 +11 ^ x
5064 +0 ^ ([ab]{,4}c|xy)
5065 +1 ^ [ab]
5066 +11 ^ x
5067 +0 ^ ([ab]{,4}c|xy)
5068 +1 ^ [ab]
5069 +11 ^ x
5070 +0 ^ ([ab]{,4}c|xy)
5071 +1 ^ [ab]
5072 +11 ^ x
5073 +0 ^ ([ab]{,4}c|xy)
5074 +1 ^ [ab]
5075 +11 ^ x
5076 +0 ^ ([ab]{,4}c|xy)
5077 +1 ^ [ab]
5078 +11 ^ x
5079 +0 ^ ([ab]{,4}c|xy)
5080 +1 ^ [ab]
5081 +11 ^ x
5082 +0 ^ ([ab]{,4}c|xy)
5083 +1 ^ [ab]
5084 +11 ^ x
5085 +0 ^ ([ab]{,4}c|xy)
5086 +1 ^ [ab]
5087 +11 ^ x
5088 +0 ^ ([ab]{,4}c|xy)
5089 +1 ^ [ab]
5090 +11 ^ x
5091 +0 ^ ([ab]{,4}c|xy)
5092 +1 ^ [ab]
5093 +11 ^ x
5094 +0 ^ ([ab]{,4}c|xy)
5095 +1 ^ [ab]
5096 +11 ^ x
5097 +0 ^ ([ab]{,4}c|xy)
5098 +1 ^ [ab]
5099 +11 ^ x
5100 +0 ^ ([ab]{,4}c|xy)
5101 +1 ^ [ab]
5102 +11 ^ x
5103 +0 ^ ([ab]{,4}c|xy)
5104 +1 ^ [ab]
5105 +11 ^ x
5106 +0 ^ ([ab]{,4}c|xy)
5107 +1 ^ [ab]
5108 +11 ^ x
5109 +0 ^ ([ab]{,4}c|xy)
5110 +1 ^ [ab]
5111 +11 ^ x
5112 +0 ^ ([ab]{,4}c|xy)
5113 +1 ^ [ab]
5114 +11 ^ x
5115 +0 ^ ([ab]{,4}c|xy)
5116 +1 ^ [ab]
5117 +11 ^ x
5118 +0 ^ ([ab]{,4}c|xy)
5119 +1 ^ [ab]
5120 +11 ^ x
5121 +0 ^ ([ab]{,4}c|xy)
5122 +1 ^ [ab]
5123 +11 ^ x
5124 +0 ^ ([ab]{,4}c|xy)
5125 +1 ^ [ab]
5126 +11 ^ x
5127 +0 ^ ([ab]{,4}c|xy)
5128 +1 ^ [ab]
5129 +11 ^ x
5130 +0 ^ ([ab]{,4}c|xy)
5131 +1 ^ [ab]
5132 +5 ^^ {
5133 +11 ^ x
5134 +0 ^ ([ab]{,4}c|xy)
5135 +1 ^ [ab]
5136 +11 ^ x
5137 +0 ^ ([ab]{,4}c|xy)
5138 +1 ^ [ab]
5139 +11 ^ x
5140 +0 ^ ([ab]{,4}c|xy)
5141 +1 ^ [ab]
5142 +11 ^ x
5143 +0 ^ ([ab]{,4}c|xy)
5144 +1 ^ [ab]
5145 +5 ^^ {
5146 +11 ^ x
5147 +0 ^ ([ab]{,4}c|xy)
5148 +1 ^ [ab]
5149 +11 ^ x
5150 +0 ^ ([ab]{,4}c|xy)
5151 +1 ^ [ab]
5152 +11 ^ x
5153 +0 ^ ([ab]{,4}c|xy)
5154 +1 ^ [ab]
5155 +11 ^ x
5156 +0 ^ ([ab]{,4}c|xy)
5157 +1 ^ [ab]
5158 +11 ^ x
5159 +0 ^ ([ab]{,4}c|xy)
5160 +1 ^ [ab]
5161 +11 ^ x
5162 +0 ^ ([ab]{,4}c|xy)
5163 +1 ^ [ab]
5164 +11 ^ x
5165 +0 ^ ([ab]{,4}c|xy)
5166 +1 ^ [ab]
5167 +11 ^ x
5168 +0 ^ ([ab]{,4}c|xy)
5169 +1 ^ [ab]
5170 +11 ^ x
5171 No match
5172
5173 /([ab]{1,4}c|xy){4,5}?123/ICDZ
5174 ------------------------------------------------------------------
5175 Bra
5176 Callout 255 0 21
5177 CBra 1
5178 Callout 255 1 9
5179 [ab]{1,4}
5180 Callout 255 10 1
5181 c
5182 Callout 255 11 0
5183 Alt
5184 Callout 255 12 1
5185 x
5186 Callout 255 13 1
5187 y
5188 Callout 255 14 0
5189 Ket
5190 CBra 1
5191 Callout 255 1 9
5192 [ab]{1,4}
5193 Callout 255 10 1
5194 c
5195 Callout 255 11 0
5196 Alt
5197 Callout 255 12 1
5198 x
5199 Callout 255 13 1
5200 y
5201 Callout 255 14 0
5202 Ket
5203 CBra 1
5204 Callout 255 1 9
5205 [ab]{1,4}
5206 Callout 255 10 1
5207 c
5208 Callout 255 11 0
5209 Alt
5210 Callout 255 12 1
5211 x
5212 Callout 255 13 1
5213 y
5214 Callout 255 14 0
5215 Ket
5216 CBra 1
5217 Callout 255 1 9
5218 [ab]{1,4}
5219 Callout 255 10 1
5220 c
5221 Callout 255 11 0
5222 Alt
5223 Callout 255 12 1
5224 x
5225 Callout 255 13 1
5226 y
5227 Callout 255 14 0
5228 Ket
5229 Braminzero
5230 CBra 1
5231 Callout 255 1 9
5232 [ab]{1,4}
5233 Callout 255 10 1
5234 c
5235 Callout 255 11 0
5236 Alt
5237 Callout 255 12 1
5238 x
5239 Callout 255 13 1
5240 y
5241 Callout 255 14 0
5242 Ket
5243 Callout 255 21 1
5244 1
5245 Callout 255 22 1
5246 2
5247 Callout 255 23 1
5248 3
5249 Callout 255 24 0
5250 Ket
5251 End
5252 ------------------------------------------------------------------
5253 Capturing subpattern count = 1
5254 Options:
5255 No first char
5256 Need char = '3'
5257 aacaacaacaacaac123
5258 --->aacaacaacaacaac123
5259 +0 ^ ([ab]{1,4}c|xy){4,5}?
5260 +1 ^ [ab]{1,4}
5261 +10 ^ ^ c
5262 +11 ^ ^ |
5263 +1 ^ ^ [ab]{1,4}
5264 +10 ^ ^ c
5265 +11 ^ ^ |
5266 +1 ^ ^ [ab]{1,4}
5267 +10 ^ ^ c
5268 +11 ^ ^ |
5269 +1 ^ ^ [ab]{1,4}
5270 +10 ^ ^ c
5271 +11 ^ ^ |
5272 +21 ^ ^ 1
5273 +1 ^ ^ [ab]{1,4}
5274 +10 ^ ^ c
5275 +11 ^ ^ |
5276 +21 ^ ^ 1
5277 +22 ^ ^ 2
5278 +23 ^ ^ 3
5279 +24 ^ ^
5280 0: aacaacaacaacaac123
5281 1: aac
5282
5283 /\b.*/I
5284 Capturing subpattern count = 0
5285 No options
5286 No first char
5287 No need char
5288 ab cd\>1
5289 0: cd
5290
5291 /\b.*/Is
5292 Capturing subpattern count = 0
5293 Options: dotall
5294 No first char
5295 No need char
5296 ab cd\>1
5297 0: cd
5298
5299 /(?!.bcd).*/I
5300 Capturing subpattern count = 0
5301 No options
5302 No first char
5303 No need char
5304 Xbcd12345
5305 0: bcd12345
5306
5307 /abcde/I
5308 Capturing subpattern count = 0
5309 No options
5310 First char = 'a'
5311 Need char = 'e'
5312 ab\P
5313 Partial match: ab
5314 abc\P
5315 Partial match: abc
5316 abcd\P
5317 Partial match: abcd
5318 abcde\P
5319 0: abcde
5320 the quick brown abc\P
5321 Partial match: abc
5322 ** Failers\P
5323 No match
5324 the quick brown abxyz fox\P
5325 No match
5326
5327 "^(0?[1-9]|[12][0-9]|3[01])/(0?[1-9]|1[012])/(20)?\d\d$"I
5328 Capturing subpattern count = 3
5329 Options: anchored
5330 No first char
5331 Need char = '/'
5332 13/05/04\P
5333 0: 13/05/04
5334 1: 13
5335 2: 05
5336 13/5/2004\P
5337 0: 13/5/2004
5338 1: 13
5339 2: 5
5340 3: 20
5341 02/05/09\P
5342 0: 02/05/09
5343 1: 02
5344 2: 05
5345 1\P
5346 Partial match: 1
5347 1/2\P
5348 Partial match: 1/2
5349 1/2/0\P
5350 Partial match: 1/2/0
5351 1/2/04\P
5352 0: 1/2/04
5353 1: 1
5354 2: 2
5355 0\P
5356 Partial match: 0
5357 02/\P
5358 Partial match: 02/
5359 02/0\P
5360 Partial match: 02/0
5361 02/1\P
5362 Partial match: 02/1
5363 ** Failers\P
5364 No match
5365 \P
5366 No match
5367 123\P
5368 No match
5369 33/4/04\P
5370 No match
5371 3/13/04\P
5372 No match
5373 0/1/2003\P
5374 No match
5375 0/\P
5376 No match
5377 02/0/\P
5378 No match
5379 02/13\P
5380 No match
5381
5382 /0{0,2}ABC/I
5383 Capturing subpattern count = 0
5384 No options
5385 No first char
5386 Need char = 'C'
5387
5388 /\d{3,}ABC/I
5389 Capturing subpattern count = 0
5390 No options
5391 No first char
5392 Need char = 'C'
5393
5394 /\d*ABC/I
5395 Capturing subpattern count = 0
5396 No options
5397 No first char
5398 Need char = 'C'
5399
5400 /[abc]+DE/I
5401 Capturing subpattern count = 0
5402 No options
5403 No first char
5404 Need char = 'E'
5405
5406 /[abc]?123/I
5407 Capturing subpattern count = 0
5408 No options
5409 No first char
5410 Need char = '3'
5411 123\P
5412 0: 123
5413 a\P
5414 Partial match: a
5415 b\P
5416 Partial match: b
5417 c\P
5418 Partial match: c
5419 c12\P
5420 Partial match: c12
5421 c123\P
5422 0: c123
5423
5424 /^(?:\d){3,5}X/I
5425 Capturing subpattern count = 0
5426 Options: anchored
5427 No first char
5428 Need char = 'X'
5429 1\P
5430 Partial match: 1
5431 123\P
5432 Partial match: 123
5433 123X
5434 0: 123X
5435 1234\P
5436 Partial match: 1234
5437 1234X
5438 0: 1234X
5439 12345\P
5440 Partial match: 12345
5441 12345X
5442 0: 12345X
5443 *** Failers
5444 No match
5445 1X
5446 No match
5447 123456\P
5448 No match
5449
5450 /abc/I>testsavedregex
5451 Capturing subpattern count = 0
5452 No options
5453 First char = 'a'
5454 Need char = 'c'
5455 Compiled regex written to testsavedregex
5456 <testsavedregex
5457 Compiled regex loaded from testsavedregex
5458 No study data
5459 abc
5460 0: abc
5461 ** Failers
5462 No match
5463 bca
5464 No match
5465
5466 /abc/IF>testsavedregex
5467 Capturing subpattern count = 0
5468 No options
5469 First char = 'a'
5470 Need char = 'c'
5471 Compiled regex written to testsavedregex
5472 <testsavedregex
5473 Compiled regex (byte-inverted) loaded from testsavedregex
5474 No study data
5475 abc
5476 0: abc
5477 ** Failers
5478 No match
5479 bca
5480 No match
5481
5482 /(a|b)/IS>testsavedregex
5483 Capturing subpattern count = 1
5484 No options
5485 No first char
5486 No need char
5487 Subject length lower bound = 1
5488 Starting byte set: a b
5489 Compiled regex written to testsavedregex
5490 Study data written to testsavedregex
5491 <testsavedregex
5492 Compiled regex loaded from testsavedregex
5493 Study data loaded from testsavedregex
5494 abc
5495 0: a
5496 1: a
5497 ** Failers
5498 0: a
5499 1: a
5500 def
5501 No match
5502
5503 /(a|b)/ISF>testsavedregex
5504 Capturing subpattern count = 1
5505 No options
5506 No first char
5507 No need char
5508 Subject length lower bound = 1
5509 Starting byte set: a b
5510 Compiled regex written to testsavedregex
5511 Study data written to testsavedregex
5512 <testsavedregex
5513 Compiled regex (byte-inverted) loaded from testsavedregex
5514 Study data loaded from testsavedregex
5515 abc
5516 0: a
5517 1: a
5518 ** Failers
5519 0: a
5520 1: a
5521 def
5522 No match
5523
5524 ~<(\w+)/?>(.)*</(\1)>~smgI
5525 Capturing subpattern count = 3
5526 Max back reference = 1
5527 Options: multiline dotall
5528 First char = '<'
5529 Need char = '>'
5530 <!DOCTYPE seite SYSTEM "http://www.lco.lineas.de/xmlCms.dtd">\n<seite>\n<dokumenteninformation>\n<seitentitel>Partner der LCO</seitentitel>\n<sprache>de</sprache>\n<seitenbeschreibung>Partner der LINEAS Consulting\nGmbH</seitenbeschreibung>\n<schluesselworte>LINEAS Consulting GmbH Hamburg\nPartnerfirmen</schluesselworte>\n<revisit>30 days</revisit>\n<robots>index,follow</robots>\n<menueinformation>\n<aktiv>ja</aktiv>\n<menueposition>3</menueposition>\n<menuetext>Partner</menuetext>\n</menueinformation>\n<lastedited>\n<autor>LCO</autor>\n<firma>LINEAS Consulting</firma>\n<datum>15.10.2003</datum>\n</lastedited>\n</dokumenteninformation>\n<inhalt>\n\n<absatzueberschrift>Die Partnerfirmen der LINEAS Consulting\nGmbH</absatzueberschrift>\n\n<absatz><link ziel="http://www.ca.com/" zielfenster="_blank">\n<bild name="logo_ca.gif" rahmen="no"/></link> <link\nziel="http://www.ey.com/" zielfenster="_blank"><bild\nname="logo_euy.gif" rahmen="no"/></link>\n</absatz>\n\n<absatz><link ziel="http://www.cisco.de/" zielfenster="_blank">\n<bild name="logo_cisco.gif" rahmen="ja"/></link></absatz>\n\n<absatz><link ziel="http://www.atelion.de/"\nzielfenster="_blank"><bild\nname="logo_atelion.gif" rahmen="no"/></link>\n</absatz>\n\n<absatz><link ziel="http://www.line-information.de/"\nzielfenster="_blank">\n<bild name="logo_line_information.gif" rahmen="no"/></link>\n</absatz>\n\n<absatz><bild name="logo_aw.gif" rahmen="no"/></absatz>\n\n<absatz><link ziel="http://www.incognis.de/"\nzielfenster="_blank"><bild\nname="logo_incognis.gif" rahmen="no"/></link></absatz>\n\n<absatz><link ziel="http://www.addcraft.com/"\nzielfenster="_blank"><bild\nname="logo_addcraft.gif" rahmen="no"/></link></absatz>\n\n<absatz><link ziel="http://www.comendo.com/"\nzielfenster="_blank"><bild\nname="logo_comendo.gif" rahmen="no"/></link></absatz>\n\n</inhalt>\n</seite>
5531 0: <seite>\x0a<dokumenteninformation>\x0a<seitentitel>Partner der LCO</seitentitel>\x0a<sprache>de</sprache>\x0a<seitenbeschreibung>Partner der LINEAS Consulting\x0aGmbH</seitenbeschreibung>\x0a<schluesselworte>LINEAS Consulting GmbH Hamburg\x0aPartnerfirmen</schluesselworte>\x0a<revisit>30 days</revisit>\x0a<robots>index,follow</robots>\x0a<menueinformation>\x0a<aktiv>ja</aktiv>\x0a<menueposition>3</menueposition>\x0a<menuetext>Partner</menuetext>\x0a</menueinformation>\x0a<lastedited>\x0a<autor>LCO</autor>\x0a<firma>LINEAS Consulting</firma>\x0a<datum>15.10.2003</datum>\x0a</lastedited>\x0a</dokumenteninformation>\x0a<inhalt>\x0a\x0a<absatzueberschrift>Die Partnerfirmen der LINEAS Consulting\x0aGmbH</absatzueberschrift>\x0a\x0a<absatz><link ziel="http://www.ca.com/" zielfenster="_blank">\x0a<bild name="logo_ca.gif" rahmen="no"/></link> <link\x0aziel="http://www.ey.com/" zielfenster="_blank"><bild\x0aname="logo_euy.gif" rahmen="no"/></link>\x0a</absatz>\x0a\x0a<absatz><link ziel="http://www.cisco.de/" zielfenster="_blank">\x0a<bild name="logo_cisco.gif" rahmen="ja"/></link></absatz>\x0a\x0a<absatz><link ziel="http://www.atelion.de/"\x0azielfenster="_blank"><bild\x0aname="logo_atelion.gif" rahmen="no"/></link>\x0a</absatz>\x0a\x0a<absatz><link ziel="http://www.line-information.de/"\x0azielfenster="_blank">\x0a<bild name="logo_line_information.gif" rahmen="no"/></link>\x0a</absatz>\x0a\x0a<absatz><bild name="logo_aw.gif" rahmen="no"/></absatz>\x0a\x0a<absatz><link ziel="http://www.incognis.de/"\x0azielfenster="_blank"><bild\x0aname="logo_incognis.gif" rahmen="no"/></link></absatz>\x0a\x0a<absatz><link ziel="http://www.addcraft.com/"\x0azielfenster="_blank"><bild\x0aname="logo_addcraft.gif" rahmen="no"/></link></absatz>\x0a\x0a<absatz><link ziel="http://www.comendo.com/"\x0azielfenster="_blank"><bild\x0aname="logo_comendo.gif" rahmen="no"/></link></absatz>\x0a\x0a</inhalt>\x0a</seite>
5532 1: seite
5533 2: \x0a
5534 3: seite
5535
5536 /^a/IF
5537 Capturing subpattern count = 0
5538 Options: anchored
5539 No first char
5540 No need char
5541
5542 /line\nbreak/I
5543 Capturing subpattern count = 0
5544 Contains explicit CR or LF match
5545 No options
5546 First char = 'l'
5547 Need char = 'k'
5548 this is a line\nbreak
5549 0: line\x0abreak
5550 line one\nthis is a line\nbreak in the second line
5551 0: line\x0abreak
5552
5553 /line\nbreak/If
5554 Capturing subpattern count = 0
5555 Contains explicit CR or LF match
5556 Options: firstline
5557 First char = 'l'
5558 Need char = 'k'
5559 this is a line\nbreak
5560 0: line\x0abreak
5561 ** Failers
5562 No match
5563 line one\nthis is a line\nbreak in the second line
5564 No match
5565
5566 /line\nbreak/Imf
5567 Capturing subpattern count = 0
5568 Contains explicit CR or LF match
5569 Options: multiline firstline
5570 First char = 'l'
5571 Need char = 'k'
5572 this is a line\nbreak
5573 0: line\x0abreak
5574 ** Failers
5575 No match
5576 line one\nthis is a line\nbreak in the second line
5577 No match
5578
5579 /ab.cd/P
5580 ab-cd
5581 0: ab-cd
5582 ab=cd
5583 0: ab=cd
5584 ** Failers
5585 No match: POSIX code 17: match failed
5586 ab\ncd
5587 No match: POSIX code 17: match failed
5588
5589 /ab.cd/Ps
5590 ab-cd
5591 0: ab-cd
5592 ab=cd
5593 0: ab=cd
5594 ab\ncd
5595 0: ab\x0acd
5596
5597 /(?i)(?-i)AbCd/I
5598 Capturing subpattern count = 0
5599 No options
5600 First char = 'A'
5601 Need char = 'd'
5602 AbCd
5603 0: AbCd
5604 ** Failers
5605 No match
5606 abcd
5607 No match
5608
5609 /a{11111111111111111111}/I
5610 Failed: number too big in {} quantifier at offset 22
5611
5612 /(){64294967295}/I
5613 Failed: number too big in {} quantifier at offset 14
5614
5615 /(){2,4294967295}/I
5616 Failed: number too big in {} quantifier at offset 15
5617
5618 "(?i:a)(?i:b)(?i:c)(?i:d)(?i:e)(?i:f)(?i:g)(?i:h)(?i:i)(?i:j)(k)(?i:l)A\1B"I
5619 Capturing subpattern count = 1
5620 Max back reference = 1
5621 No options
5622 First char = 'a' (caseless)
5623 Need char = 'B'
5624 abcdefghijklAkB
5625 0: abcdefghijklAkB
5626 1: k
5627
5628 "(?P<n0>a)(?P<n1>b)(?P<n2>c)(?P<n3>d)(?P<n4>e)(?P<n5>f)(?P<n6>g)(?P<n7>h)(?P<n8>i)(?P<n9>j)(?P<n10>k)(?P<n11>l)A\11B"I
5629 Capturing subpattern count = 12
5630 Max back reference = 11
5631 Named capturing subpatterns:
5632 n0 1
5633 n1 2
5634 n10 11
5635 n11 12
5636 n2 3
5637 n3 4
5638 n4 5
5639 n5 6
5640 n6 7
5641 n7 8
5642 n8 9
5643 n9 10
5644 No options
5645 First char = 'a'
5646 Need char = 'B'
5647 abcdefghijklAkB
5648 0: abcdefghijklAkB
5649 1: a
5650 2: b
5651 3: c
5652 4: d
5653 5: e
5654 6: f
5655 7: g
5656 8: h
5657 9: i
5658 10: j
5659 11: k
5660 12: l
5661
5662 "(a)(b)(c)(d)(e)(f)(g)(h)(i)(j)(k)(l)A\11B"I
5663 Capturing subpattern count = 12
5664 Max back reference = 11
5665 No options
5666 First char = 'a'
5667 Need char = 'B'
5668 abcdefghijklAkB
5669 0: abcdefghijklAkB
5670 1: a
5671 2: b
5672 3: c
5673 4: d
5674 5: e
5675 6: f
5676 7: g
5677 8: h
5678 9: i
5679 10: j
5680 11: k
5681 12: l
5682
5683 "(?P<name0>a)(?P<name1>a)(?P<name2>a)(?P<name3>a)(?P<name4>a)(?P<name5>a)(?P<name6>a)(?P<name7>a)(?P<name8>a)(?P<name9>a)(?P<name10>a)(?P<name11>a)(?P<name12>a)(?P<name13>a)(?P<name14>a)(?P<name15>a)(?P<name16>a)(?P<name17>a)(?P<name18>a)(?P<name19>a)(?P<name20>a)(?P<name21>a)(?P<name22>a)(?P<name23>a)(?P<name24>a)(?P<name25>a)(?P<name26>a)(?P<name27>a)(?P<name28>a)(?P<name29>a)(?P<name30>a)(?P<name31>a)(?P<name32>a)(?P<name33>a)(?P<name34>a)(?P<name35>a)(?P<name36>a)(?P<name37>a)(?P<name38>a)(?P<name39>a)(?P<name40>a)(?P<name41>a)(?P<name42>a)(?P<name43>a)(?P<name44>a)(?P<name45>a)(?P<name46>a)(?P<name47>a)(?P<name48>a)(?P<name49>a)(?P<name50>a)(?P<name51>a)(?P<name52>a)(?P<name53>a)(?P<name54>a)(?P<name55>a)(?P<name56>a)(?P<name57>a)(?P<name58>a)(?P<name59>a)(?P<name60>a)(?P<name61>a)(?P<name62>a)(?P<name63>a)(?P<name64>a)(?P<name65>a)(?P<name66>a)(?P<name67>a)(?P<name68>a)(?P<name69>a)(?P<name70>a)(?P<name71>a)(?P<name72>a)(?P<name73>a)(?P<name74>a)(?P<name75>a)(?P<name76>a)(?P<name77>a)(?P<name78>a)(?P<name79>a)(?P<name80>a)(?P<name81>a)(?P<name82>a)(?P<name83>a)(?P<name84>a)(?P<name85>a)(?P<name86>a)(?P<name87>a)(?P<name88>a)(?P<name89>a)(?P<name90>a)(?P<name91>a)(?P<name92>a)(?P<name93>a)(?P<name94>a)(?P<name95>a)(?P<name96>a)(?P<name97>a)(?P<name98>a)(?P<name99>a)(?P<name100>a)"I
5684 Capturing subpattern count = 101
5685 Named capturing subpatterns:
5686 name0 1
5687 name1 2
5688 name10 11
5689 name100 101
5690 name11 12
5691 name12 13
5692 name13 14
5693 name14 15
5694 name15 16
5695 name16 17
5696 name17 18
5697 name18 19
5698 name19 20
5699 name2 3
5700 name20 21
5701 name21 22
5702 name22 23
5703 name23 24
5704 name24 25
5705 name25 26
5706 name26 27
5707 name27 28
5708 name28 29
5709 name29 30
5710 name3 4
5711 name30 31
5712 name31 32
5713 name32 33
5714 name33 34
5715 name34 35
5716 name35 36
5717 name36 37
5718 name37 38
5719 name38 39
5720 name39 40
5721 name4 5
5722 name40 41
5723 name41 42
5724 name42 43
5725 name43 44
5726 name44 45
5727 name45 46
5728 name46 47
5729 name47 48
5730 name48 49
5731 name49 50
5732 name5 6
5733 name50 51
5734 name51 52
5735 name52 53
5736 name53 54
5737 name54 55
5738 name55 56
5739 name56 57
5740 name57 58
5741 name58 59
5742 name59 60
5743 name6 7
5744 name60 61
5745 name61 62
5746 name62 63
5747 name63 64
5748 name64 65
5749 name65 66
5750 name66 67
5751 name67 68
5752 name68 69
5753 name69 70
5754 name7 8
5755 name70 71
5756 name71 72
5757 name72 73
5758 name73 74
5759 name74 75
5760 name75 76
5761 name76 77
5762 name77 78
5763 name78 79
5764 name79 80
5765 name8 9
5766 name80 81
5767 name81 82
5768 name82 83
5769 name83 84
5770 name84 85
5771 name85 86
5772 name86 87
5773 name87 88
5774 name88 89
5775 name89 90
5776 name9 10
5777 name90 91
5778 name91 92
5779 name92 93
5780 name93 94
5781 name94 95
5782 name95 96
5783 name96 97
5784 name97 98
5785 name98 99
5786 name99 100
5787 No options
5788 First char = 'a'
5789 Need char = 'a'
5790 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
5791 Matched, but too many substrings
5792 0: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
5793 1: a
5794 2: a
5795 3: a
5796 4: a
5797 5: a
5798 6: a
5799 7: a
5800 8: a
5801 9: a
5802 10: a
5803 11: a
5804 12: a
5805 13: a
5806 14: a
5807
5808 "(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)"I
5809 Capturing subpattern count = 101
5810 No options
5811 First char = 'a'
5812 Need char = 'a'
5813 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
5814 Matched, but too many substrings
5815 0: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
5816 1: a
5817 2: a
5818 3: a
5819 4: a
5820 5: a
5821 6: a
5822 7: a
5823 8: a
5824 9: a
5825 10: a
5826 11: a
5827 12: a
5828 13: a
5829 14: a
5830
5831 /[^()]*(?:\((?R)\)[^()]*)*/I
5832 Capturing subpattern count = 0
5833 No options
5834 No first char
5835 No need char
5836 (this(and)that
5837 0:
5838 (this(and)that)
5839 0: (this(and)that)
5840 (this(and)that)stuff
5841 0: (this(and)that)stuff
5842
5843 /[^()]*(?:\((?>(?R))\)[^()]*)*/I
5844 Capturing subpattern count = 0
5845 No options
5846 No first char
5847 No need char
5848 (this(and)that
5849 0:
5850 (this(and)that)
5851 0: (this(and)that)
5852
5853 /[^()]*(?:\((?R)\))*[^()]*/I
5854 Capturing subpattern count = 0
5855 No options
5856 No first char
5857 No need char
5858 (this(and)that
5859 0:
5860 (this(and)that)
5861 0: (this(and)that)
5862
5863 /(?:\((?R)\))*[^()]*/I
5864 Capturing subpattern count = 0
5865 No options
5866 No first char
5867 No need char
5868 (this(and)that
5869 0:
5870 (this(and)that)
5871 0:
5872 ((this))
5873 0: ((this))
5874
5875 /(?:\((?R)\))|[^()]*/I
5876 Capturing subpattern count = 0
5877 No options
5878 No first char
5879 No need char
5880 (this(and)that
5881 0:
5882 (this(and)that)
5883 0:
5884 (this)
5885 0: (this)
5886 ((this))
5887 0: ((this))
5888
5889 /a(b)c/PN
5890 abc
5891 Matched with REG_NOSUB
5892
5893 /a(?P<name>b)c/PN
5894 abc
5895 Matched with REG_NOSUB
5896
5897 /\x{100}/I
5898 Failed: character value in \x{...} sequence is too large at offset 6
5899
5900 /\x{0000ff}/I
5901 Capturing subpattern count = 0
5902 No options
5903 First char = 255
5904 No need char
5905
5906 /^((?P<A>a1)|(?P<A>a2)b)/I
5907 Failed: two named subpatterns have the same name at offset 17
5908
5909 /^((?P<A>a1)|(?P<A>a2)b)/IJ
5910 Capturing subpattern count = 3
5911 Named capturing subpatterns:
5912 A 2
5913 A 3
5914 Options: anchored dupnames
5915 No first char
5916 No need char
5917 a1b\CA
5918 0: a1
5919 1: a1
5920 2: a1
5921 C a1 (2) A
5922 a2b\CA
5923 0: a2b
5924 1: a2b
5925 2: <unset>
5926 3: a2
5927 C a2 (2) A
5928 ** Failers
5929 No match
5930 a1b\CZ\CA
5931 no parentheses with name "Z"
5932 0: a1
5933 1: a1
5934 2: a1
5935 copy substring Z failed -7
5936 C a1 (2) A
5937
5938 /^(?P<A>a)(?P<A>b)/IJ
5939 Capturing subpattern count = 2
5940 Named capturing subpatterns:
5941 A 1
5942 A 2
5943 Options: anchored dupnames
5944 No first char
5945 No need char
5946 ab\CA
5947 0: ab
5948 1: a
5949 2: b
5950 C a (1) A
5951
5952 /^(?P<A>a)(?P<A>b)|cd/IJ
5953 Capturing subpattern count = 2
5954 Named capturing subpatterns:
5955 A 1
5956 A 2
5957 Options: dupnames
5958 No first char
5959 No need char
5960 ab\CA
5961 0: ab
5962 1: a
5963 2: b
5964 C a (1) A
5965 cd\CA
5966 0: cd
5967 copy substring A failed -7
5968
5969 /^(?P<A>a)(?P<A>b)|cd(?P<A>ef)(?P<A>gh)/IJ
5970 Capturing subpattern count = 4
5971 Named capturing subpatterns:
5972 A 1
5973 A 2
5974 A 3
5975 A 4
5976 Options: dupnames
5977 No first char
5978 No need char
5979 cdefgh\CA
5980 0: cdefgh
5981 1: <unset>
5982 2: <unset>
5983 3: ef
5984 4: gh
5985 C ef (2) A
5986
5987 /^((?P<A>a1)|(?P<A>a2)b)/IJ
5988 Capturing subpattern count = 3
5989 Named capturing subpatterns:
5990 A 2
5991 A 3
5992 Options: anchored dupnames
5993 No first char
5994 No need char
5995 a1b\GA
5996 0: a1
5997 1: a1
5998 2: a1
5999 G a1 (2) A
6000 a2b\GA
6001 0: a2b
6002 1: a2b
6003 2: <unset>
6004 3: a2
6005 G a2 (2) A
6006 ** Failers
6007 No match
6008 a1b\GZ\GA
6009 no parentheses with name "Z"
6010 0: a1
6011 1: a1
6012 2: a1
6013 copy substring Z failed -7
6014 G a1 (2) A
6015
6016 /^(?P<A>a)(?P<A>b)/IJ
6017 Capturing subpattern count = 2
6018 Named capturing subpatterns:
6019 A 1
6020 A 2
6021 Options: anchored dupnames
6022 No first char
6023 No need char
6024 ab\GA
6025 0: ab
6026 1: a
6027 2: b
6028 G a (1) A
6029
6030 /^(?P<A>a)(?P<A>b)|cd/IJ
6031 Capturing subpattern count = 2
6032 Named capturing subpatterns:
6033 A 1
6034 A 2
6035 Options: dupnames
6036 No first char
6037 No need char
6038 ab\GA
6039 0: ab
6040 1: a
6041 2: b
6042 G a (1) A
6043 cd\GA
6044 0: cd
6045 copy substring A failed -7
6046
6047 /^(?P<A>a)(?P<A>b)|cd(?P<A>ef)(?P<A>gh)/IJ
6048 Capturing subpattern count = 4
6049 Named capturing subpatterns:
6050 A 1
6051 A 2
6052 A 3
6053 A 4
6054 Options: dupnames
6055 No first char
6056 No need char
6057 cdefgh\GA
6058 0: cdefgh
6059 1: <unset>
6060 2: <unset>
6061 3: ef
6062 4: gh
6063 G ef (2) A
6064
6065 /(?J)^((?P<A>a1)|(?P<A>a2)b)/I
6066 Capturing subpattern count = 3
6067 Named capturing subpatterns:
6068 A 2
6069 A 3
6070 Options: anchored dupnames
6071 Duplicate name status changes
6072 No first char
6073 No need char
6074 a1b\CA
6075 0: a1
6076 1: a1
6077 2: a1
6078 C a1 (2) A
6079 a2b\CA
6080 0: a2b
6081 1: a2b
6082 2: <unset>
6083 3: a2
6084 C a2 (2) A
6085
6086 /^(?P<A>a) (?J:(?P<B>b)(?P<B>c)) (?P<A>d)/I
6087 Failed: two named subpatterns have the same name at offset 37
6088
6089 / In this next test, J is not set at the outer level; consequently it isn't
6090 set in the pattern's options; consequently pcre_get_named_substring() produces
6091 a random value. /Ix
6092 Capturing subpattern count = 1
6093 Options: extended
6094 First char = 'I'
6095 Need char = 'e'
6096
6097 /^(?P<A>a) (?J:(?P<B>b)(?P<B>c)) (?P<C>d)/I
6098 Capturing subpattern count = 4
6099 Named capturing subpatterns:
6100 A 1
6101 B 2
6102 B 3
6103 C 4
6104 Options: anchored
6105 Duplicate name status changes
6106 No first char
6107 No need char
6108 a bc d\CA\CB\CC
6109 0: a bc d
6110 1: a
6111 2: b
6112 3: c
6113 4: d
6114 C a (1) A
6115 C b (1) B
6116 C d (1) C
6117
6118 /^(?P<A>a)?(?(A)a|b)/I
6119 Capturing subpattern count = 1
6120 Named capturing subpatterns:
6121 A 1
6122 Options: anchored
6123 No first char
6124 No need char
6125 aabc
6126 0: aa
6127 1: a
6128 bc
6129 0: b
6130 ** Failers
6131 No match
6132 abc
6133 No match
6134
6135 /(?:(?(ZZ)a|b)(?P<ZZ>X))+/I
6136 Capturing subpattern count = 1
6137 Named capturing subpatterns:
6138 ZZ 1
6139 No options
6140 No first char
6141 Need char = 'X'
6142 bXaX
6143 0: bXaX
6144 1: X
6145
6146 /(?:(?(2y)a|b)(X))+/I
6147 Failed: reference to non-existent subpattern at offset 9
6148
6149 /(?:(?(ZA)a|b)(?P<ZZ>X))+/I
6150 Failed: reference to non-existent subpattern at offset 9
6151
6152 /(?:(?(ZZ)a|b)(?(ZZ)a|b)(?P<ZZ>X))+/I
6153 Capturing subpattern count = 1
6154 Named capturing subpatterns:
6155 ZZ 1
6156 No options
6157 No first char
6158 Need char = 'X'
6159 bbXaaX
6160 0: bbXaaX
6161 1: X
6162
6163 /(?:(?(ZZ)a|\(b\))\\(?P<ZZ>X))+/I
6164 Capturing subpattern count = 1
6165 Named capturing subpatterns:
6166 ZZ 1
6167 No options
6168 No first char
6169 Need char = 'X'
6170 (b)\\Xa\\X
6171 0: (b)\Xa\X
6172 1: X
6173
6174 /(?P<ABC/I
6175 Failed: syntax error in subpattern name (missing terminator) at offset 7
6176
6177 /(?:(?(A)(?P=A)a|b)(?P<A>X|Y))+/I
6178 Capturing subpattern count = 1
6179 Max back reference = 1
6180 Named capturing subpatterns:
6181 A 1
6182 No options
6183 No first char
6184 No need char
6185 bXXaYYaY
6186 0: bXXaYYaY
6187 1: Y
6188 bXYaXXaX
6189 0: bX
6190 1: X
6191
6192 /()()()()()()()()()(?:(?(A)(?P=A)a|b)(?P<A>X|Y))+/I
6193 Capturing subpattern count = 10
6194 Max back reference = 10
6195 Named capturing subpatterns:
6196 A 10
6197 No options
6198 No first char
6199 No need char
6200 bXXaYYaY
6201 0: bXXaYYaY
6202 1:
6203 2:
6204 3:
6205 4:
6206 5:
6207 6:
6208 7:
6209 8:
6210 9:
6211 10: Y
6212
6213 /\777/I
6214 Failed: octal value is greater than \377 (not in UTF-8 mode) at offset 3
6215
6216 /\s*,\s*/IS
6217 Capturing subpattern count = 0
6218 No options
6219 No first char
6220 Need char = ','
6221 Subject length lower bound = 1
6222 Starting byte set: \x09 \x0a \x0c \x0d \x20 ,
6223 \x0b,\x0b
6224 0: ,
6225 \x0c,\x0d
6226 0: \x0c,\x0d
6227
6228 /^abc/Im
6229 Capturing subpattern count = 0
6230 Options: multiline
6231 First char at start or follows newline
6232 Need char = 'c'
6233 xyz\nabc
6234 0: abc
6235 xyz\nabc\<lf>
6236 0: abc
6237 xyz\r\nabc\<lf>
6238 0: abc
6239 xyz\rabc\<cr>
6240 0: abc
6241 xyz\r\nabc\<crlf>
6242 0: abc
6243 ** Failers
6244 No match
6245 xyz\nabc\<cr>
6246 No match
6247 xyz\r\nabc\<cr>
6248 No match
6249 xyz\nabc\<crlf>
6250 No match
6251 xyz\rabc\<crlf>
6252 No match
6253 xyz\rabc\<lf>
6254 No match
6255
6256 /abc$/Im<lf>
6257 Capturing subpattern count = 0
6258 Options: multiline
6259 Forced newline sequence: LF
6260 First char = 'a'
6261 Need char = 'c'
6262 xyzabc
6263 0: abc
6264 xyzabc\n
6265 0: abc
6266 xyzabc\npqr
6267 0: abc
6268 xyzabc\r\<cr>
6269 0: abc
6270 xyzabc\rpqr\<cr>
6271 0: abc
6272 xyzabc\r\n\<crlf>
6273 0: abc
6274 xyzabc\r\npqr\<crlf>
6275 0: abc
6276 ** Failers
6277 No match
6278 xyzabc\r
6279 No match
6280 xyzabc\rpqr
6281 No match
6282 xyzabc\r\n
6283 No match
6284 xyzabc\r\npqr
6285 No match
6286
6287 /^abc/Im<cr>
6288 Capturing subpattern count = 0
6289 Options: multiline
6290 Forced newline sequence: CR
6291 First char at start or follows newline
6292 Need char = 'c'
6293 xyz\rabcdef
6294 0: abc
6295 xyz\nabcdef\<lf>
6296 0: abc
6297 ** Failers
6298 No match
6299 xyz\nabcdef
6300 No match
6301
6302 /^abc/Im<lf>
6303 Capturing subpattern count = 0
6304 Options: multiline
6305 Forced newline sequence: LF
6306 First char at start or follows newline
6307 Need char = 'c'
6308 xyz\nabcdef
6309 0: abc
6310 xyz\rabcdef\<cr>
6311 0: abc
6312 ** Failers
6313 No match
6314 xyz\rabcdef
6315 No match
6316
6317 /^abc/Im<crlf>
6318 Capturing subpattern count = 0
6319 Options: multiline
6320 Forced newline sequence: CRLF
6321 First char at start or follows newline
6322 Need char = 'c'
6323 xyz\r\nabcdef
6324 0: abc
6325 xyz\rabcdef\<cr>
6326 0: abc
6327 ** Failers
6328 No match
6329 xyz\rabcdef
6330 No match
6331
6332 /^abc/Im<bad>
6333 Unknown newline type at: <bad>
6334
6335
6336 /abc/I
6337 Capturing subpattern count = 0
6338 No options
6339 First char = 'a'
6340 Need char = 'c'
6341 xyz\rabc\<bad>
6342 Unknown newline type at: <bad>
6343 abc
6344 0: abc
6345
6346 /.*/I<lf>
6347 Capturing subpattern count = 0
6348 Options:
6349 Forced newline sequence: LF
6350 First char at start or follows newline
6351 No need char
6352 abc\ndef
6353 0: abc
6354 abc\rdef
6355 0: abc\x0ddef
6356 abc\r\ndef
6357 0: abc\x0d
6358 \<cr>abc\ndef
6359 0: abc\x0adef
6360 \<cr>abc\rdef
6361 0: abc
6362 \<cr>abc\r\ndef
6363 0: abc
6364 \<crlf>abc\ndef
6365 0: abc\x0adef
6366 \<crlf>abc\rdef
6367 0: abc\x0ddef
6368 \<crlf>abc\r\ndef
6369 0: abc
6370
6371 /\w+(.)(.)?def/Is
6372 Capturing subpattern count = 2
6373 Options: dotall
6374 No first char
6375 Need char = 'f'
6376 abc\ndef
6377 0: abc\x0adef
6378 1: \x0a
6379 abc\rdef
6380 0: abc\x0ddef
6381 1: \x0d
6382 abc\r\ndef
6383 0: abc\x0d\x0adef
6384 1: \x0d
6385 2: \x0a
6386
6387 +((?:\s|//.*\\n|/[*](?:\\n|.)*?[*]/)*)+I
6388 Capturing subpattern count = 1
6389 No options
6390 No first char
6391 No need char
6392 /* this is a C style comment */\M
6393 Minimum match() limit = 120
6394 Minimum match() recursion limit = 6
6395 0: /* this is a C style comment */
6396 1: /* this is a C style comment */
6397
6398 /(?P<B>25[0-5]|2[0-4]\d|[01]?\d?\d)(?:\.(?P>B)){3}/I
6399 Capturing subpattern count = 1
6400 Named capturing subpatterns:
6401 B 1
6402 No options
6403 No first char
6404 Need char = '.'
6405
6406 /()()()()()()()()()()()()()()()()()()()()
6407 ()()()()()()()()()()()()()()()()()()()()
6408 ()()()()()()()()()()()()()()()()()()()()
6409 ()()()()()()()()()()()()()()()()()()()()
6410 ()()()()()()()()()()()()()()()()()()()()
6411 (.(.))/Ix
6412 Capturing subpattern count = 102
6413 Options: extended
6414 No first char
6415 No need char
6416 XY\O400
6417 0: XY
6418 1:
6419 2:
6420 3:
6421 4:
6422 5:
6423 6:
6424 7:
6425 8:
6426 9:
6427 10:
6428 11:
6429 12:
6430 13:
6431 14:
6432 15:
6433 16:
6434 17:
6435 18:
6436 19:
6437 20:
6438 21:
6439 22:
6440 23:
6441 24:
6442 25:
6443 26:
6444 27:
6445 28:
6446 29:
6447 30:
6448 31:
6449 32:
6450 33:
6451 34:
6452 35:
6453 36:
6454 37:
6455 38:
6456 39:
6457 40:
6458 41:
6459 42:
6460 43:
6461 44:
6462 45:
6463 46:
6464 47:
6465 48:
6466 49:
6467 50:
6468 51:
6469 52:
6470 53:
6471 54:
6472 55:
6473 56:
6474 57:
6475 58:
6476 59:
6477 60:
6478 61:
6479 62:
6480 63:
6481 64:
6482 65:
6483 66:
6484 67:
6485 68:
6486 69:
6487 70:
6488 71:
6489 72:
6490 73:
6491 74:
6492 75:
6493 76:
6494 77:
6495 78:
6496 79:
6497 80:
6498 81:
6499 82:
6500 83:
6501 84:
6502 85:
6503 86:
6504 87:
6505 88:
6506 89:
6507 90:
6508 91:
6509 92:
6510 93:
6511 94:
6512 95:
6513 96:
6514 97:
6515 98:
6516 99:
6517 100:
6518 101: XY
6519 102: Y
6520
6521 /(a*b|(?i:c*(?-i)d))/IS
6522 Capturing subpattern count = 1
6523 No options
6524 No first char
6525 No need char
6526 Subject length lower bound = 1
6527 Starting byte set: C a b c d
6528
6529 /()[ab]xyz/IS
6530 Capturing subpattern count = 1
6531 No options
6532 No first char
6533 Need char = 'z'
6534 Subject length lower bound = 4
6535 Starting byte set: a b
6536
6537 /(|)[ab]xyz/IS
6538 Capturing subpattern count = 1
6539 No options
6540 No first char
6541 Need char = 'z'
6542 Subject length lower bound = 4
6543 Starting byte set: a b
6544
6545 /(|c)[ab]xyz/IS
6546 Capturing subpattern count = 1
6547 No options
6548 No first char
6549 Need char = 'z'
6550 Subject length lower bound = 4
6551 Starting byte set: a b c
6552
6553 /(|c?)[ab]xyz/IS
6554 Capturing subpattern count = 1
6555 No options
6556 No first char
6557 Need char = 'z'
6558 Subject length lower bound = 4
6559 Starting byte set: a b c
6560
6561 /(d?|c?)[ab]xyz/IS
6562 Capturing subpattern count = 1
6563 No options
6564 No first char
6565 Need char = 'z'
6566 Subject length lower bound = 4
6567 Starting byte set: a b c d
6568
6569 /(d?|c)[ab]xyz/IS
6570 Capturing subpattern count = 1
6571 No options
6572 No first char
6573 Need char = 'z'
6574 Subject length lower bound = 4
6575 Starting byte set: a b c d
6576
6577 /^a*b\d/DZ
6578 ------------------------------------------------------------------
6579 Bra
6580 ^
6581 a*+
6582 b
6583 \d
6584 Ket
6585 End
6586 ------------------------------------------------------------------
6587 Capturing subpattern count = 0
6588 Options: anchored
6589 No first char
6590 Need char = 'b'
6591
6592 /^a*+b\d/DZ
6593 ------------------------------------------------------------------
6594 Bra
6595 ^
6596 a*+
6597 b
6598 \d
6599 Ket
6600 End
6601 ------------------------------------------------------------------
6602 Capturing subpattern count = 0
6603 Options: anchored
6604 No first char
6605 Need char = 'b'
6606
6607 /^a*?b\d/DZ
6608 ------------------------------------------------------------------
6609 Bra
6610 ^
6611 a*+
6612 b
6613 \d
6614 Ket
6615 End
6616 ------------------------------------------------------------------
6617 Capturing subpattern count = 0
6618 Options: anchored
6619 No first char
6620 Need char = 'b'
6621
6622 /^a+A\d/DZ
6623 ------------------------------------------------------------------
6624 Bra
6625 ^
6626 a++
6627 A
6628 \d
6629 Ket
6630 End
6631 ------------------------------------------------------------------
6632 Capturing subpattern count = 0
6633 Options: anchored
6634 No first char
6635 Need char = 'A'
6636 aaaA5
6637 0: aaaA5
6638 ** Failers
6639 No match
6640 aaaa5
6641 No match
6642
6643 /^a*A\d/IiDZ
6644 ------------------------------------------------------------------
6645 Bra
6646 ^
6647 a*
6648 NC A
6649 \d
6650 Ket
6651 End
6652 ------------------------------------------------------------------
6653 Capturing subpattern count = 0
6654 Options: anchored caseless
6655 No first char
6656 Need char = 'A' (caseless)
6657 aaaA5
6658 0: aaaA5
6659 aaaa5
6660 0: aaaa5
6661
6662 /(a*|b*)[cd]/IS
6663 Capturing subpattern count = 1
6664 No options
6665 No first char
6666 No need char
6667 Subject length lower bound = 1
6668 Starting byte set: a b c d
6669
6670 /(a+|b*)[cd]/IS
6671 Capturing subpattern count = 1
6672 No options
6673 No first char
6674 No need char
6675 Subject length lower bound = 1
6676 Starting byte set: a b c d
6677
6678 /(a*|b+)[cd]/IS
6679 Capturing subpattern count = 1
6680 No options
6681 No first char
6682 No need char
6683 Subject length lower bound = 1
6684 Starting byte set: a b c d
6685
6686 /(a+|b+)[cd]/IS
6687 Capturing subpattern count = 1
6688 No options
6689 No first char
6690 No need char
6691 Subject length lower bound = 2
6692 Starting byte set: a b
6693
6694 /((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((
6695 ((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((
6696 (((
6697 a
6698 ))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
6699 ))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
6700 )))
6701 /Ix
6702 Capturing subpattern count = 203
6703 Options: extended
6704 First char = 'a'
6705 No need char
6706 large nest
6707 Matched, but too many substrings
6708 0: a
6709 1: a
6710 2: a
6711 3: a
6712 4: a
6713 5: a
6714 6: a
6715 7: a
6716 8: a
6717 9: a
6718 10: a
6719 11: a
6720 12: a
6721 13: a
6722 14: a
6723
6724 /a*\d/BZ
6725 ------------------------------------------------------------------
6726 Bra
6727 a*+
6728 \d
6729 Ket
6730 End
6731 ------------------------------------------------------------------
6732
6733 /a*\D/BZ
6734 ------------------------------------------------------------------
6735 Bra
6736 a*
6737 \D
6738 Ket
6739 End
6740 ------------------------------------------------------------------
6741
6742 /0*\d/BZ
6743 ------------------------------------------------------------------
6744 Bra
6745 0*
6746 \d
6747 Ket
6748 End
6749 ------------------------------------------------------------------
6750
6751 /0*\D/BZ
6752 ------------------------------------------------------------------
6753 Bra
6754 0*+
6755 \D
6756 Ket
6757 End
6758 ------------------------------------------------------------------
6759
6760 /a*\s/BZ
6761 ------------------------------------------------------------------
6762 Bra
6763 a*+
6764 \s
6765 Ket
6766 End
6767 ------------------------------------------------------------------
6768
6769 /a*\S/BZ
6770 ------------------------------------------------------------------
6771 Bra
6772 a*
6773 \S
6774 Ket
6775 End
6776 ------------------------------------------------------------------
6777
6778 / *\s/BZ
6779 ------------------------------------------------------------------
6780 Bra
6781 *
6782 \s
6783 Ket
6784 End
6785 ------------------------------------------------------------------
6786
6787 / *\S/BZ
6788 ------------------------------------------------------------------
6789 Bra
6790 *+
6791 \S
6792 Ket
6793 End
6794 ------------------------------------------------------------------
6795
6796 /a*\w/BZ
6797 ------------------------------------------------------------------
6798 Bra
6799 a*
6800 \w
6801 Ket
6802 End
6803 ------------------------------------------------------------------
6804
6805 /a*\W/BZ
6806 ------------------------------------------------------------------
6807 Bra
6808 a*+
6809 \W
6810 Ket
6811 End
6812 ------------------------------------------------------------------
6813
6814 /=*\w/BZ
6815 ------------------------------------------------------------------
6816 Bra
6817 =*+
6818 \w
6819 Ket
6820 End
6821 ------------------------------------------------------------------
6822
6823 /=*\W/BZ
6824 ------------------------------------------------------------------
6825 Bra
6826 =*
6827 \W
6828 Ket
6829 End
6830 ------------------------------------------------------------------
6831
6832 /\d*a/BZ
6833 ------------------------------------------------------------------
6834 Bra
6835 \d*+
6836 a
6837 Ket
6838 End
6839 ------------------------------------------------------------------
6840
6841 /\d*2/BZ
6842 ------------------------------------------------------------------
6843 Bra
6844 \d*
6845 2
6846 Ket
6847 End
6848 ------------------------------------------------------------------
6849
6850 /\d*\d/BZ
6851 ------------------------------------------------------------------
6852 Bra
6853 \d*
6854 \d
6855 Ket
6856 End
6857 ------------------------------------------------------------------
6858
6859 /\d*\D/BZ
6860 ------------------------------------------------------------------
6861 Bra
6862 \d*+
6863 \D
6864 Ket
6865 End
6866 ------------------------------------------------------------------
6867
6868 /\d*\s/BZ
6869 ------------------------------------------------------------------
6870 Bra
6871 \d*+
6872 \s
6873 Ket
6874 End
6875 ------------------------------------------------------------------
6876
6877 /\d*\S/BZ
6878 ------------------------------------------------------------------
6879 Bra
6880 \d*
6881 \S
6882 Ket
6883 End
6884 ------------------------------------------------------------------
6885
6886 /\d*\w/BZ
6887 ------------------------------------------------------------------
6888 Bra
6889 \d*
6890 \w
6891 Ket
6892 End
6893 ------------------------------------------------------------------
6894
6895 /\d*\W/BZ
6896 ------------------------------------------------------------------
6897 Bra
6898 \d*+
6899 \W
6900 Ket
6901 End
6902 ------------------------------------------------------------------
6903
6904 /\D*a/BZ
6905 ------------------------------------------------------------------
6906 Bra
6907 \D*
6908 a
6909 Ket
6910 End
6911 ------------------------------------------------------------------
6912
6913 /\D*2/BZ
6914 ------------------------------------------------------------------
6915 Bra
6916 \D*+
6917 2
6918 Ket
6919 End
6920 ------------------------------------------------------------------
6921
6922 /\D*\d/BZ
6923 ------------------------------------------------------------------
6924 Bra
6925 \D*+
6926 \d
6927 Ket
6928 End
6929 ------------------------------------------------------------------
6930
6931 /\D*\D/BZ
6932 ------------------------------------------------------------------
6933 Bra
6934 \D*
6935 \D
6936 Ket
6937 End
6938 ------------------------------------------------------------------
6939
6940 /\D*\s/BZ
6941 ------------------------------------------------------------------
6942 Bra
6943 \D*
6944 \s
6945 Ket
6946 End
6947 ------------------------------------------------------------------
6948
6949 /\D*\S/BZ
6950 ------------------------------------------------------------------
6951 Bra
6952 \D*
6953 \S
6954 Ket
6955 End
6956 ------------------------------------------------------------------
6957
6958 /\D*\w/BZ
6959 ------------------------------------------------------------------
6960 Bra
6961 \D*
6962 \w
6963 Ket
6964 End
6965 ------------------------------------------------------------------
6966
6967 /\D*\W/BZ
6968 ------------------------------------------------------------------
6969 Bra
6970 \D*
6971 \W
6972 Ket
6973 End
6974 ------------------------------------------------------------------
6975
6976 /\s*a/BZ
6977 ------------------------------------------------------------------
6978 Bra
6979 \s*+
6980 a
6981 Ket
6982 End
6983 ------------------------------------------------------------------
6984
6985 /\s*2/BZ
6986 ------------------------------------------------------------------
6987 Bra
6988 \s*+
6989 2
6990 Ket
6991 End
6992 ------------------------------------------------------------------
6993
6994 /\s*\d/BZ
6995 ------------------------------------------------------------------
6996 Bra
6997 \s*+
6998 \d
6999 Ket
7000 End
7001 ------------------------------------------------------------------
7002
7003 /\s*\D/BZ
7004 ------------------------------------------------------------------
7005 Bra
7006 \s*
7007 \D
7008 Ket
7009 End
7010 ------------------------------------------------------------------
7011
7012 /\s*\s/BZ
7013 ------------------------------------------------------------------
7014 Bra
7015 \s*
7016 \s
7017 Ket
7018 End
7019 ------------------------------------------------------------------
7020
7021 /\s*\S/BZ
7022 ------------------------------------------------------------------
7023 Bra
7024 \s*+
7025 \S
7026 Ket
7027 End
7028 ------------------------------------------------------------------
7029
7030 /\s*\w/BZ
7031 ------------------------------------------------------------------
7032 Bra
7033 \s*+
7034 \w
7035 Ket
7036 End
7037 ------------------------------------------------------------------
7038
7039 /\s*\W/BZ
7040 ------------------------------------------------------------------
7041 Bra
7042 \s*
7043 \W
7044 Ket
7045 End
7046 ------------------------------------------------------------------
7047
7048 /\S*a/BZ
7049 ------------------------------------------------------------------
7050 Bra
7051 \S*
7052 a
7053 Ket
7054 End
7055 ------------------------------------------------------------------
7056
7057 /\S*2/BZ
7058 ------------------------------------------------------------------
7059 Bra
7060 \S*
7061 2
7062 Ket
7063 End
7064 ------------------------------------------------------------------
7065
7066 /\S*\d/BZ
7067 ------------------------------------------------------------------
7068 Bra
7069 \S*
7070 \d
7071 Ket
7072 End
7073 ------------------------------------------------------------------
7074
7075 /\S*\D/BZ
7076 ------------------------------------------------------------------
7077 Bra
7078 \S*
7079 \D
7080 Ket
7081 End
7082 ------------------------------------------------------------------
7083
7084 /\S*\s/BZ
7085 ------------------------------------------------------------------
7086 Bra
7087 \S*+
7088 \s
7089 Ket
7090 End
7091 ------------------------------------------------------------------
7092
7093 /\S*\S/BZ
7094 ------------------------------------------------------------------
7095 Bra
7096 \S*
7097 \S
7098 Ket
7099 End
7100 ------------------------------------------------------------------
7101
7102 /\S*\w/BZ
7103 ------------------------------------------------------------------
7104 Bra
7105 \S*
7106 \w
7107 Ket
7108 End
7109 ------------------------------------------------------------------
7110
7111 /\S*\W/BZ
7112 ------------------------------------------------------------------
7113 Bra
7114 \S*
7115 \W
7116 Ket
7117 End
7118 ------------------------------------------------------------------
7119
7120 /\w*a/BZ
7121 ------------------------------------------------------------------
7122 Bra
7123 \w*
7124 a
7125 Ket
7126 End
7127 ------------------------------------------------------------------
7128
7129 /\w*2/BZ
7130 ------------------------------------------------------------------
7131 Bra
7132 \w*
7133 2
7134 Ket
7135 End
7136 ------------------------------------------------------------------
7137
7138 /\w*\d/BZ
7139 ------------------------------------------------------------------
7140 Bra
7141 \w*
7142 \d
7143 Ket
7144 End
7145 ------------------------------------------------------------------
7146
7147 /\w*\D/BZ
7148 ------------------------------------------------------------------
7149 Bra
7150 \w*
7151 \D
7152 Ket
7153 End
7154 ------------------------------------------------------------------
7155
7156 /\w*\s/BZ
7157 ------------------------------------------------------------------
7158 Bra
7159 \w*+
7160 \s
7161 Ket
7162 End
7163 ------------------------------------------------------------------
7164
7165 /\w*\S/BZ
7166 ------------------------------------------------------------------
7167 Bra
7168 \w*
7169 \S
7170 Ket
7171 End
7172 ------------------------------------------------------------------
7173
7174 /\w*\w/BZ
7175 ------------------------------------------------------------------
7176 Bra
7177 \w*
7178 \w
7179 Ket
7180 End
7181 ------------------------------------------------------------------
7182
7183 /\w*\W/BZ
7184 ------------------------------------------------------------------
7185 Bra
7186