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

Contents of /code/trunk/testdata/testoutput2

Parent Directory Parent Directory | Revision Log Revision Log


Revision 426 - (show annotations) (download)
Wed Aug 26 15:38:32 2009 UTC (5 years ago) by ph10
File size: 195778 byte(s)
Remove restrictions on pcre_exec() partial matching.

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