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

Contents of /code/trunk/testdata/testoutput2

Parent Directory Parent Directory | Revision Log Revision Log


Revision 604 - (show annotations) (download)
Thu Jun 2 19:04:54 2011 UTC (2 years, 10 months ago) by ph10
File size: 231902 byte(s)
Refactoring to reduce stack usage for possessively quantified subpatterns. Also 
fixed a number of bugs related to repeated subpatterns. Some further tidies 
consequent on the removal of OP_OPT are also in this patch.

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