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

Contents of /code/trunk/testdata/testoutput2

Parent Directory Parent Directory | Revision Log Revision Log


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