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

Contents of /code/trunk/testdata/testoutput2

Parent Directory Parent Directory | Revision Log Revision Log


Revision 454 - (show annotations) (download)
Tue Sep 22 09:42:11 2009 UTC (4 years, 11 months ago) by ph10
File size: 195133 byte(s)
Allow fixed-length subroutine calls in lookbehinds.

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