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

Contents of /code/trunk/testdata/testoutput2

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1379 - (show annotations)
Mon Oct 14 13:54:07 2013 UTC (5 years, 11 months ago) by ph10
File size: 263778 byte(s)
Error occurred while calculating annotation data.
More auto-possessification additions, using possessive class repeats. These are 
not yet used for explicit possessification.
<
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 No match
3792
3793 /a(b+?)(c*?)(?C1)/I
3794 Capturing subpattern count = 2
3795 No options
3796 First char = 'a'
3797 Need char = 'b'
3798 abbbbbccc\C*1
3799 --->abbbbbccc
3800 1 ^ ^
3801 Callout data = 1
3802 1 ^ ^
3803 Callout data = 1
3804 1 ^ ^
3805 Callout data = 1
3806 1 ^ ^
3807 Callout data = 1
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 No match
3817
3818 /(?C)abc/I
3819 Capturing subpattern count = 0
3820 No options
3821 First char = 'a'
3822 Need char = 'c'
3823
3824 /(?C)^abc/I
3825 Capturing subpattern count = 0
3826 Options: anchored
3827 No first char
3828 No need char
3829
3830 /(?C)a|b/IS
3831 Capturing subpattern count = 0
3832 No options
3833 No first char
3834 No need char
3835 Subject length lower bound = 1
3836 Starting byte set: a b
3837
3838 /(?R)/I
3839 Failed: recursive call could loop indefinitely at offset 3
3840
3841 /(a|(?R))/I
3842 Failed: recursive call could loop indefinitely at offset 6
3843
3844 /(ab|(bc|(de|(?R))))/I
3845 Failed: recursive call could loop indefinitely at offset 15
3846
3847 /x(ab|(bc|(de|(?R))))/I
3848 Capturing subpattern count = 3
3849 No options
3850 First char = 'x'
3851 No need char
3852 xab
3853 0: xab
3854 1: ab
3855 xbc
3856 0: xbc
3857 1: bc
3858 2: bc
3859 xde
3860 0: xde
3861 1: de
3862 2: de
3863 3: de
3864 xxab
3865 0: xxab
3866 1: xab
3867 2: xab
3868 3: xab
3869 xxxab
3870 0: xxxab
3871 1: xxab
3872 2: xxab
3873 3: xxab
3874 *** Failers
3875 No match
3876 xyab
3877 No match
3878
3879 /(ab|(bc|(de|(?1))))/I
3880 Failed: recursive call could loop indefinitely at offset 15
3881
3882 /x(ab|(bc|(de|(?1)x)x)x)/I
3883 Failed: recursive call could loop indefinitely at offset 16
3884
3885 /^([^()]|\((?1)*\))*$/I
3886 Capturing subpattern count = 1
3887 May match empty string
3888 Options: anchored
3889 No first char
3890 No need char
3891 abc
3892 0: abc
3893 1: c
3894 a(b)c
3895 0: a(b)c
3896 1: c
3897 a(b(c))d
3898 0: a(b(c))d
3899 1: d
3900 *** Failers)
3901 No match
3902 a(b(c)d
3903 No match
3904
3905 /^>abc>([^()]|\((?1)*\))*<xyz<$/I
3906 Capturing subpattern count = 1
3907 Options: anchored
3908 No first char
3909 Need char = '<'
3910 >abc>123<xyz<
3911 0: >abc>123<xyz<
3912 1: 3
3913 >abc>1(2)3<xyz<
3914 0: >abc>1(2)3<xyz<
3915 1: 3
3916 >abc>(1(2)3)<xyz<
3917 0: >abc>(1(2)3)<xyz<
3918 1: (1(2)3)
3919
3920 /(a(?1)b)/DZ
3921 ------------------------------------------------------------------
3922 Bra
3923 CBra 1
3924 a
3925 Recurse
3926 b
3927 Ket
3928 Ket
3929 End
3930 ------------------------------------------------------------------
3931 Capturing subpattern count = 1
3932 No options
3933 First char = 'a'
3934 Need char = 'b'
3935
3936 /(a(?1)+b)/DZ
3937 ------------------------------------------------------------------
3938 Bra
3939 CBra 1
3940 a
3941 Once
3942 Recurse
3943 KetRmax
3944 b
3945 Ket
3946 Ket
3947 End
3948 ------------------------------------------------------------------
3949 Capturing subpattern count = 1
3950 No options
3951 First char = 'a'
3952 Need char = 'b'
3953
3954 /^(\d+|\((?1)([+*-])(?1)\)|-(?1))$/I
3955 Capturing subpattern count = 2
3956 Options: anchored
3957 No first char
3958 No need char
3959 12
3960 0: 12
3961 1: 12
3962 (((2+2)*-3)-7)
3963 0: (((2+2)*-3)-7)
3964 1: (((2+2)*-3)-7)
3965 2: -
3966 -12
3967 0: -12
3968 1: -12
3969 *** Failers
3970 No match
3971 ((2+2)*-3)-7)
3972 No match
3973
3974 /^(x(y|(?1){2})z)/I
3975 Capturing subpattern count = 2
3976 Options: anchored
3977 No first char
3978 No need char
3979 xyz
3980 0: xyz
3981 1: xyz
3982 2: y
3983 xxyzxyzz
3984 0: xxyzxyzz
3985 1: xxyzxyzz
3986 2: xyzxyz
3987 *** Failers
3988 No match
3989 xxyzz
3990 No match
3991 xxyzxyzxyzz
3992 No match
3993
3994 /((< (?: (?(R) \d++ | [^<>]*+) | (?2)) * >))/Ix
3995 Capturing subpattern count = 2
3996 Options: extended
3997 First char = '<'
3998 Need char = '>'
3999 <>
4000 0: <>
4001 1: <>
4002 2: <>
4003 <abcd>
4004 0: <abcd>
4005 1: <abcd>
4006 2: <abcd>
4007 <abc <123> hij>
4008 0: <abc <123> hij>
4009 1: <abc <123> hij>
4010 2: <abc <123> hij>
4011 <abc <def> hij>
4012 0: <def>
4013 1: <def>
4014 2: <def>
4015 <abc<>def>
4016 0: <abc<>def>
4017 1: <abc<>def>
4018 2: <abc<>def>
4019 <abc<>
4020 0: <>
4021 1: <>
4022 2: <>
4023 *** Failers
4024 No match
4025 <abc
4026 No match
4027
4028 /(?1)/I
4029 Failed: reference to non-existent subpattern at offset 3
4030
4031 /((?2)(abc)/I
4032 Failed: missing ) at offset 10
4033
4034 /^(abc)def(?1)/I
4035 Capturing subpattern count = 1
4036 Options: anchored
4037 No first char
4038 No need char
4039 abcdefabc
4040 0: abcdefabc
4041 1: abc
4042
4043 /^(a|b|c)=(?1)+/I
4044 Capturing subpattern count = 1
4045 Options: anchored
4046 No first char
4047 No need char
4048 a=a
4049 0: a=a
4050 1: a
4051 a=b
4052 0: a=b
4053 1: a
4054 a=bc
4055 0: a=bc
4056 1: a
4057
4058 /^(a|b|c)=((?1))+/I
4059 Capturing subpattern count = 2
4060 Options: anchored
4061 No first char
4062 No need char
4063 a=a
4064 0: a=a
4065 1: a
4066 2: a
4067 a=b
4068 0: a=b
4069 1: a
4070 2: b
4071 a=bc
4072 0: a=bc
4073 1: a
4074 2: c
4075
4076 /a(?P<name1>b|c)d(?P<longername2>e)/DZ
4077 ------------------------------------------------------------------
4078 Bra
4079 a
4080 CBra 1
4081 b
4082 Alt
4083 c
4084 Ket
4085 d
4086 CBra 2
4087 e
4088 Ket
4089 Ket
4090 End
4091 ------------------------------------------------------------------
4092 Capturing subpattern count = 2
4093 Named capturing subpatterns:
4094 longername2 2
4095 name1 1
4096 No options
4097 First char = 'a'
4098 Need char = 'e'
4099 abde
4100 0: abde
4101 1: b
4102 2: e
4103 acde
4104 0: acde
4105 1: c
4106 2: e
4107
4108 /(?:a(?P<c>c(?P<d>d)))(?P<a>a)/DZ
4109 ------------------------------------------------------------------
4110 Bra
4111 Bra
4112 a
4113 CBra 1
4114 c
4115 CBra 2
4116 d
4117 Ket
4118 Ket
4119 Ket
4120 CBra 3
4121 a
4122 Ket
4123 Ket
4124 End
4125 ------------------------------------------------------------------
4126 Capturing subpattern count = 3
4127 Named capturing subpatterns:
4128 a 3
4129 c 1
4130 d 2
4131 No options
4132 First char = 'a'
4133 Need char = 'a'
4134
4135 /(?P<a>a)...(?P=a)bbb(?P>a)d/DZ
4136 ------------------------------------------------------------------
4137 Bra
4138 CBra 1
4139 a
4140 Ket
4141 Any
4142 Any
4143 Any
4144 \1
4145 bbb
4146 Recurse
4147 d
4148 Ket
4149 End
4150 ------------------------------------------------------------------
4151 Capturing subpattern count = 1
4152 Max back reference = 1
4153 Named capturing subpatterns:
4154 a 1
4155 No options
4156 First char = 'a'
4157 Need char = 'd'
4158
4159 /^\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
4160 Capturing subpattern count = 4
4161 Max back reference = 4
4162 Named capturing subpatterns:
4163 four 4
4164 one 1
4165 three 3
4166 two 2
4167 May match empty string
4168 Options: anchored caseless
4169 No first char
4170 No need char
4171 1221
4172 0: 1221
4173 1: 1221
4174 2: 1
4175 Satan, oscillate my metallic sonatas!
4176 0: Satan, oscillate my metallic sonatas!
4177 1: <unset>
4178 2: <unset>
4179 3: Satan, oscillate my metallic sonatas
4180 4: S
4181 A man, a plan, a canal: Panama!
4182 0: A man, a plan, a canal: Panama!
4183 1: <unset>
4184 2: <unset>
4185 3: A man, a plan, a canal: Panama
4186 4: A
4187 Able was I ere I saw Elba.
4188 0: Able was I ere I saw Elba.
4189 1: <unset>
4190 2: <unset>
4191 3: Able was I ere I saw Elba
4192 4: A
4193 *** Failers
4194 No match
4195 The quick brown fox
4196 No match
4197
4198 /((?(R)a|b))\1(?1)?/I
4199 Capturing subpattern count = 1
4200 Max back reference = 1
4201 No options
4202 No first char
4203 No need char
4204 bb
4205 0: bb
4206 1: b
4207 bbaa
4208 0: bba
4209 1: b
4210
4211 /(.*)a/Is
4212 Capturing subpattern count = 1
4213 Options: anchored dotall
4214 No first char
4215 Need char = 'a'
4216
4217 /(.*)a\1/Is
4218 Capturing subpattern count = 1
4219 Max back reference = 1
4220 Options: dotall
4221 No first char
4222 Need char = 'a'
4223
4224 /(.*)a(b)\2/Is
4225 Capturing subpattern count = 2
4226 Max back reference = 2
4227 Options: anchored dotall
4228 No first char
4229 Need char = 'b'
4230
4231 /((.*)a|(.*)b)z/Is
4232 Capturing subpattern count = 3
4233 Options: anchored dotall
4234 No first char
4235 Need char = 'z'
4236
4237 /((.*)a|(.*)b)z\1/Is
4238 Capturing subpattern count = 3
4239 Max back reference = 1
4240 Options: dotall
4241 No first char
4242 Need char = 'z'
4243
4244 /((.*)a|(.*)b)z\2/Is
4245 Capturing subpattern count = 3
4246 Max back reference = 2
4247 Options: dotall
4248 No first char
4249 Need char = 'z'
4250
4251 /((.*)a|(.*)b)z\3/Is
4252 Capturing subpattern count = 3
4253 Max back reference = 3
4254 Options: dotall
4255 No first char
4256 Need char = 'z'
4257
4258 /((.*)a|^(.*)b)z\3/Is
4259 Capturing subpattern count = 3
4260 Max back reference = 3
4261 Options: anchored dotall
4262 No first char
4263 Need char = 'z'
4264
4265 /(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a/Is
4266 Capturing subpattern count = 31
4267 May match empty string
4268 Options: anchored dotall
4269 No first char
4270 No need char
4271
4272 /(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a\31/Is
4273 Capturing subpattern count = 31
4274 Max back reference = 31
4275 May match empty string
4276 Options: dotall
4277 No first char
4278 No need char
4279
4280 /(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a\32/Is
4281 Capturing subpattern count = 32
4282 Max back reference = 32
4283 May match empty string
4284 Options: dotall
4285 No first char
4286 No need char
4287
4288 /(a)(bc)/INDZ
4289 ------------------------------------------------------------------
4290 Bra
4291 Bra
4292 a
4293 Ket
4294 Bra
4295 bc
4296 Ket
4297 Ket
4298 End
4299 ------------------------------------------------------------------
4300 Capturing subpattern count = 0
4301 Options: no_auto_capture
4302 First char = 'a'
4303 Need char = 'c'
4304 abc
4305 0: abc
4306
4307 /(?P<one>a)(bc)/INDZ
4308 ------------------------------------------------------------------
4309 Bra
4310 CBra 1
4311 a
4312 Ket
4313 Bra
4314 bc
4315 Ket
4316 Ket
4317 End
4318 ------------------------------------------------------------------
4319 Capturing subpattern count = 1
4320 Named capturing subpatterns:
4321 one 1
4322 Options: no_auto_capture
4323 First char = 'a'
4324 Need char = 'c'
4325 abc
4326 0: abc
4327 1: a
4328
4329 /(a)(?P<named>bc)/INDZ
4330 ------------------------------------------------------------------
4331 Bra
4332 Bra
4333 a
4334 Ket
4335 CBra 1
4336 bc
4337 Ket
4338 Ket
4339 End
4340 ------------------------------------------------------------------
4341 Capturing subpattern count = 1
4342 Named capturing subpatterns:
4343 named 1
4344 Options: no_auto_capture
4345 First char = 'a'
4346 Need char = 'c'
4347
4348 /(a+)*zz/I
4349 Capturing subpattern count = 1
4350 No options
4351 No first char
4352 Need char = 'z'
4353 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaazzbbbbbb\M
4354 Minimum match() limit = 8
4355 Minimum match() recursion limit = 6
4356 0: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaazz
4357 1: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
4358 aaaaaaaaaaaaaz\M
4359 Minimum match() limit = 32768
4360 Minimum match() recursion limit = 29
4361 No match
4362
4363 /(aaa(?C1)bbb|ab)/I
4364 Capturing subpattern count = 1
4365 No options
4366 First char = 'a'
4367 Need char = 'b'
4368 aaabbb
4369 --->aaabbb
4370 1 ^ ^ b
4371 0: aaabbb
4372 1: aaabbb
4373 aaabbb\C*0
4374 --->aaabbb
4375 1 ^ ^ b
4376 0: aaabbb
4377 1: aaabbb
4378 aaabbb\C*1
4379 --->aaabbb
4380 1 ^ ^ b
4381 Callout data = 1
4382 0: ab
4383 1: ab
4384 aaabbb\C*-1
4385 --->aaabbb
4386 1 ^ ^ b
4387 Callout data = -1
4388 No match
4389
4390 /ab(?P<one>cd)ef(?P<two>gh)/I
4391 Capturing subpattern count = 2
4392 Named capturing subpatterns:
4393 one 1
4394 two 2
4395 No options
4396 First char = 'a'
4397 Need char = 'h'
4398 abcdefgh
4399 0: abcdefgh
4400 1: cd
4401 2: gh
4402 abcdefgh\C1\Gtwo
4403 0: abcdefgh
4404 1: cd
4405 2: gh
4406 1C cd (2)
4407 G gh (2) two
4408 abcdefgh\Cone\Ctwo
4409 0: abcdefgh
4410 1: cd
4411 2: gh
4412 C cd (2) one
4413 C gh (2) two
4414 abcdefgh\Cthree
4415 no parentheses with name "three"
4416 0: abcdefgh
4417 1: cd
4418 2: gh
4419 copy substring three failed -7
4420
4421 /(?P<Tes>)(?P<Test>)/DZ
4422 ------------------------------------------------------------------
4423 Bra
4424 CBra 1
4425 Ket
4426 CBra 2
4427 Ket
4428 Ket
4429 End
4430 ------------------------------------------------------------------
4431 Capturing subpattern count = 2
4432 Named capturing subpatterns:
4433 Tes 1
4434 Test 2
4435 May match empty string
4436 No options
4437 No first char
4438 No need char
4439
4440 /(?P<Test>)(?P<Tes>)/DZ
4441 ------------------------------------------------------------------
4442 Bra
4443 CBra 1
4444 Ket
4445 CBra 2
4446 Ket
4447 Ket
4448 End
4449 ------------------------------------------------------------------
4450 Capturing subpattern count = 2
4451 Named capturing subpatterns:
4452 Tes 2
4453 Test 1
4454 May match empty string
4455 No options
4456 No first char
4457 No need char
4458
4459 /(?P<Z>zz)(?P<A>aa)/I
4460 Capturing subpattern count = 2
4461 Named capturing subpatterns:
4462 A 2
4463 Z 1
4464 No options
4465 First char = 'z'
4466 Need char = 'a'
4467 zzaa\CZ
4468 0: zzaa
4469 1: zz
4470 2: aa
4471 C zz (2) Z
4472 zzaa\CA
4473 0: zzaa
4474 1: zz
4475 2: aa
4476 C aa (2) A
4477
4478 /(?P<x>eks)(?P<x>eccs)/I
4479 Failed: two named subpatterns have the same name at offset 15
4480
4481 /(?P<abc>abc(?P<def>def)(?P<abc>xyz))/I
4482 Failed: two named subpatterns have the same name at offset 30
4483
4484 "\[((?P<elem>\d+)(,(?P>elem))*)\]"I
4485 Capturing subpattern count = 3
4486 Named capturing subpatterns:
4487 elem 2
4488 No options
4489 First char = '['
4490 Need char = ']'
4491 [10,20,30,5,5,4,4,2,43,23,4234]
4492 0: [10,20,30,5,5,4,4,2,43,23,4234]
4493 1: 10,20,30,5,5,4,4,2,43,23,4234
4494 2: 10
4495 3: ,4234
4496 *** Failers
4497 No match
4498 []
4499 No match
4500
4501 "\[((?P<elem>\d+)(,(?P>elem))*)?\]"I
4502 Capturing subpattern count = 3
4503 Named capturing subpatterns:
4504 elem 2
4505 No options
4506 First char = '['
4507 Need char = ']'
4508 [10,20,30,5,5,4,4,2,43,23,4234]
4509 0: [10,20,30,5,5,4,4,2,43,23,4234]
4510 1: 10,20,30,5,5,4,4,2,43,23,4234
4511 2: 10
4512 3: ,4234
4513 []
4514 0: []
4515
4516 /(a(b(?2)c))?/DZ
4517 ------------------------------------------------------------------
4518 Bra
4519 Brazero
4520 CBra 1
4521 a
4522 CBra 2
4523 b
4524 Recurse
4525 c
4526 Ket
4527 Ket
4528 Ket
4529 End
4530 ------------------------------------------------------------------
4531 Capturing subpattern count = 2
4532 May match empty string
4533 No options
4534 No first char
4535 No need char
4536
4537 /(a(b(?2)c))*/DZ
4538 ------------------------------------------------------------------
4539 Bra
4540 Brazero
4541 CBra 1
4542 a
4543 CBra 2
4544 b
4545 Recurse
4546 c
4547 Ket
4548 KetRmax
4549 Ket
4550 End
4551 ------------------------------------------------------------------
4552 Capturing subpattern count = 2
4553 May match empty string
4554 No options
4555 No first char
4556 No need char
4557
4558 /(a(b(?2)c)){0,2}/DZ
4559 ------------------------------------------------------------------
4560 Bra
4561 Brazero
4562 Bra
4563 CBra 1
4564 a
4565 CBra 2
4566 b
4567 Recurse
4568 c
4569 Ket
4570 Ket
4571 Brazero
4572 CBra 1
4573 a
4574 CBra 2
4575 b
4576 Recurse
4577 c
4578 Ket
4579 Ket
4580 Ket
4581 Ket
4582 End
4583 ------------------------------------------------------------------
4584 Capturing subpattern count = 2
4585 May match empty string
4586 No options
4587 No first char
4588 No need char
4589
4590 /[ab]{1}+/DZ
4591 ------------------------------------------------------------------
4592 Bra
4593 Once
4594 [ab]{1,1}+
4595 Ket
4596 Ket
4597 End
4598 ------------------------------------------------------------------
4599 Capturing subpattern count = 0
4600 No options
4601 No first char
4602 No need char
4603
4604 /((w\/|-|with)*(free|immediate)*.*?shipping\s*[!.-]*)/Ii
4605 Capturing subpattern count = 3
4606 Options: caseless
4607 No first char
4608 Need char = 'g' (caseless)
4609 Baby Bjorn Active Carrier - With free SHIPPING!!
4610 0: Baby Bjorn Active Carrier - With free SHIPPING!!
4611 1: Baby Bjorn Active Carrier - With free SHIPPING!!
4612
4613 /((w\/|-|with)*(free|immediate)*.*?shipping\s*[!.-]*)/IiS
4614 Capturing subpattern count = 3
4615 Options: caseless
4616 No first char
4617 Need char = 'g' (caseless)
4618 Subject length lower bound = 8
4619 No set of starting bytes
4620 Baby Bjorn Active Carrier - With free SHIPPING!!
4621 0: Baby Bjorn Active Carrier - With free SHIPPING!!
4622 1: Baby Bjorn Active Carrier - With free SHIPPING!!
4623
4624 /a*.*b/ISDZ
4625 ------------------------------------------------------------------
4626 Bra
4627 a*
4628 Any*
4629 b
4630 Ket
4631 End
4632 ------------------------------------------------------------------
4633 Capturing subpattern count = 0
4634 No options
4635 No first char
4636 Need char = 'b'
4637 Subject length lower bound = 1
4638 No set of starting bytes
4639
4640 /(a|b)*.?c/ISDZ
4641 ------------------------------------------------------------------
4642 Bra
4643 Brazero
4644 CBra 1
4645 a
4646 Alt
4647 b
4648 KetRmax
4649 Any?
4650 c
4651 Ket
4652 End
4653 ------------------------------------------------------------------
4654 Capturing subpattern count = 1
4655 No options
4656 No first char
4657 Need char = 'c'
4658 Subject length lower bound = 1
4659 No set of starting bytes
4660
4661 /abc(?C255)de(?C)f/DZ
4662 ------------------------------------------------------------------
4663 Bra
4664 abc
4665 Callout 255 10 1
4666 de
4667 Callout 0 16 1
4668 f
4669 Ket
4670 End
4671 ------------------------------------------------------------------
4672 Capturing subpattern count = 0
4673 No options
4674 First char = 'a'
4675 Need char = 'f'
4676
4677 /abcde/ICDZ
4678 ------------------------------------------------------------------
4679 Bra
4680 Callout 255 0 1
4681 a
4682 Callout 255 1 1
4683 b
4684 Callout 255 2 1
4685 c
4686 Callout 255 3 1
4687 d
4688 Callout 255 4 1
4689 e
4690 Callout 255 5 0
4691 Ket
4692 End
4693 ------------------------------------------------------------------
4694 Capturing subpattern count = 0
4695 Options:
4696 First char = 'a'
4697 Need char = 'e'
4698 abcde
4699 --->abcde
4700 +0 ^ a
4701 +1 ^^ b
4702 +2 ^ ^ c
4703 +3 ^ ^ d
4704 +4 ^ ^ e
4705 +5 ^ ^
4706 0: abcde
4707 abcdfe
4708 --->abcdfe
4709 +0 ^ a
4710 +1 ^^ b
4711 +2 ^ ^ c
4712 +3 ^ ^ d
4713 +4 ^ ^ e
4714 No match
4715
4716 /a*b/ICDZS
4717 ------------------------------------------------------------------
4718 Bra
4719 Callout 255 0 2
4720 a*+
4721 Callout 255 2 1
4722 b
4723 Callout 255 3 0
4724 Ket
4725 End
4726 ------------------------------------------------------------------
4727 Capturing subpattern count = 0
4728 Options:
4729 No first char
4730 Need char = 'b'
4731 Subject length lower bound = 1
4732 Starting byte set: a b
4733 ab
4734 --->ab
4735 +0 ^ a*
4736 +2 ^^ b
4737 +3 ^ ^
4738 0: ab
4739 aaaab
4740 --->aaaab
4741 +0 ^ a*
4742 +2 ^ ^ b
4743 +3 ^ ^
4744 0: aaaab
4745 aaaacb
4746 --->aaaacb
4747 +0 ^ a*
4748 +2 ^ ^ b
4749 +0 ^ a*
4750 +2 ^ ^ b
4751 +0 ^ a*
4752 +2 ^ ^ b
4753 +0 ^ a*
4754 +2 ^^ b
4755 +0 ^ a*
4756 +2 ^ b
4757 +3 ^^
4758 0: b
4759
4760 /a*b/ICDZSS
4761 ------------------------------------------------------------------
4762 Bra
4763 Callout 255 0 2
4764 a*+
4765 Callout 255 2 1
4766 b
4767 Callout 255 3 0
4768 Ket
4769 End
4770 ------------------------------------------------------------------
4771 Capturing subpattern count = 0
4772 Options:
4773 No first char
4774 Need char = 'b'
4775 ab
4776 --->ab
4777 +0 ^ a*
4778 +2 ^^ b
4779 +3 ^ ^
4780 0: ab
4781 aaaab
4782 --->aaaab
4783 +0 ^ a*
4784 +2 ^ ^ b
4785 +3 ^ ^
4786 0: aaaab
4787 aaaacb
4788 --->aaaacb
4789 +0 ^ a*
4790 +2 ^ ^ b
4791 +0 ^ a*
4792 +2 ^ ^ b
4793 +0 ^ a*
4794 +2 ^ ^ b
4795 +0 ^ a*
4796 +2 ^^ b
4797 +0 ^ a*
4798 +2 ^ b
4799 +0 ^ a*
4800 +2 ^ b
4801 +3 ^^
4802 0: b
4803
4804 /a+b/ICDZ
4805 ------------------------------------------------------------------
4806 Bra
4807 Callout 255 0 2
4808 a++
4809 Callout 255 2 1
4810 b
4811 Callout 255 3 0
4812 Ket
4813 End
4814 ------------------------------------------------------------------
4815 Capturing subpattern count = 0
4816 Options:
4817 First char = 'a'
4818 Need char = 'b'
4819 ab
4820 --->ab
4821 +0 ^ a+
4822 +2 ^^ b
4823 +3 ^ ^
4824 0: ab
4825 aaaab
4826 --->aaaab
4827 +0 ^ a+
4828 +2 ^ ^ b
4829 +3 ^ ^
4830 0: aaaab
4831 aaaacb
4832 --->aaaacb
4833 +0 ^ a+
4834 +2 ^ ^ b
4835 +0 ^ a+
4836 +2 ^ ^ b
4837 +0 ^ a+
4838 +2 ^ ^ b
4839 +0 ^ a+
4840 +2 ^^ b
4841 No match
4842
4843 /(abc|def)x/ICDZS
4844 ------------------------------------------------------------------
4845 Bra
4846 Callout 255 0 9
4847 CBra 1
4848 Callout 255 1 1
4849 a
4850 Callout 255 2 1
4851 b
4852 Callout 255 3 1
4853 c
4854 Callout 255 4 0
4855 Alt
4856 Callout 255 5 1
4857 d
4858 Callout 255 6 1
4859 e
4860 Callout 255 7 1
4861 f
4862 Callout 255 8 0
4863 Ket
4864 Callout 255 9 1
4865 x
4866 Callout 255 10 0
4867 Ket
4868 End
4869 ------------------------------------------------------------------
4870 Capturing subpattern count = 1
4871 Options:
4872 No first char
4873 Need char = 'x'
4874 Subject length lower bound = 4
4875 Starting byte set: a d
4876 abcx
4877 --->abcx
4878 +0 ^ (abc|def)
4879 +1 ^ a
4880 +2 ^^ b
4881 +3 ^ ^ c
4882 +4 ^ ^ |
4883 +9 ^ ^ x
4884 +10 ^ ^
4885 0: abcx
4886 1: abc
4887 defx
4888 --->defx
4889 +0 ^ (abc|def)
4890 +1 ^ a
4891 +5 ^ d
4892 +6 ^^ e
4893 +7 ^ ^ f
4894 +8 ^ ^ )
4895 +9 ^ ^ x
4896 +10 ^ ^
4897 0: defx
4898 1: def
4899 ** Failers
4900 No match
4901 abcdefzx
4902 --->abcdefzx
4903 +0 ^ (abc|def)
4904 +1 ^ a
4905 +2 ^^ b
4906 +3 ^ ^ c
4907 +4 ^ ^ |
4908 +9 ^ ^ x
4909 +5 ^ d
4910 +0 ^ (abc|def)
4911 +1 ^ a
4912 +5 ^ d
4913 +6 ^^ e
4914 +7 ^ ^ f
4915 +8 ^ ^ )
4916 +9 ^ ^ x
4917 No match
4918
4919 /(abc|def)x/ICDZSS
4920 ------------------------------------------------------------------
4921 Bra
4922 Callout 255 0 9
4923 CBra 1
4924 Callout 255 1 1
4925 a
4926 Callout 255 2 1
4927 b
4928 Callout 255 3 1
4929 c
4930 Callout 255 4 0
4931 Alt
4932 Callout 255 5 1
4933 d
4934 Callout 255 6 1
4935 e
4936 Callout 255 7 1
4937 f
4938 Callout 255 8 0
4939 Ket
4940 Callout 255 9 1
4941 x
4942 Callout 255 10 0
4943 Ket
4944 End
4945 ------------------------------------------------------------------
4946 Capturing subpattern count = 1
4947 Options:
4948 No first char
4949 Need char = 'x'
4950 abcx
4951 --->abcx
4952 +0 ^ (abc|def)
4953 +1 ^ a
4954 +2 ^^ b
4955 +3 ^ ^ c
4956 +4 ^ ^ |
4957 +9 ^ ^ x
4958 +10 ^ ^
4959 0: abcx
4960 1: abc
4961 defx
4962 --->defx
4963 +0 ^ (abc|def)
4964 +1 ^ a
4965 +5 ^ d
4966 +6 ^^ e
4967 +7 ^ ^ f
4968 +8 ^ ^ )
4969 +9 ^ ^ x
4970 +10 ^ ^
4971 0: defx
4972 1: def
4973 ** Failers
4974 No match
4975 abcdefzx
4976 --->abcdefzx
4977 +0 ^ (abc|def)
4978 +1 ^ a
4979 +2 ^^ b
4980 +3 ^ ^ c
4981 +4 ^ ^ |
4982 +9 ^ ^ x
4983 +5 ^ d
4984 +0 ^ (abc|def)
4985 +1 ^ a
4986 +5 ^ d
4987 +0 ^ (abc|def)
4988 +1 ^ a
4989 +5 ^ d
4990 +0 ^ (abc|def)
4991 +1 ^ a
4992 +5 ^ d
4993 +6 ^^ e
4994 +7 ^ ^ f
4995 +8 ^ ^ )
4996 +9 ^ ^ x
4997 +0 ^ (abc|def)
4998 +1 ^ a
4999 +5 ^ d
5000 +0 ^ (abc|def)
5001 +1 ^ a
5002 +5 ^ d
5003 +0 ^ (abc|def)
5004 +1 ^ a
5005 +5 ^ d
5006 +0 ^ (abc|def)
5007 +1 ^ a
5008 +5 ^ d
5009 No match
5010
5011 /(ab|cd){3,4}/IC
5012 Capturing subpattern count = 1
5013 Options:
5014 No first char
5015 No need char
5016 ababab
5017 --->ababab
5018 +0 ^ (ab|cd){3,4}
5019 +1 ^ a
5020 +2 ^^ b
5021 +3 ^ ^ |
5022 +1 ^ ^ a
5023 +2 ^ ^ b
5024 +3 ^ ^ |
5025 +1 ^ ^ a
5026 +2 ^ ^ b
5027 +3 ^ ^ |
5028 +1 ^ ^ a
5029 +4 ^ ^ c
5030 +12 ^ ^
5031 0: ababab
5032 1: ab
5033 abcdabcd
5034 --->abcdabcd
5035 +0 ^ (ab|cd){3,4}
5036 +1 ^ a
5037 +2 ^^ b
5038 +3 ^ ^ |
5039 +1 ^ ^ a
5040 +4 ^ ^ c
5041 +5 ^ ^ d
5042 +6 ^ ^ )
5043 +1 ^ ^ a
5044 +2 ^ ^ b
5045 +3 ^ ^ |
5046 +1 ^ ^ a
5047 +4 ^ ^ c
5048 +5 ^ ^ d
5049 +6 ^ ^ )
5050 +12 ^ ^
5051 0: abcdabcd
5052 1: cd
5053 abcdcdcdcdcd
5054 --->abcdcdcdcdcd
5055 +0 ^ (ab|cd){3,4}
5056 +1 ^ a
5057 +2 ^^ b
5058 +3 ^ ^ |
5059 +1 ^ ^ a
5060 +4 ^ ^ c
5061 +5 ^ ^ d
5062 +6 ^ ^ )
5063 +1 ^ ^ a
5064 +4 ^ ^ c
5065 +5 ^ ^ d
5066 +6 ^ ^ )
5067 +1 ^ ^ a
5068 +4 ^ ^ c
5069 +5 ^ ^ d
5070 +6 ^ ^ )
5071 +12 ^ ^
5072 0: abcdcdcd
5073 1: cd
5074
5075 /([ab]{,4}c|xy)/ICDZS
5076 ------------------------------------------------------------------
5077 Bra
5078 Callout 255 0 14
5079 CBra 1
5080 Callout 255 1 4
5081 [ab]
5082 Callout 255 5 1
5083 {
5084 Callout 255 6 1
5085 ,
5086 Callout 255 7 1
5087 4
5088 Callout 255 8 1
5089 }
5090 Callout 255 9 1
5091 c
5092 Callout 255 10 0
5093 Alt
5094 Callout 255 11 1
5095 x
5096 Callout 255 12 1
5097 y
5098 Callout 255 13 0
5099 Ket
5100 Callout 255 14 0
5101 Ket
5102 End
5103 ------------------------------------------------------------------
5104 Capturing subpattern count = 1
5105 Options:
5106 No first char
5107 No need char
5108 Subject length lower bound = 2
5109 Starting byte set: a b x
5110 Note: that { does NOT introduce a quantifier
5111 --->Note: that { does NOT introduce a quantifier
5112 +0 ^ ([ab]{,4}c|xy)
5113 +1 ^ [ab]
5114 +5 ^^ {
5115 +11 ^ x
5116 +0 ^ ([ab]{,4}c|xy)
5117 +1 ^ [ab]
5118 +5 ^^ {
5119 +11 ^ x
5120 +0 ^ ([ab]{,4}c|xy)
5121 +1 ^ [ab]
5122 +5 ^^ {
5123 +11 ^ x
5124 No match
5125
5126 /([ab]{,4}c|xy)/ICDZSS
5127 ------------------------------------------------------------------
5128 Bra
5129 Callout 255 0 14
5130 CBra 1
5131 Callout 255 1 4
5132 [ab]
5133 Callout 255 5 1
5134 {
5135 Callout 255 6 1
5136 ,
5137 Callout 255 7 1
5138 4
5139 Callout 255 8 1
5140 }
5141 Callout 255 9 1
5142 c
5143 Callout 255 10 0
5144 Alt
5145 Callout 255 11 1
5146 x
5147 Callout 255 12 1
5148 y
5149 Callout 255 13 0
5150 Ket
5151 Callout 255 14 0
5152 Ket
5153 End
5154 ------------------------------------------------------------------
5155 Capturing subpattern count = 1
5156 Options:
5157 No first char
5158 No need char
5159 Note: that { does NOT introduce a quantifier
5160 --->Note: that { does NOT introduce a quantifier
5161 +0 ^ ([ab]{,4}c|xy)
5162 +1 ^ [ab]
5163 +11 ^ x
5164 +0 ^ ([ab]{,4}c|xy)
5165 +1 ^ [ab]
5166 +11 ^ x
5167 +0 ^ ([ab]{,4}c|xy)
5168 +1 ^ [ab]
5169 +11 ^ x
5170 +0 ^ ([ab]{,4}c|xy)
5171 +1 ^ [ab]
5172 +11 ^ x
5173 +0 ^ ([ab]{,4}c|xy)
5174 +1 ^ [ab]
5175 +11 ^ x
5176 +0 ^ ([ab]{,4}c|xy)
5177 +1 ^ [ab]
5178 +11 ^ x
5179 +0 ^ ([ab]{,4}c|xy)
5180 +1 ^ [ab]
5181 +11 ^ x
5182 +0 ^ ([ab]{,4}c|xy)
5183 +1 ^ [ab]
5184 +11 ^ x
5185 +0 ^ ([ab]{,4}c|xy)
5186 +1 ^ [ab]
5187 +5 ^^ {
5188 +11 ^ x
5189 +0 ^ ([ab]{,4}c|xy)
5190 +1 ^ [ab]
5191 +11 ^ x
5192 +0 ^ ([ab]{,4}c|xy)
5193 +1 ^ [ab]
5194 +11 ^ x
5195 +0 ^ ([ab]{,4}c|xy)
5196 +1 ^ [ab]
5197 +11 ^ x
5198 +0 ^ ([ab]{,4}c|xy)
5199 +1 ^ [ab]
5200 +11 ^ x
5201 +0 ^ ([ab]{,4}c|xy)
5202 +1 ^ [ab]
5203 +11 ^ x
5204 +0 ^ ([ab]{,4}c|xy)
5205 +1 ^ [ab]
5206 +11 ^ x
5207 +0 ^ ([ab]{,4}c|xy)
5208 +1 ^ [ab]
5209 +11 ^ x
5210 +0 ^ ([ab]{,4}c|xy)
5211 +1 ^ [ab]
5212 +11 ^ x
5213 +0 ^ ([ab]{,4}c|xy)
5214 +1 ^ [ab]
5215 +11 ^ x
5216 +0 ^ ([ab]{,4}c|xy)
5217 +1 ^ [ab]
5218 +11 ^ x
5219 +0 ^ ([ab]{,4}c|xy)
5220 +1 ^ [ab]
5221 +11 ^ x
5222 +0 ^ ([ab]{,4}c|xy)
5223 +1 ^ [ab]
5224 +11 ^ x
5225 +0 ^ ([ab]{,4}c|xy)
5226 +1 ^ [ab]
5227 +11 ^ x
5228 +0 ^ ([ab]{,4}c|xy)
5229 +1 ^ [ab]
5230 +11 ^ x
5231 +0 ^ ([ab]{,4}c|xy)
5232 +1 ^ [ab]
5233 +11 ^ x
5234 +0 ^ ([ab]{,4}c|xy)
5235 +1 ^ [ab]
5236 +11 ^ x
5237 +0 ^ ([ab]{,4}c|xy)
5238 +1 ^ [ab]
5239 +11 ^ x
5240 +0 ^ ([ab]{,4}c|xy)
5241 +1 ^ [ab]
5242 +11 ^ x
5243 +0 ^ ([ab]{,4}c|xy)
5244 +1 ^ [ab]
5245 +11 ^ x
5246 +0 ^ ([ab]{,4}c|xy)
5247 +1 ^ [ab]
5248 +11 ^ x
5249 +0 ^ ([ab]{,4}c|xy)
5250 +1 ^ [ab]
5251 +11 ^ x
5252 +0 ^ ([ab]{,4}c|xy)
5253 +1 ^ [ab]
5254 +11 ^ x
5255 +0 ^ ([ab]{,4}c|xy)
5256 +1 ^ [ab]
5257 +11 ^ x
5258 +0 ^ ([ab]{,4}c|xy)
5259 +1 ^ [ab]
5260 +5 ^^ {
5261 +11 ^ x
5262 +0 ^ ([ab]{,4}c|xy)
5263 +1 ^ [ab]
5264 +11 ^ x
5265 +0 ^ ([ab]{,4}c|xy)
5266 +1 ^ [ab]
5267 +11 ^ x
5268 +0 ^ ([ab]{,4}c|xy)
5269 +1 ^ [ab]
5270 +11 ^ x
5271 +0 ^ ([ab]{,4}c|xy)
5272 +1 ^ [ab]
5273 +5 ^^ {
5274 +11 ^ x
5275 +0 ^ ([ab]{,4}c|xy)
5276 +1 ^ [ab]
5277 +11 ^ x
5278 +0 ^ ([ab]{,4}c|xy)
5279 +1 ^ [ab]
5280 +11 ^ x
5281 +0 ^ ([ab]{,4}c|xy)
5282 +1 ^ [ab]
5283 +11 ^ x
5284 +0 ^ ([ab]{,4}c|xy)
5285 +1 ^ [ab]
5286 +11 ^ x
5287 +0 ^ ([ab]{,4}c|xy)
5288 +1 ^ [ab]
5289 +11 ^ x
5290 +0 ^ ([ab]{,4}c|xy)
5291 +1 ^ [ab]
5292 +11 ^ x
5293 +0 ^ ([ab]{,4}c|xy)
5294 +1 ^ [ab]
5295 +11 ^ x
5296 +0 ^ ([ab]{,4}c|xy)
5297 +1 ^ [ab]
5298 +11 ^ x
5299 No match
5300
5301 /([ab]{1,4}c|xy){4,5}?123/ICDZ
5302 ------------------------------------------------------------------
5303 Bra
5304 Callout 255 0 21
5305 CBra 1
5306 Callout 255 1 9
5307 [ab]{1,4}+
5308 Callout 255 10 1
5309 c
5310 Callout 255 11 0
5311 Alt
5312 Callout 255 12 1
5313 x
5314 Callout 255 13 1
5315 y
5316 Callout 255 14 0
5317 Ket
5318 CBra 1
5319 Callout 255 1 9
5320 [ab]{1,4}+
5321 Callout 255 10 1
5322 c
5323 Callout 255 11 0
5324 Alt
5325 Callout 255 12 1
5326 x
5327 Callout 255 13 1
5328 y
5329 Callout 255 14 0
5330 Ket
5331 CBra 1
5332 Callout 255 1 9
5333 [ab]{1,4}+
5334 Callout 255 10 1
5335 c
5336 Callout 255 11 0
5337 Alt
5338 Callout 255 12 1
5339 x
5340 Callout 255 13 1
5341 y
5342 Callout 255 14 0
5343 Ket
5344 CBra 1
5345 Callout 255 1 9
5346 [ab]{1,4}+
5347 Callout 255 10 1
5348 c
5349 Callout 255 11 0
5350 Alt
5351 Callout 255 12 1
5352 x
5353 Callout 255 13 1
5354 y
5355 Callout 255 14 0
5356 Ket
5357 Braminzero
5358 CBra 1
5359 Callout 255 1 9
5360 [ab]{1,4}+
5361 Callout 255 10 1
5362 c
5363 Callout 255 11 0
5364 Alt
5365 Callout 255 12 1
5366 x
5367 Callout 255 13 1
5368 y
5369 Callout 255 14 0
5370 Ket
5371 Callout 255 21 1
5372 1
5373 Callout 255 22 1
5374 2
5375 Callout 255 23 1
5376 3
5377 Callout 255 24 0
5378 Ket
5379 End
5380 ------------------------------------------------------------------
5381 Capturing subpattern count = 1
5382 Options:
5383 No first char
5384 Need char = '3'
5385 aacaacaacaacaac123
5386 --->aacaacaacaacaac123
5387 +0 ^ ([ab]{1,4}c|xy){4,5}?
5388 +1 ^ [ab]{1,4}
5389 +10 ^ ^ c
5390 +11 ^ ^ |
5391 +1 ^ ^ [ab]{1,4}
5392 +10 ^ ^ c
5393 +11 ^ ^ |
5394 +1 ^ ^ [ab]{1,4}
5395 +10 ^ ^ c
5396 +11 ^ ^ |
5397 +1 ^ ^ [ab]{1,4}
5398 +10 ^ ^ c
5399 +11 ^ ^ |
5400 +21 ^ ^ 1
5401 +1 ^ ^ [ab]{1,4}
5402 +10 ^ ^ c
5403 +11 ^ ^ |
5404 +21 ^ ^ 1
5405 +22 ^ ^ 2
5406 +23 ^ ^ 3
5407 +24 ^ ^
5408 0: aacaacaacaacaac123
5409 1: aac
5410
5411 /\b.*/I
5412 Capturing subpattern count = 0
5413 Max lookbehind = 1
5414 May match empty string
5415 No options
5416 No first char
5417 No need char
5418 ab cd\>1
5419 0: cd
5420
5421 /\b.*/Is
5422 Capturing subpattern count = 0
5423 Max lookbehind = 1
5424 May match empty string
5425 Options: dotall
5426 No first char
5427 No need char
5428 ab cd\>1
5429 0: cd
5430
5431 /(?!.bcd).*/I
5432 Capturing subpattern count = 0
5433 May match empty string
5434 No options
5435 No first char
5436 No need char
5437 Xbcd12345
5438 0: bcd12345
5439
5440 /abcde/I
5441 Capturing subpattern count = 0
5442 No options
5443 First char = 'a'
5444 Need char = 'e'
5445 ab\P
5446 Partial match: ab
5447 abc\P
5448 Partial match: abc
5449 abcd\P
5450 Partial match: abcd
5451 abcde\P
5452 0: abcde
5453 the quick brown abc\P
5454 Partial match: abc
5455 ** Failers\P
5456 No match
5457 the quick brown abxyz fox\P
5458 No match
5459
5460 "^(0?[1-9]|[12][0-9]|3[01])/(0?[1-9]|1[012])/(20)?\d\d$"I
5461 Capturing subpattern count = 3
5462 Options: anchored
5463 No first char
5464 Need char = '/'
5465 13/05/04\P
5466 0: 13/05/04
5467 1: 13
5468 2: 05
5469 13/5/2004\P
5470 0: 13/5/2004
5471 1: 13
5472 2: 5
5473 3: 20
5474 02/05/09\P
5475 0: 02/05/09
5476 1: 02
5477 2: 05
5478 1\P
5479 Partial match: 1
5480 1/2\P
5481 Partial match: 1/2
5482 1/2/0\P
5483 Partial match: 1/2/0
5484 1/2/04\P
5485 0: 1/2/04
5486 1: 1
5487 2: 2
5488 0\P
5489 Partial match: 0
5490 02/\P
5491 Partial match: 02/
5492 02/0\P
5493 Partial match: 02/0
5494 02/1\P
5495 Partial match: 02/1
5496 ** Failers\P
5497 No match
5498 \P
5499 No match
5500 123\P
5501 No match
5502 33/4/04\P
5503 No match
5504 3/13/04\P
5505 No match
5506 0/1/2003\P
5507 No match
5508 0/\P
5509 No match
5510 02/0/\P
5511 No match
5512 02/13\P
5513 No match
5514
5515 /0{0,2}ABC/I
5516 Capturing subpattern count = 0
5517 No options
5518 No first char
5519 Need char = 'C'
5520
5521 /\d{3,}ABC/I
5522 Capturing subpattern count = 0
5523 No options
5524 No first char
5525 Need char = 'C'
5526
5527 /\d*ABC/I
5528 Capturing subpattern count = 0
5529 No options
5530 No first char
5531 Need char = 'C'
5532
5533 /[abc]+DE/I
5534 Capturing subpattern count = 0
5535 No options
5536 No first char
5537 Need char = 'E'
5538
5539 /[abc]?123/I
5540 Capturing subpattern count = 0
5541 No options
5542 No first char
5543 Need char = '3'
5544 123\P
5545 0: 123
5546 a\P
5547 Partial match: a
5548 b\P
5549 Partial match: b
5550 c\P
5551 Partial match: c
5552 c12\P
5553 Partial match: c12
5554 c123\P
5555 0: c123
5556
5557 /^(?:\d){3,5}X/I
5558 Capturing subpattern count = 0
5559 Options: anchored
5560 No first char
5561 Need char = 'X'
5562 1\P
5563 Partial match: 1
5564 123\P
5565 Partial match: 123
5566 123X
5567 0: 123X
5568 1234\P
5569 Partial match: 1234
5570 1234X
5571 0: 1234X
5572 12345\P
5573 Partial match: 12345
5574 12345X
5575 0: 12345X
5576 *** Failers
5577 No match
5578 1X
5579 No match
5580 123456\P
5581 No match
5582
5583 /abc/IS>testsavedregex
5584 Capturing subpattern count = 0
5585 No options
5586 First char = 'a'
5587 Need char = 'c'
5588 Subject length lower bound = 3
5589 No set of starting bytes
5590 Compiled pattern written to testsavedregex
5591 Study data written to testsavedregex
5592 <testsavedregex
5593 Compiled pattern loaded from testsavedregex
5594 Study data loaded from testsavedregex
5595 abc
5596 0: abc
5597 ** Failers
5598 No match
5599 bca
5600 No match
5601
5602 /abc/ISS>testsavedregex
5603 Capturing subpattern count = 0
5604 No options
5605 First char = 'a'
5606 Need char = 'c'
5607 Compiled pattern written to testsavedregex
5608 <testsavedregex
5609 Compiled pattern loaded from testsavedregex
5610 No study data
5611 abc
5612 0: abc
5613 ** Failers
5614 No match
5615 bca
5616 No match
5617
5618 /abc/IFS>testsavedregex
5619 Capturing subpattern count = 0
5620 No options
5621 First char = 'a'
5622 Need char = 'c'
5623 Subject length lower bound = 3
5624 No set of starting bytes
5625 Compiled pattern written to testsavedregex
5626 Study data written to testsavedregex
5627 <testsavedregex
5628 Compiled pattern (byte-inverted) loaded from testsavedregex
5629 Study data loaded from testsavedregex
5630 abc
5631 0: abc
5632 ** Failers
5633 No match
5634 bca
5635 No match
5636
5637 /abc/IFSS>testsavedregex
5638 Capturing subpattern count = 0
5639 No options
5640 First char = 'a'
5641 Need char = 'c'
5642 Compiled pattern written to testsavedregex
5643 <testsavedregex
5644 Compiled pattern (byte-inverted) loaded from testsavedregex
5645 No study data
5646 abc
5647 0: abc
5648 ** Failers
5649 No match
5650 bca
5651 No match
5652
5653 /(a|b)/IS>testsavedregex
5654 Capturing subpattern count = 1
5655 No options
5656 No first char
5657 No need char
5658 Subject length lower bound = 1
5659 Starting byte set: a b
5660 Compiled pattern written to testsavedregex
5661 Study data written to testsavedregex
5662 <testsavedregex
5663 Compiled pattern loaded from testsavedregex
5664 Study data loaded from testsavedregex
5665 abc
5666 0: a
5667 1: a
5668 ** Failers
5669 0: a
5670 1: a
5671 def
5672 No match
5673
5674 /(a|b)/ISS>testsavedregex
5675 Capturing subpattern count = 1
5676 No options
5677 No first char
5678 No need char
5679 Compiled pattern written to testsavedregex
5680 <testsavedregex
5681 Compiled pattern loaded from testsavedregex
5682 No study data
5683 abc
5684 0: a
5685 1: a
5686 ** Failers
5687 0: a
5688 1: a
5689 def
5690 No match
5691
5692 /(a|b)/ISF>testsavedregex
5693 Capturing subpattern count = 1
5694 No options
5695 No first char
5696 No need char
5697 Subject length lower bound = 1
5698 Starting byte set: a b
5699 Compiled pattern written to testsavedregex
5700 Study data written to testsavedregex
5701 <testsavedregex
5702 Compiled pattern (byte-inverted) loaded from testsavedregex
5703 Study data loaded from testsavedregex
5704 abc
5705 0: a
5706 1: a
5707 ** Failers
5708 0: a
5709 1: a
5710 def
5711 No match
5712
5713 /(a|b)/ISSF>testsavedregex
5714 Capturing subpattern count = 1
5715 No options
5716 No first char
5717 No need char
5718 Compiled pattern written to testsavedregex
5719 <testsavedregex
5720 Compiled pattern (byte-inverted) loaded from testsavedregex
5721 No study data
5722 abc
5723 0: a
5724 1: a
5725 ** Failers
5726 0: a
5727 1: a
5728 def
5729 No match
5730
5731 ~<(\w+)/?>(.)*</(\1)>~smgI
5732 Capturing subpattern count = 3
5733 Max back reference = 1
5734 Options: multiline dotall
5735 First char = '<'
5736 Need char = '>'
5737 \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>
5738 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>
5739 1: seite
5740 2: \x0a
5741 3: seite
5742
5743 /^a/IF
5744 Capturing subpattern count = 0
5745 Options: anchored
5746 No first char
5747 No need char
5748
5749 /line\nbreak/I
5750 Capturing subpattern count = 0
5751 Contains explicit CR or LF match
5752 No options
5753 First char = 'l'
5754 Need char = 'k'
5755 this is a line\nbreak
5756 0: line\x0abreak
5757 line one\nthis is a line\nbreak in the second line
5758 0: line\x0abreak
5759
5760 /line\nbreak/If
5761 Capturing subpattern count = 0
5762 Contains explicit CR or LF match
5763 Options: firstline
5764 First char = 'l'
5765 Need char = 'k'
5766 this is a line\nbreak
5767 0: line\x0abreak
5768 ** Failers
5769 No match
5770 line one\nthis is a line\nbreak in the second line
5771 No match
5772
5773 /line\nbreak/Imf
5774 Capturing subpattern count = 0
5775 Contains explicit CR or LF match
5776 Options: multiline firstline
5777 First char = 'l'
5778 Need char = 'k'
5779 this is a line\nbreak
5780 0: line\x0abreak
5781 ** Failers
5782 No match
5783 line one\nthis is a line\nbreak in the second line
5784 No match
5785
5786 /(?i)(?-i)AbCd/I
5787 Capturing subpattern count = 0
5788 No options
5789 First char = 'A'
5790 Need char = 'd'
5791 AbCd
5792 0: AbCd
5793 ** Failers
5794 No match
5795 abcd
5796 No match
5797
5798 /a{11111111111111111111}/I
5799 Failed: number too big in {} quantifier at offset 22
5800
5801 /(){64294967295}/I
5802 Failed: number too big in {} quantifier at offset 14
5803
5804 /(){2,4294967295}/I
5805 Failed: number too big in {} quantifier at offset 15
5806
5807 "(?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
5808 Capturing subpattern count = 1
5809 Max back reference = 1
5810 No options
5811 First char = 'a' (caseless)
5812 Need char = 'B'
5813 abcdefghijklAkB
5814 0: abcdefghijklAkB
5815 1: k
5816
5817 "(?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
5818 Capturing subpattern count = 12
5819 Max back reference = 11
5820 Named capturing subpatterns:
5821 n0 1
5822 n1 2
5823 n10 11
5824 n11 12
5825 n2 3
5826 n3 4
5827 n4 5
5828 n5 6
5829 n6 7
5830 n7 8
5831 n8 9
5832 n9 10
5833 No options
5834 First char = 'a'
5835 Need char = 'B'
5836 abcdefghijklAkB
5837 0: abcdefghijklAkB
5838 1: a
5839 2: b
5840 3: c
5841 4: d
5842 5: e
5843 6: f
5844 7: g
5845 8: h
5846 9: i
5847 10: j
5848 11: k
5849 12: l
5850
5851 "(a)(b)(c)(d)(e)(f)(g)(h)(i)(j)(k)(l)A\11B"I
5852 Capturing subpattern count = 12
5853 Max back reference = 11
5854 No options
5855 First char = 'a'
5856 Need char = 'B'
5857 abcdefghijklAkB
5858 0: abcdefghijklAkB
5859 1: a
5860 2: b
5861 3: c
5862 4: d
5863 5: e
5864 6: f
5865 7: g
5866 8: h
5867 9: i
5868 10: j
5869 11: k
5870 12: l
5871
5872 "(?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
5873 Capturing subpattern count = 101
5874 Named capturing subpatterns:
5875 name0 1
5876 name1 2
5877 name10 11
5878 name100 101
5879 name11 12
5880 name12 13
5881 name13 14
5882 name14 15
5883 name15 16
5884 name16 17
5885 name17 18
5886 name18 19
5887 name19 20
5888 name2 3
5889 name20 21
5890 name21 22
5891 name22 23
5892 name23 24
5893 name24 25
5894 name25 26
5895 name26 27
5896 name27 28
5897 name28 29
5898 name29 30
5899 name3 4
5900 name30 31
5901 name31 32
5902 name32 33
5903 name33 34
5904 name34 35
5905 name35 36
5906 name36 37
5907 name37 38
5908 name38 39
5909 name39 40
5910 name4 5
5911 name40 41
5912 name41 42
5913 name42 43
5914 name43 44
5915 name44 45
5916 name45 46
5917 name46 47
5918 name47 48
5919 name48 49
5920 name49 50
5921 name5 6
5922 name50 51
5923 name51 52
5924 name52 53
5925 name53 54
5926 name54 55
5927 name55 56
5928 name56 57
5929 name57 58
5930 name58 59
5931 name59 60
5932 name6 7
5933 name60 61
5934 name61 62
5935 name62 63
5936 name63 64
5937 name64 65
5938 name65 66
5939 name66 67
5940 name67 68
5941 name68 69
5942 name69 70
5943 name7 8
5944 name70 71
5945 name71 72
5946 name72 73
5947 name73 74
5948 name74 75
5949 name75 76
5950 name76 77
5951 name77 78
5952 name78 79
5953 name79 80
5954 name8 9
5955 name80 81
5956 name81 82
5957 name82 83
5958 name83 84
5959 name84 85
5960 name85 86
5961 name86 87
5962 name87 88
5963 name88 89
5964 name89 90
5965 name9 10
5966 name90 91
5967 name91 92
5968 name92 93
5969 name93 94
5970 name94 95
5971 name95 96
5972 name96 97
5973 name97 98
5974 name98 99
5975 name99 100
5976 No options
5977 First char = 'a'
5978 Need char = 'a'
5979 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
5980 Matched, but too many substrings
5981 0: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
5982 1: a
5983 2: a
5984 3: a
5985 4: a
5986 5: a
5987 6: a
5988 7: a
5989 8: a
5990 9: a
5991 10: a
5992 11: a
5993 12: a
5994 13: a
5995 14: a
5996
5997 "(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
5998 Capturing subpattern count = 101
5999 No options
6000 First char = 'a'
6001 Need char = 'a'
6002 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
6003 Matched, but too many substrings
6004 0: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
6005 1: a
6006 2: a
6007 3: a
6008 4: a
6009 5: a
6010 6: a
6011 7: a
6012 8: a
6013 9: a
6014 10: a
6015 11: a
6016 12: a
6017 13: a
6018 14: a
6019
6020 /[^()]*(?:\((?R)\)[^()]*)*/I
6021 Capturing subpattern count = 0
6022 May match empty string
6023 No options
6024 No first char
6025 No need char
6026 (this(and)that
6027 0:
6028 (this(and)that)
6029 0: (this(and)that)
6030 (this(and)that)stuff
6031 0: (this(and)that)stuff
6032
6033 /[^()]*(?:\((?>(?R))\)[^()]*)*/I
6034 Capturing subpattern count = 0
6035 May match empty string
6036 No options
6037 No first char
6038 No need char
6039 (this(and)that
6040 0:
6041 (this(and)that)
6042 0: (this(and)that)
6043
6044 /[^()]*(?:\((?R)\))*[^()]*/I
6045 Capturing subpattern count = 0
6046 May match empty string
6047 No options
6048 No first char
6049 No need char
6050 (this(and)that
6051 0:
6052 (this(and)that)
6053 0: (this(and)that)
6054
6055 /(?:\((?R)\))*[^()]*/I
6056 Capturing subpattern count = 0
6057 May match empty string
6058 No options
6059 No first char
6060 No need char
6061 (this(and)that
6062 0:
6063 (this(and)that)
6064 0:
6065 ((this))
6066 0: ((this))
6067
6068 /(?:\((?R)\))|[^()]*/I
6069 Capturing subpattern count = 0
6070 May match empty string
6071 No options
6072 No first char
6073 No need char
6074 (this(and)that
6075 0:
6076 (this(and)that)
6077 0:
6078 (this)
6079 0: (this)
6080 ((this))
6081 0: ((this))
6082
6083 /\x{0000ff}/I
6084 Capturing subpattern count = 0
6085 No options
6086 First char = \xff
6087 No need char
6088
6089 /^((?P<A>a1)|(?P<A>a2)b)/I
6090 Failed: two named subpatterns have the same name at offset 17
6091
6092 /^((?P<A>a1)|(?P<A>a2)b)/IJ
6093 Capturing subpattern count = 3
6094 Named capturing subpatterns:
6095 A 2
6096 A 3
6097 Options: anchored dupnames
6098 No first char
6099 No need char
6100 a1b\CA
6101 0: a1
6102 1: a1
6103 2: a1
6104 C a1 (2) A
6105 a2b\CA
6106 0: a2b
6107 1: a2b
6108 2: <unset>
6109 3: a2
6110 C a2 (2) A
6111 ** Failers
6112 No match
6113 a1b\CZ\CA
6114 no parentheses with name "Z"
6115 0: a1
6116 1: a1
6117 2: a1
6118 copy substring Z failed -7
6119 C a1 (2) A
6120
6121 /(?|(?<a>)(?<b>)(?<a>)|(?<a>)(?<b>)(?<a>))/IJ
6122 Capturing subpattern count = 3
6123 Named capturing subpatterns:
6124 a 1
6125 a 3
6126 b 2
6127 May match empty string
6128 Options: dupnames
6129 No first char
6130 No need char
6131
6132 /^(?P<A>a)(?P<A>b)/IJ
6133 Capturing subpattern count = 2
6134 Named capturing subpatterns:
6135 A 1
6136 A 2
6137 Options: anchored dupnames
6138 No first char
6139 No need char
6140 ab\CA
6141 0: ab
6142 1: a
6143 2: b
6144 C a (1) A
6145
6146 /^(?P<A>a)(?P<A>b)|cd/IJ
6147 Capturing subpattern count = 2
6148 Named capturing subpatterns:
6149 A 1
6150 A 2
6151 Options: dupnames
6152 No first char
6153 No need char
6154 ab\CA
6155 0: ab
6156 1: a
6157 2: b
6158 C a (1) A
6159 cd\CA
6160 0: cd
6161 copy substring A failed -7
6162
6163 /^(?P<A>a)(?P<A>b)|cd(?P<A>ef)(?P<A>gh)/IJ
6164 Capturing subpattern count = 4
6165 Named capturing subpatterns:
6166 A 1
6167 A 2
6168 A 3
6169 A 4
6170 Options: dupnames
6171 No first char
6172 No need char
6173 cdefgh\CA
6174 0: cdefgh
6175 1: <unset>
6176 2: <unset>
6177 3: ef
6178 4: gh
6179 C ef (2) A
6180
6181 /^((?P<A>a1)|(?P<A>a2)b)/IJ
6182 Capturing subpattern count = 3
6183 Named capturing subpatterns:
6184 A 2
6185 A 3
6186 Options: anchored dupnames
6187 No first char
6188 No need char
6189 a1b\GA
6190 0: a1
6191 1: a1
6192 2: a1
6193 G a1 (2) A
6194 a2b\GA
6195 0: a2b
6196 1: a2b
6197 2: <unset>
6198 3: a2
6199 G a2 (2) A
6200 ** Failers
6201 No match
6202 a1b\GZ\GA
6203 no parentheses with name "Z"
6204 0: a1
6205 1: a1
6206 2: a1
6207 get substring Z failed -7
6208 G a1 (2) A
6209
6210 /^(?P<A>a)(?P<A>b)/IJ
6211 Capturing subpattern count = 2
6212 Named capturing subpatterns:
6213 A 1
6214 A 2
6215 Options: anchored dupnames
6216 No first char
6217 No need char
6218 ab\GA
6219 0: ab
6220 1: a
6221 2: b
6222 G a (1) A
6223
6224 /^(?P<A>a)(?P<A>b)|cd/IJ
6225 Capturing subpattern count = 2
6226 Named capturing subpatterns:
6227 A 1
6228 A 2
6229 Options: dupnames
6230 No first char
6231 No need char
6232 ab\GA
6233 0: ab
6234 1: a
6235 2: b
6236 G a (1) A
6237 cd\GA
6238 0: cd
6239 get substring A failed -7
6240
6241 /^(?P<A>a)(?P<A>b)|cd(?P<A>ef)(?P<A>gh)/IJ
6242 Capturing subpattern count = 4
6243 Named capturing subpatterns:
6244 A 1
6245 A 2
6246 A 3
6247 A 4
6248 Options: dupnames
6249 No first char
6250 No need char
6251 cdefgh\GA
6252 0: cdefgh
6253 1: <unset>
6254 2: <unset>
6255 3: ef
6256 4: gh
6257 G ef (2) A
6258
6259 /(?J)^((?P<A>a1)|(?P<A>a2)b)/I
6260 Capturing subpattern count = 3
6261 Named capturing subpatterns:
6262 A 2
6263 A 3
6264 Options: anchored dupnames
6265 Duplicate name status changes
6266 No first char
6267 No need char
6268 a1b\CA
6269 0: a1
6270 1: a1
6271 2: a1
6272 C a1 (2) A
6273 a2b\CA
6274 0: a2b
6275 1: a2b
6276 2: <unset>
6277 3: a2
6278 C a2 (2) A
6279
6280 /^(?P<A>a) (?J:(?P<B>b)(?P<B>c)) (?P<A>d)/I
6281 Failed: two named subpatterns have the same name at offset 37
6282
6283 / In this next test, J is not set at the outer level; consequently it isn't
6284 set in the pattern's options; consequently pcre_get_named_substring() produces
6285 a random value. /Ix
6286 Capturing subpattern count = 1
6287 Options: extended
6288 First char = 'I'
6289 Need char = 'e'
6290
6291 /^(?P<A>a) (?J:(?P<B>b)(?P<B>c)) (?P<C>d)/I
6292 Capturing subpattern count = 4
6293 Named capturing subpatterns:
6294 A 1
6295 B 2
6296 B 3
6297 C 4
6298 Options: anchored
6299 Duplicate name status changes
6300 No first char
6301 No need char
6302 a bc d\CA\CB\CC
6303 0: a bc d
6304 1: a
6305 2: b
6306 3: c
6307 4: d
6308 C a (1) A
6309 C b (1) B
6310 C d (1) C
6311
6312 /^(?P<A>a)?(?(A)a|b)/I
6313 Capturing subpattern count = 1
6314 Named capturing subpatterns:
6315 A 1
6316 Options: anchored
6317 No first char
6318 No need char
6319 aabc
6320 0: aa
6321 1: a
6322 bc
6323 0: b
6324 ** Failers
6325 No match
6326 abc
6327 No match
6328
6329 /(?:(?(ZZ)a|b)(?P<ZZ>X))+/I
6330 Capturing subpattern count = 1
6331 Named capturing subpatterns:
6332 ZZ 1
6333 No options
6334 No first char
6335 Need char = 'X'
6336 bXaX
6337 0: bXaX
6338 1: X
6339
6340 /(?:(?(2y)a|b)(X))+/I
6341 Failed: reference to non-existent subpattern at offset 9
6342
6343 /(?:(?(ZA)a|b)(?P<ZZ>X))+/I
6344 Failed: reference to non-existent subpattern at offset 9
6345
6346 /(?:(?(ZZ)a|b)(?(ZZ)a|b)(?P<ZZ>X))+/I
6347 Capturing subpattern count = 1
6348 Named capturing subpatterns:
6349 ZZ 1
6350 No options
6351 No first char
6352 Need char = 'X'
6353 bbXaaX
6354 0: bbXaaX
6355 1: X
6356
6357 /(?:(?(ZZ)a|\(b\))\\(?P<ZZ>X))+/I
6358 Capturing subpattern count = 1
6359 Named capturing subpatterns:
6360 ZZ 1
6361 No options
6362 No first char
6363 Need char = 'X'
6364 (b)\\Xa\\X
6365 0: (b)\Xa\X
6366 1: X
6367
6368 /(?P<ABC/I
6369 Failed: syntax error in subpattern name (missing terminator) at offset 7
6370
6371 /(?:(?(A)(?P=A)a|b)(?P<A>X|Y))+/I
6372 Capturing subpattern count = 1
6373 Max back reference = 1
6374 Named capturing subpatterns:
6375 A 1
6376 No options
6377 No first char
6378 No need char
6379 bXXaYYaY
6380 0: bXXaYYaY
6381 1: Y
6382 bXYaXXaX
6383 0: bX
6384 1: X
6385
6386 /()()()()()()()()()(?:(?(A)(?P=A)a|b)(?P<A>X|Y))+/I
6387 Capturing subpattern count = 10
6388 Max back reference = 10
6389 Named capturing subpatterns:
6390 A 10
6391 No options
6392 No first char
6393 No need char
6394 bXXaYYaY
6395 0: bXXaYYaY
6396 1:
6397 2:
6398 3:
6399 4:
6400 5:
6401 6:
6402 7:
6403 8:
6404 9:
6405 10: Y
6406
6407 /\s*,\s*/IS
6408 Capturing subpattern count = 0
6409 No options
6410 No first char
6411 Need char = ','
6412 Subject length lower bound = 1
6413 Starting byte set: \x09 \x0a \x0b \x0c \x0d \x20 ,
6414 \x0b,\x0b
6415 0: \x0b,\x0b
6416 \x0c,\x0d
6417 0: \x0c,\x0d
6418
6419 /^abc/Im
6420 Capturing subpattern count = 0
6421 Options: multiline
6422 First char at start or follows newline
6423 Need char = 'c'
6424 xyz\nabc
6425 0: abc
6426 xyz\nabc\<lf>
6427 0: abc
6428 xyz\r\nabc\<lf>
6429 0: abc
6430 xyz\rabc\<cr>
6431 0: abc
6432 xyz\r\nabc\<crlf>
6433 0: abc
6434 ** Failers
6435 No match
6436 xyz\nabc\<cr>
6437 No match
6438 xyz\r\nabc\<cr>
6439 No match
6440 xyz\nabc\<crlf>
6441 No match
6442 xyz\rabc\<crlf>
6443 No match
6444 xyz\rabc\<lf>
6445 No match
6446
6447 /abc$/Im<lf>
6448 Capturing subpattern count = 0
6449 Options: multiline
6450 Forced newline sequence: LF
6451 First char = 'a'
6452 Need char = 'c'
6453 xyzabc
6454 0: abc
6455 xyzabc\n
6456 0: abc
6457 xyzabc\npqr
6458 0: abc
6459 xyzabc\r\<cr>
6460 0: abc
6461 xyzabc\rpqr\<cr>
6462 0: abc
6463 xyzabc\r\n\<crlf>
6464 0: abc
6465 xyzabc\r\npqr\<crlf>
6466 0: abc
6467 ** Failers
6468 No match
6469 xyzabc\r
6470 No match
6471 xyzabc\rpqr
6472 No match
6473 xyzabc\r\n
6474 No match
6475 xyzabc\r\npqr
6476 No match
6477
6478 /^abc/Im<cr>
6479 Capturing subpattern count = 0
6480 Options: multiline
6481 Forced newline sequence: CR
6482 First char at start or follows newline
6483 Need char = 'c'
6484 xyz\rabcdef
6485 0: abc
6486 xyz\nabcdef\<lf>
6487 0: abc
6488 ** Failers
6489 No match
6490 xyz\nabcdef
6491 No match
6492
6493 /^abc/Im<lf>
6494 Capturing subpattern count = 0
6495 Options: multiline
6496 Forced newline sequence: LF
6497 First char at start or follows newline
6498 Need char = 'c'
6499 xyz\nabcdef
6500 0: abc
6501 xyz\rabcdef\<cr>
6502 0: abc
6503 ** Failers
6504 No match
6505 xyz\rabcdef
6506 No match
6507
6508 /^abc/Im<crlf>
6509 Capturing subpattern count = 0
6510 Options: multiline
6511 Forced newline sequence: CRLF
6512 First char at start or follows newline
6513 Need char = 'c'
6514 xyz\r\nabcdef
6515 0: abc
6516 xyz\rabcdef\<cr>
6517 0: abc
6518 ** Failers
6519 No match
6520 xyz\rabcdef
6521 No match
6522
6523 /^abc/Im<bad>
6524 Unknown newline type at: <bad>
6525
6526
6527 /abc/I
6528 Capturing subpattern count = 0
6529 No options
6530 First char = 'a'
6531 Need char = 'c'
6532 xyz\rabc\<bad>
6533 Unknown newline type at: <bad>
6534 abc
6535 0: abc
6536
6537 /.*/I<lf>
6538 Capturing subpattern count = 0
6539 May match empty string
6540 Options:
6541 Forced newline sequence: LF
6542 First char at start or follows newline
6543 No need char
6544 abc\ndef
6545 0: abc
6546 abc\rdef
6547 0: abc\x0ddef
6548 abc\r\ndef
6549 0: abc\x0d
6550 \<cr>abc\ndef
6551 0: abc\x0adef
6552 \<cr>abc\rdef
6553 0: abc
6554 \<cr>abc\r\ndef
6555 0: abc
6556 \<crlf>abc\ndef
6557 0: abc\x0adef
6558 \<crlf>abc\rdef
6559 0: abc\x0ddef
6560 \<crlf>abc\r\ndef
6561 0: abc
6562
6563 /\w+(.)(.)?def/Is
6564 Capturing subpattern count = 2
6565 Options: dotall
6566 No first char
6567 Need char = 'f'
6568 abc\ndef
6569 0: abc\x0adef
6570 1: \x0a
6571 abc\rdef
6572 0: abc\x0ddef
6573 1: \x0d
6574 abc\r\ndef
6575 0: abc\x0d\x0adef
6576 1: \x0d
6577 2: \x0a
6578
6579 +((?:\s|//.*\\n|/[*](?:\\n|.)*?[*]/)*)+I
6580 Capturing subpattern count = 1
6581 May match empty string
6582 No options
6583 No first char
6584 No need char
6585 /* this is a C style comment */\M
6586 Minimum match() limit = 120
6587 Minimum match() recursion limit = 6
6588 0: /* this is a C style comment */
6589 1: /* this is a C style comment */
6590
6591 /(?P<B>25[0-5]|2[0-4]\d|[01]?\d?\d)(?:\.(?P>B)){3}/I
6592 Capturing subpattern count = 1
6593 Named capturing subpatterns:
6594 B 1
6595 No options
6596 No first char
6597 Need char = '.'
6598
6599 /()()()()()()()()()()()()()()()()()()()()
6600 ()()()()()()()()()()()()()()()()()()()()
6601 ()()()()()()()()()()()()()()()()()()()()
6602 ()()()()()()()()()()()()()()()()()()()()
6603 ()()()()()()()()()()()()()()()()()()()()
6604 (.(.))/Ix
6605 Capturing subpattern count = 102
6606 Options: extended
6607 No first char
6608 No need char
6609 XY\O400
6610 0: XY
6611 1:
6612 2:
6613 3:
6614 4:
6615 5:
6616 6:
6617 7:
6618 8:
6619 9:
6620 10:
6621 11:
6622 12:
6623 13:
6624 14:
6625 15:
6626 16:
6627 17:
6628 18:
6629 19:
6630 20:
6631 21:
6632 22:
6633 23:
6634 24:
6635 25:
6636 26:
6637 27:
6638 28:
6639 29:
6640 30:
6641 31:
6642 32:
6643 33:
6644 34:
6645 35:
6646 36:
6647 37:
6648 38:
6649 39:
6650 40:
6651 41:
6652 42:
6653 43:
6654 44:
6655 45:
6656 46:
6657 47:
6658 48:
6659 49:
6660 50:
6661 51:
6662 52:
6663 53:
6664 54:
6665 55:
6666 56:
6667 57:
6668 58:
6669 59:
6670 60:
6671 61:
6672 62:
6673 63:
6674 64:
6675 65:
6676 66:
6677 67:
6678 68:
6679 69:
6680 70:
6681 71:
6682 72:
6683 73:
6684 74:
6685 75:
6686 76:
6687 77:
6688 78:
6689 79:
6690 80:
6691 81:
6692 82:
6693 83:
6694 84:
6695 85:
6696 86:
6697 87:
6698 88:
6699 89:
6700 90:
6701 91:
6702 92:
6703 93:
6704 94:
6705 95:
6706 96:
6707 97:
6708 98:
6709 99:
6710 100:
6711 101: XY
6712 102: Y
6713
6714 /(a*b|(?i:c*(?-i)d))/IS
6715 Capturing subpattern count = 1
6716 No options
6717 No first char
6718 No need char
6719 Subject length lower bound = 1
6720 Starting byte set: C a b c d
6721
6722 /()[ab]xyz/IS
6723 Capturing subpattern count = 1
6724 No options
6725 No first char
6726 Need char = 'z'
6727 Subject length lower bound = 4
6728 Starting byte set: a b
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 /(|c)[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 c
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 /(d?|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 d
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 /^a*b\d/DZ
6771 ------------------------------------------------------------------
6772 Bra
6773 ^
6774 a*+
6775 b
6776 \d
6777 Ket
6778 End
6779 ------------------------------------------------------------------
6780 Capturing subpattern count = 0
6781 Options: anchored
6782 No first char
6783 Need char = 'b'
6784
6785 /^a*+b\d/DZ
6786 ------------------------------------------------------------------
6787 Bra
6788 ^
6789 a*+
6790 b
6791 \d
6792 Ket
6793 End
6794 ------------------------------------------------------------------
6795 Capturing subpattern count = 0
6796 Options: anchored
6797 No first char
6798 Need char = 'b'
6799
6800 /^a*?b\d/DZ
6801 ------------------------------------------------------------------
6802 Bra
6803 ^
6804 a*+
6805 b
6806 \d
6807 Ket
6808 End
6809 ------------------------------------------------------------------
6810 Capturing subpattern count = 0
6811 Options: anchored
6812 No first char
6813 Need char = 'b'
6814
6815 /^a+A\d/DZ
6816 ------------------------------------------------------------------
6817 Bra
6818 ^
6819 a++
6820 A
6821 \d
6822 Ket
6823 End
6824 ------------------------------------------------------------------
6825 Capturing subpattern count = 0
6826 Options: anchored
6827 No first char
6828 Need char = 'A'
6829 aaaA5
6830 0: aaaA5
6831 ** Failers
6832 No match
6833 aaaa5
6834 No match
6835
6836 /^a*A\d/IiDZ
6837 ------------------------------------------------------------------
6838 Bra
6839 ^
6840 /i a*
6841 /i A
6842 \d
6843 Ket
6844 End
6845 ------------------------------------------------------------------
6846 Capturing subpattern count = 0
6847 Options: anchored caseless
6848 No first char
6849 Need char = 'A' (caseless)
6850 aaaA5
6851 0: aaaA5
6852 aaaa5
6853 0: aaaa5
6854
6855 /(a*|b*)[cd]/IS
6856 Capturing subpattern count = 1
6857 No options
6858 No first char
6859 No need char
6860 Subject length lower bound = 1
6861 Starting byte set: a b c d
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 = 2
6885 Starting byte set: a b
6886
6887 /((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((
6888 ((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((
6889 (((
6890 a
6891 ))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
6892 ))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
6893 )))
6894 /Ix
6895 Capturing subpattern count = 203
6896 Options: extended
6897 First char = 'a'
6898 No need char
6899 large nest
6900 Matched, but too many substrings
6901 0: a
6902 1: a
6903 2: a
6904 3: a
6905 4: a
6906 5: a
6907 6: a
6908 7: a
6909 8: a
6910 9: a
6911 10: a
6912 11: a
6913 12: a
6914 13: a
6915 14: a
6916
6917 /a*\d/BZ
6918 ------------------------------------------------------------------
6919 Bra
6920 a*+
6921 \d
6922 Ket
6923 End
6924 ------------------------------------------------------------------
6925
6926 /a*\D/BZ
6927 ------------------------------------------------------------------
6928 Bra
6929 a*
6930 \D
6931 Ket
6932 End
6933 ------------------------------------------------------------------
6934
6935 /0*\d/BZ
6936 ------------------------------------------------------------------
6937 Bra
6938 0*
6939 \d
6940 Ket
6941 End
6942 ------------------------------------------------------------------
6943
6944 /0*\D/BZ
6945 ------------------------------------------------------------------
6946 Bra
6947 0*+
6948 \D
6949 Ket
6950 End
6951 ------------------------------------------------------------------
6952
6953 /a*\s/BZ
6954 ------------------------------------------------------------------
6955 Bra
6956 a*+
6957 \s
6958 Ket
6959 End
6960 ------------------------------------------------------------------
6961
6962 /a*\S/BZ
6963 ------------------------------------------------------------------
6964 Bra
6965 a*
6966 \S
6967 Ket
6968 End
6969 ------------------------------------------------------------------
6970
6971 / *\s/BZ
6972 ------------------------------------------------------------------
6973 Bra
6974 *
6975 \s
6976 Ket
6977 End
6978 ------------------------------------------------------------------
6979
6980 / *\S/BZ
6981 ------------------------------------------------------------------
6982 Bra
6983 *+
6984 \S
6985 Ket
6986 End
6987 ------------------------------------------------------------------
6988
6989 /a*\w/BZ
6990 ------------------------------------------------------------------
6991 Bra
6992 a*
6993 \w
6994 Ket
6995 End
6996 ------------------------------------------------------------------
6997
6998 /a*\W/BZ
6999 ------------------------------------------------------------------
7000 Bra
7001 a*+
7002 \W
7003 Ket
7004 End
7005 ------------------------------------------------------------------
7006
7007 /=*\w/BZ
7008 ------------------------------------------------------------------
7009 Bra
7010 =*+
7011 \w
7012 Ket
7013 End
7014 ------------------------------------------------------------------
7015
7016 /=*\W/BZ
7017 ------------------------------------------------------------------
7018 Bra
7019 =*
7020 \W
7021 Ket
7022 End
7023 ------------------------------------------------------------------
7024
7025 /\d*a/BZ
7026 ------------------------------------------------------------------
7027 Bra
7028 \d*+
7029 a
7030 Ket
7031 End
7032 ------------------------------------------------------------------
7033
7034 /\d*2/BZ
7035 ------------------------------------------------------------------
7036 Bra
7037 \d*
7038 2
7039 Ket
7040 End
7041 ------------------------------------------------------------------
7042
7043 /\d*\d/BZ
7044 ------------------------------------------------------------------
7045 Bra
7046 \d*
7047 \d
7048 Ket
7049 End
7050 ------------------------------------------------------------------
7051
7052 /\d*\D/BZ
7053 ------------------------------------------------------------------
7054 Bra
7055 \d*+
7056 \D
7057 Ket
7058 End
7059 ------------------------------------------------------------------
7060
7061 /\d*\s/BZ
7062 ------------------------------------------------------------------
7063 Bra
7064 \d*+
7065 \s
7066 Ket
7067 End
7068 ------------------------------------------------------------------
7069
7070 /\d*\S/BZ
7071 ------------------------------------------------------------------
7072 Bra
7073 \d*
7074 \S
7075 Ket
7076 End
7077 ------------------------------------------------------------------
7078
7079 /\d*\w/BZ
7080 ------------------------------------------------------------------
7081 Bra
7082 \d*
7083 \w
7084 Ket
7085 End
7086 ------------------------------------------------------------------
7087
7088 /\d*\W/BZ
7089 ------------------------------------------------------------------
7090 Bra
7091 \d*+
7092 \W
7093 Ket
7094 End
7095 ------------------------------------------------------------------
7096
7097 /\D*a/BZ
7098 ------------------------------------------------------------------
7099 Bra
7100 \D*
7101 a
7102 Ket
7103 End
7104 ------------------------------------------------------------------
7105
7106 /\D*2/BZ
7107 ------------------------------------------------------------------
7108 Bra
7109 \D*+
7110 2
7111 Ket
7112 End
7113 ------------------------------------------------------------------
7114
7115 /\D*\d/BZ
7116 ------------------------------------------------------------------
7117 Bra
7118 \D*+
7119 \d
7120 Ket
7121 End
7122 ------------------------------------------------------------------
7123
7124 /\D*\D/BZ
7125 ------------------------------------------------------------------
7126 Bra
7127 \D*
7128 \D
7129 Ket
7130 End
7131 ------------------------------------------------------------------
7132
7133 /\D*\s/BZ
7134 ------------------------------------------------------------------
7135 Bra
7136 \D*
7137 \s
7138 Ket
7139 End
7140 ------------------------------------------------------------------
7141
7142 /\D*\S/BZ
7143 ------------------------------------------------------------------
7144 Bra
7145 \D*
7146 \S
7147 Ket
7148 End
7149 ------------------------------------------------------------------
7150
7151 /\D*\w/BZ
7152 ------------------------------------------------------------------
7153 Bra
7154 \D*
7155 \w
7156 Ket
7157 End
7158 ------------------------------------------------------------------
7159
7160 /\D*\W/BZ
7161 ------------------------------------------------------------------
7162 Bra
7163 \D*
7164 \W
7165 Ket
7166 End
7167 ------------------------------------------------------------------
7168
7169 /\s*a/BZ
7170 ------------------------------------------------------------------
7171 Bra
7172 \s*+
7173 a
7174 Ket
7175 End
7176 ------------------------------------------------------------------
7177
7178 /\s*2/BZ
7179 ------------------------------------------------------------------
7180 Bra
7181 \s*+
7182 2
7183 Ket
7184 End
7185 ------------------------------------------------------------------
7186
7187 /\s*\d/BZ
7188 ------------------------------------------------------------------
7189 Bra
7190 \s*+
7191 \d
7192 Ket
7193 End
7194 ------------------------------------------------------------------
7195
7196 /\s*\D/BZ
7197 ------------------------------------------------------------------
7198 Bra
7199 \s*
7200 \D
7201 Ket
7202 End
7203 ------------------------------------------------------------------
7204
7205 /\s*\s/BZ
7206 ------------------------------------------------------------------
7207 Bra
7208 \s*
7209 \s
7210 Ket
7211 End
7212 ------------------------------------------------------------------
7213
7214 /\s*\S/BZ
7215 ------------------------------------------------------------------
7216 Bra
7217 \s*+
7218 \S
7219 Ket
7220 End
7221 ------------------------------------------------------------------
7222
7223 /\s*\w/BZ
7224 ------------------------------------------------------------------
7225 Bra
7226 \s*+
7227 \w
7228 Ket
7229 End
7230 ------------------------------------------------------------------
7231
7232 /\s*\W/BZ
7233 ------------------------------------------------------------------
7234 Bra
7235 \s*
7236 \W
7237 Ket
7238 End
7239