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

Contents of /code/trunk/testdata/testoutput2

Parent Directory Parent Directory | Revision Log Revision Log


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