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

Contents of /code/trunk/testdata/testoutput2

Parent Directory Parent Directory | Revision Log Revision Log


Revision 612 - (show annotations) (download)
Sat Jul 2 15:20:59 2011 UTC (3 years, 5 months ago) by ph10
File size: 238039 byte(s)
Fix two study bugs concerned with minimum subject lengths; add features to 
pcretest so that all tests can be run with or without study; adjust tests so 
that this happens.

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