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

Contents of /code/trunk/testdata/testoutput2

Parent Directory Parent Directory | Revision Log Revision Log


Revision 226 - (show annotations) (download)
Tue Aug 21 11:46:08 2007 UTC (7 years, 3 months ago) by ph10
File size: 186971 byte(s)
Don't advance by 2 if explicit \r or \n in the pattern. Add 
PCRE_INFO_HASCRORLF.

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