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

Contents of /code/trunk/testdata/testoutput2

Parent Directory Parent Directory | Revision Log Revision Log


Revision 702 - (show annotations) (download)
Tue Sep 20 15:45:06 2011 UTC (2 years, 11 months ago) by ph10
File size: 246065 byte(s)
Restore tail-recursion optimizations when no (*THEN) in pattern.

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