1 # This set of tests is not Perl-compatible. It checks on special features
2 # of PCRE2's API, error diagnostics, and the compiled code of some patterns.
3 # It also checks the non-Perl syntax that PCRE2 supports (Python, .NET,
4 # Oniguruma). There are also some tests where PCRE2 and Perl differ,
5 # either because PCRE2 can't be compatible, or there is a possible Perl
8 # NOTE: This is a non-UTF set of tests. When UTF support is needed, use
12 #newline_default lf any anycrlf
14 # Test binary zeroes in the pattern
16 # /a\0B/ where 0 is a binary zero
18 ------------------------------------------------------------------
23 ------------------------------------------------------------------
27 # /a0b/ where 0 is a binary zero
29 ------------------------------------------------------------------
34 ------------------------------------------------------------------
38 # /(?#B0C)DE/ where 0 is a binary zero
39 /28 3f 23 42 00 43 29 44 45/B,hex
40 ------------------------------------------------------------------
45 ------------------------------------------------------------------
50 Capturing subpattern count = 1
51 May match empty string
52 Subject length lower bound = 0
55 Capturing subpattern count = 0
58 Subject length lower bound = 3
72 Capturing subpattern count = 0
73 Compile options: <none>
74 Overall options: anchored
76 Subject length lower bound = 3
88 Capturing subpattern count = 0
91 Subject length lower bound = 3
94 Capturing subpattern count = 0
95 Starting code units: a b
97 Subject length lower bound = 2
100 Capturing subpattern count = 0
101 First code unit = 'a'
103 Subject length lower bound = 5
106 Capturing subpattern count = 1
107 First code unit = 'a'
108 Subject length lower bound = 2
111 Capturing subpattern count = 0
112 Compile options: <none>
113 Overall options: anchored
114 First code unit = 'a'
115 Subject length lower bound = 3
123 Failed: error 103 at offset 3: unrecognized character follows \
126 Failed: error 111 at offset 2: unrecognized character after (? or (?-
129 Failed: error 104 at offset 5: numbers out of order in {} quantifier
132 Failed: error 105 at offset 7: number too big in {} quantifier
135 Failed: error 106 at offset 5: missing terminating ] for character class
138 Failed: error 107 at offset 2: invalid escape sequence in character class
141 Failed: error 107 at offset 2: invalid escape sequence in character class
144 Failed: error 107 at offset 2: invalid escape sequence in character class
147 Failed: error 108 at offset 3: range out of order in character class
150 Failed: error 109 at offset 1: quantifier does not follow a repeatable item
153 Failed: error 114 at offset 4: missing closing parenthesis
156 Failed: error 118 at offset 7: missing ) after (?# comment
159 Failed: error 111 at offset 2: unrecognized character after (? or (?-
162 Capturing subpattern count = 0
163 First code unit at start or follows newline
165 Subject length lower bound = 1
168 Capturing subpattern count = 0
169 First code unit at start or follows newline
171 Subject length lower bound = 1
174 Capturing subpattern count = 0
175 Starting code units: c d e
176 Subject length lower bound = 3
177 this sentence eventually mentions a cat
179 this sentences rambles on and on for a while and then reaches elephant
183 Capturing subpattern count = 0
184 Starting code units: c d e
185 Subject length lower bound = 3
186 this sentence eventually mentions a cat
188 this sentences rambles on and on for a while and then reaches elephant
192 Capturing subpattern count = 0
194 Starting code units: C D E c d e
195 Subject length lower bound = 3
196 this sentence eventually mentions a CAT cat
198 this sentences rambles on and on for a while to elephant ElePhant
202 Capturing subpattern count = 0
203 Starting code units: a b c d
204 Subject length lower bound = 1
207 Capturing subpattern count = 1
208 Starting code units: \x00 \x01 \x02 \x03 \x04 \x05 \x06 \x07 \x08 \x09 \x0a
209 \x0b \x0c \x0d \x0e \x0f \x10 \x11 \x12 \x13 \x14 \x15 \x16 \x17 \x18 \x19
210 \x1a \x1b \x1c \x1d \x1e \x1f \x20 ! " # $ % & ' ( ) * + , - . / : ; < = >
211 ? @ 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
212 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
213 \x84 \x85 \x86 \x87 \x88 \x89 \x8a \x8b \x8c \x8d \x8e \x8f \x90 \x91 \x92
214 \x93 \x94 \x95 \x96 \x97 \x98 \x99 \x9a \x9b \x9c \x9d \x9e \x9f \xa0 \xa1
215 \xa2 \xa3 \xa4 \xa5 \xa6 \xa7 \xa8 \xa9 \xaa \xab \xac \xad \xae \xaf \xb0
216 \xb1 \xb2 \xb3 \xb4 \xb5 \xb6 \xb7 \xb8 \xb9 \xba \xbb \xbc \xbd \xbe \xbf
217 \xc0 \xc1 \xc2 \xc3 \xc4 \xc5 \xc6 \xc7 \xc8 \xc9 \xca \xcb \xcc \xcd \xce
218 \xcf \xd0 \xd1 \xd2 \xd3 \xd4 \xd5 \xd6 \xd7 \xd8 \xd9 \xda \xdb \xdc \xdd
219 \xde \xdf \xe0 \xe1 \xe2 \xe3 \xe4 \xe5 \xe6 \xe7 \xe8 \xe9 \xea \xeb \xec
220 \xed \xee \xef \xf0 \xf1 \xf2 \xf3 \xf4 \xf5 \xf6 \xf7 \xf8 \xf9 \xfa \xfb
222 Subject length lower bound = 1
225 Capturing subpattern count = 1
226 Starting code units: \x09 \x0a \x0b \x0c \x0d \x20 a b
227 Subject length lower bound = 1
230 Failed: error 115 at offset 4: reference to non-existent subpattern
233 Failed: error 109 at offset 4: quantifier does not follow a repeatable item
236 Capturing subpattern count = 3
237 Max back reference = 2
238 First code unit = 'a'
240 Subject length lower bound = 4
252 Matched, but too many substrings
255 Matched, but too many substrings
259 Matched, but too many substrings
270 Capturing subpattern count = 3
271 Max back reference = 2
272 First code unit = 'a'
273 Subject length lower bound = 3
281 Matched, but too many substrings
297 Matched, but too many substrings
300 Matched, but too many substrings
304 Matched, but too many substrings
314 /abc$/I,dollar_endonly
315 Capturing subpattern count = 0
316 Options: dollar_endonly
317 First code unit = 'a'
319 Subject length lower bound = 3
329 Failed: error 115 at offset 16: reference to non-existent subpattern
331 /the quick brown fox/I
332 Capturing subpattern count = 0
333 First code unit = 't'
335 Subject length lower bound = 19
337 0: the quick brown fox
338 this is a line with the quick brown fox
339 0: the quick brown fox
341 /the quick brown fox/I,anchored
342 Capturing subpattern count = 0
344 First code unit = 't'
345 Subject length lower bound = 19
347 0: the quick brown fox
349 this is a line with the quick brown fox
353 Failed: error 111 at offset 4: unrecognized character after (? or (?-
356 Capturing subpattern count = 0
357 Starting code units: a d
358 Subject length lower bound = 3
365 Capturing subpattern count = 3
366 First code unit at start or follows newline
367 Subject length lower bound = 3
379 Failed: error 122 at offset 0: unmatched closing parenthesis
382 Failed: error 106 at offset 4: missing terminating ] for character class
385 Capturing subpattern count = 0
386 Starting code units: \x00 \x01 \x02 \x03 \x04 \x05 \x06 \x07 \x08 \x09 \x0a
387 \x0b \x0c \x0d \x0e \x0f \x10 \x11 \x12 \x13 \x14 \x15 \x16 \x17 \x18 \x19
388 \x1a \x1b \x1c \x1d \x1e \x1f ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6
389 7 8 9 : ; < = > ? @ 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 [
390 \ ] ^ _ ` b c d f g h j k l m n p q r s t v w x y z { | } ~ \x7f \x80 \x81
391 \x82 \x83 \x84 \x85 \x86 \x87 \x88 \x89 \x8a \x8b \x8c \x8d \x8e \x8f \x90
392 \x91 \x92 \x93 \x94 \x95 \x96 \x97 \x98 \x99 \x9a \x9b \x9c \x9d \x9e \x9f
393 \xa0 \xa1 \xa2 \xa3 \xa4 \xa5 \xa6 \xa7 \xa8 \xa9 \xaa \xab \xac \xad \xae
394 \xaf \xb0 \xb1 \xb2 \xb3 \xb4 \xb5 \xb6 \xb7 \xb8 \xb9 \xba \xbb \xbc \xbd
395 \xbe \xbf \xc0 \xc1 \xc2 \xc3 \xc4 \xc5 \xc6 \xc7 \xc8 \xc9 \xca \xcb \xcc
396 \xcd \xce \xcf \xd0 \xd1 \xd2 \xd3 \xd4 \xd5 \xd6 \xd7 \xd8 \xd9 \xda \xdb
397 \xdc \xdd \xde \xdf \xe0 \xe1 \xe2 \xe3 \xe4 \xe5 \xe6 \xe7 \xe8 \xe9 \xea
398 \xeb \xec \xed \xee \xef \xf0 \xf1 \xf2 \xf3 \xf4 \xf5 \xf6 \xf7 \xf8 \xf9
399 \xfa \xfb \xfc \xfd \xfe \xff
400 Subject length lower bound = 3
401 co-processors, and for
405 Capturing subpattern count = 0
406 First code unit = '<'
408 Subject length lower bound = 2
413 Capturing subpattern count = 0
414 First code unit = '<'
416 Subject length lower bound = 2
421 Capturing subpattern count = 0
423 First code unit = '<'
425 Subject length lower bound = 2
430 Capturing subpattern count = 0
431 First code unit = '<'
433 Subject length lower bound = 2
438 Capturing subpattern count = 0
440 First code unit = '<'
442 Subject length lower bound = 2
447 Capturing subpattern count = 0
449 First code unit = '='
451 Subject length lower bound = 3
456 Capturing subpattern count = 0
457 First code unit = '='
459 Subject length lower bound = 3
463 /(?<!bar|cattle)foo/I
464 Capturing subpattern count = 0
466 First code unit = 'f'
468 Subject length lower bound = 3
480 Failed: error 125 at offset 3: lookbehind assertion is not fixed length
482 /12345(?<=aaa|b{0,3})b/
483 Failed: error 125 at offset 5: lookbehind assertion is not fixed length
488 Capturing subpattern count = 0
489 First code unit = 'a' (caseless)
490 Last code unit = 'c' (caseless)
491 Subject length lower bound = 3
494 Capturing subpattern count = 1
495 First code unit = 'a'
496 Subject length lower bound = 1
499 Capturing subpattern count = 0
500 Compile options: <none>
501 Overall options: anchored
502 First code unit = '1'
503 Subject length lower bound = 4
506 Capturing subpattern count = 1
507 Compile options: <none>
508 Overall options: anchored
509 Starting code units: D b d
510 Subject length lower bound = 1
513 Capturing subpattern count = 0
514 May match empty string
515 Compile options: <none>
516 Overall options: anchored
517 Subject length lower bound = 0
520 Capturing subpattern count = 0
521 Starting code units: a b c d
522 Subject length lower bound = 1
525 Capturing subpattern count = 0
526 Starting code units: A B C D a b c d
527 Subject length lower bound = 1
530 Capturing subpattern count = 1
531 Starting code units: b c x y
532 Subject length lower bound = 1
535 Capturing subpattern count = 1
537 First code unit at start or follows newline
538 Subject length lower bound = 1
541 Capturing subpattern count = 1
543 First code unit at start or follows newline
544 Subject length lower bound = 1
547 Failed: error 127 at offset 3: conditional group contains more than two branches
550 Failed: error 127 at offset 0: conditional group contains more than two branches
553 Failed: error 124 at offset 4: missing closing parenthesis for condition
556 Failed: error 124 at offset 4: missing closing parenthesis for condition
559 Failed: error 128 at offset 2: assertion expected after (?( or (?(?C)
562 Failed: error 115 at offset 3: reference to non-existent subpattern
565 Failed: error 128 at offset 2: assertion expected after (?( or (?(?C)
568 Capturing subpattern count = 1
569 Max back reference = 1
570 First code unit = 'b'
572 Subject length lower bound = 9
575 Capturing subpattern count = 1
576 Max back reference = 1
577 First code unit = 'b' (caseless)
578 Last code unit = 'h' (caseless)
579 Subject length lower bound = 9
582 ------------------------------------------------------------------
589 ------------------------------------------------------------------
590 Capturing subpattern count = 1
591 First code unit = 'b' (caseless)
592 Subject length lower bound = 1
594 /(a*b|(?i:c*(?-i)d))/I
595 Capturing subpattern count = 1
596 Starting code units: C a b c d
597 Subject length lower bound = 1
600 Capturing subpattern count = 0
601 First code unit = 'a'
602 Subject length lower bound = 1
614 Capturing subpattern count = 0
616 First code unit = 'a'
617 Subject length lower bound = 1
629 Capturing subpattern count = 0
631 Compile options: multiline
632 Overall options: anchored multiline
633 First code unit = 'a'
634 Subject length lower bound = 3
637 Capturing subpattern count = 0
639 First code unit at start or follows newline
641 Subject length lower bound = 3
643 /^((a+)(?U)([ab]+)(?-U)([bc]+)(\w*))/I
644 Capturing subpattern count = 5
645 Compile options: <none>
646 Overall options: anchored
647 First code unit = 'a'
648 Subject length lower bound = 3
650 0: aaaaabbbbbcccccdef
651 1: aaaaabbbbbcccccdef
658 Capturing subpattern count = 0
660 Starting code units: a b
661 Subject length lower bound = 1
663 /(?<!foo)(alpha|omega)/I
664 Capturing subpattern count = 1
666 Starting code units: a o
668 Subject length lower bound = 5
671 Capturing subpattern count = 0
672 Starting code units: a b
673 Subject length lower bound = 1
676 Capturing subpattern count = 0
678 Contains explicit CR or LF match
681 Subject length lower bound = 3
693 Capturing subpattern count = 0
695 Contains explicit CR or LF match
697 First code unit at start or follows newline
699 Subject length lower bound = 3
711 Capturing subpattern count = 0
713 First code unit at start or follows newline
715 Subject length lower bound = 3
725 Failed: error 125 at offset 0: lookbehind assertion is not fixed length
728 Failed: error 125 at offset 6: lookbehind assertion is not fixed length
731 Failed: error 125 at offset 0: lookbehind assertion is not fixed length
733 /The next three are in testinput2 because they have variable length branches/
735 /(?<=bullock|donkey)-cart/I
736 Capturing subpattern count = 0
738 First code unit = '-'
740 Subject length lower bound = 5
752 Capturing subpattern count = 0
754 May match empty string
755 Subject length lower bound = 0
757 /(?>.*)(?<=(abcd)|(xyz))/I
758 Capturing subpattern count = 2
760 May match empty string
761 Subject length lower bound = 0
770 /(?<=ab(?i)x(?-i)y|(?i)z|b)ZZ/I
771 Capturing subpattern count = 0
773 First code unit = 'Z'
775 Subject length lower bound = 2
799 Capturing subpattern count = 1
801 First code unit = 'b'
803 Subject length lower bound = 3
812 # This one is here because Perl behaves differently; see also the following.
815 Capturing subpattern count = 1
816 Max back reference = 1
817 Compile options: <none>
818 Overall options: anchored
819 Starting code units: a
820 Subject length lower bound = 4
827 # Perl does not fail these two for the final subjects. Neither did PCRE until
828 # release 8.01. The problem is in backtracking into a subpattern that contains
829 # a recursive reference to itself. PCRE has now made these into atomic patterns.
847 # These are syntax tests from Perl 5.005
850 Failed: error 108 at offset 4: range out of order in character class
853 Failed: error 106 at offset 4: missing terminating ] for character class
856 Failed: error 106 at offset 2: missing terminating ] for character class
859 Failed: error 109 at offset 0: quantifier does not follow a repeatable item
862 Failed: error 109 at offset 1: quantifier does not follow a repeatable item
865 Failed: error 122 at offset 3: unmatched closing parenthesis
868 Failed: error 114 at offset 4: missing closing parenthesis
871 Failed: error 109 at offset 2: quantifier does not follow a repeatable item
874 Failed: error 122 at offset 0: unmatched closing parenthesis
877 Failed: error 115 at offset 1: reference to non-existent subpattern
880 Failed: error 115 at offset 1: reference to non-existent subpattern
883 Failed: error 115 at offset 5: reference to non-existent subpattern
886 Failed: error 108 at offset 4: range out of order in character class
889 Failed: error 106 at offset 4: missing terminating ] for character class
892 Failed: error 106 at offset 2: missing terminating ] for character class
895 Failed: error 109 at offset 0: quantifier does not follow a repeatable item
898 Failed: error 109 at offset 1: quantifier does not follow a repeatable item
901 Failed: error 122 at offset 3: unmatched closing parenthesis
904 Failed: error 114 at offset 4: missing closing parenthesis
907 Failed: error 109 at offset 2: quantifier does not follow a repeatable item
910 Failed: error 122 at offset 0: unmatched closing parenthesis
913 Failed: error 114 at offset 4: missing closing parenthesis
916 Failed: error 162 at offset 3: subpattern name expected
919 Failed: error 111 at offset 3: unrecognized character after (? or (?-
922 Failed: error 111 at offset 3: unrecognized character after (? or (?-
925 Failed: error 111 at offset 3: unrecognized character after (? or (?-
928 Failed: error 111 at offset 3: unrecognized character after (? or (?-
931 Failed: error 111 at offset 3: unrecognized character after (? or (?-
934 Failed: error 124 at offset 4: missing closing parenthesis for condition
937 Failed: error 106 at offset 8: missing terminating ] for character class
940 Failed: error 125 at offset 0: lookbehind assertion is not fixed length
943 Failed: error 104 at offset 7: numbers out of order in {} quantifier
946 Failed: error 101 at offset 4: \ at end of pattern
949 Failed: error 101 at offset 4: \ at end of pattern
952 Capturing subpattern count = 2
953 First code unit = 'a'
955 Subject length lower bound = 4
969 Copy substring 5 failed (-49): unknown substring
972 Capturing subpattern count = 1
973 Subject length lower bound = 20
974 abcdefghijklmnopqrstuvwxyz
975 0: abcdefghijklmnopqrst
976 1: abcdefghijklmnopqrst
977 abcdefghijklmnopqrstuvwxyz\=copy=1
978 0: abcdefghijklmnopqrst
979 1: abcdefghijklmnopqrst
980 1C abcdefghijklmnopqrst (20)
981 abcdefghijklmnopqrstuvwxyz\=get=1
982 0: abcdefghijklmnopqrst
983 1: abcdefghijklmnopqrst
984 1G abcdefghijklmnopqrst (20)
987 Capturing subpattern count = 1
988 Subject length lower bound = 15
989 abcdefghijklmnopqrstuvwxyz
992 abcdefghijklmnopqrstuvwxyz\=copy=1,get=1
995 1C abcdefghijklmno (15)
996 1G abcdefghijklmno (15)
999 Capturing subpattern count = 1
1000 Subject length lower bound = 16
1001 abcdefghijklmnopqrstuvwxyz
1004 abcdefghijklmnopqrstuvwxyz\=copy=1,get=1,getall
1007 1C abcdefghijklmnop (16)
1008 1G abcdefghijklmnop (16)
1013 Capturing subpattern count = 3
1014 Compile options: <none>
1015 Overall options: anchored
1016 Starting code units: a b
1017 Subject length lower bound = 4
1018 adef\=get=1,get=2,get=3,get=4,getall
1024 Get substring 2 failed (-55): requested value is not set
1026 Get substring 4 failed (-49): unknown substring
1031 bcdef\=get=1,get=2,get=3,get=4,getall
1039 Get substring 4 failed (-49): unknown substring
1052 Capturing subpattern count = 0
1053 Compile options: <none>
1054 Overall options: anchored
1055 First code unit = 'a'
1056 Subject length lower bound = 7
1057 abc\00def\=copy=0,getall
1062 /word ((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+
1063 )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+
1064 )?)?)?)?)?)?)?)?)?otherword/I
1065 Capturing subpattern count = 8
1066 Contains explicit CR or LF match
1067 First code unit = 'w'
1068 Last code unit = 'd'
1069 Subject length lower bound = 14
1072 ------------------------------------------------------------------
1078 ------------------------------------------------------------------
1079 Capturing subpattern count = 0
1080 First code unit at start or follows newline
1081 Last code unit = 'X'
1082 Subject length lower bound = 1
1085 ------------------------------------------------------------------
1091 ------------------------------------------------------------------
1092 Capturing subpattern count = 0
1093 Compile options: dotall
1094 Overall options: anchored dotall
1095 Last code unit = 'X'
1096 Subject length lower bound = 1
1099 ------------------------------------------------------------------
1110 ------------------------------------------------------------------
1111 Capturing subpattern count = 1
1112 First code unit at start or follows newline
1113 Subject length lower bound = 1
1116 ------------------------------------------------------------------
1127 ------------------------------------------------------------------
1128 Capturing subpattern count = 1
1129 Compile options: dotall
1130 Overall options: anchored dotall
1131 Subject length lower bound = 1
1134 ------------------------------------------------------------------
1145 ------------------------------------------------------------------
1146 Capturing subpattern count = 1
1147 Compile options: <none>
1148 Overall options: anchored
1149 Subject length lower bound = 1
1152 ------------------------------------------------------------------
1163 ------------------------------------------------------------------
1164 Capturing subpattern count = 0
1165 Compile options: <none>
1166 Overall options: anchored
1167 Subject length lower bound = 1
1169 /\Biss\B/I,aftertext
1170 Capturing subpattern count = 0
1172 First code unit = 'i'
1173 Last code unit = 's'
1174 Subject length lower bound = 3
1179 /iss/I,aftertext,altglobal
1180 Capturing subpattern count = 0
1181 First code unit = 'i'
1182 Last code unit = 's'
1183 Subject length lower bound = 3
1190 /\Biss\B/I,aftertext,altglobal
1191 Capturing subpattern count = 0
1193 First code unit = 'i'
1194 Last code unit = 's'
1195 Subject length lower bound = 3
1200 /\Biss\B/Ig,aftertext
1201 Capturing subpattern count = 0
1203 First code unit = 'i'
1204 Last code unit = 's'
1205 Subject length lower bound = 3
1212 Mississippi\=anchored
1215 /(?<=[Ms])iss/Ig,aftertext
1216 Capturing subpattern count = 0
1218 First code unit = 'i'
1219 Last code unit = 's'
1220 Subject length lower bound = 3
1227 /(?<=[Ms])iss/I,aftertext,altglobal
1228 Capturing subpattern count = 0
1230 First code unit = 'i'
1231 Last code unit = 's'
1232 Subject length lower bound = 3
1238 Capturing subpattern count = 0
1239 Compile options: <none>
1240 Overall options: anchored
1241 First code unit = 'i'
1242 Subject length lower bound = 3
1248 Capturing subpattern count = 0
1249 First code unit at start or follows newline
1250 Last code unit = 's'
1251 Subject length lower bound = 3
1259 Capturing subpattern count = 0
1260 Last code unit = 'i'
1261 Subject length lower bound = 3
1269 Mississippi\=anchored
1283 Missouri river\=anchored
1288 Capturing subpattern count = 0
1289 Compile options: <none>
1290 Overall options: anchored
1291 Subject length lower bound = 3
1297 Capturing subpattern count = 0
1298 Contains explicit CR or LF match
1299 Compile options: <none>
1300 Overall options: anchored
1301 First code unit = 'a'
1302 Subject length lower bound = 3
1307 /^ab\n/Igm,aftertext
1308 Capturing subpattern count = 0
1309 Contains explicit CR or LF match
1311 First code unit at start or follows newline
1312 Last code unit = \x0a
1313 Subject length lower bound = 3
1321 a\rb\nc\r\nxyz\=aftertext
1323 0+ a\x0db\x0ac\x0d\x0axyz
1325 0+ b\x0ac\x0d\x0axyz
1332 Capturing subpattern count = 0
1333 First code unit = 'a'
1334 Last code unit = 'c'
1335 Subject length lower bound = 3
1338 Capturing subpattern count = 0
1339 Starting code units: a b
1340 Last code unit = 'c'
1341 Subject length lower bound = 3
1344 Capturing subpattern count = 1
1345 Starting code units: a b
1346 Last code unit = 'c'
1347 Subject length lower bound = 3
1350 Capturing subpattern count = 2
1351 Starting code units: a c d
1352 Last code unit = 'c'
1353 Subject length lower bound = 1
1356 Capturing subpattern count = 2
1357 Starting code units: a d
1358 Last code unit = 'c'
1359 Subject length lower bound = 2
1362 Capturing subpattern count = 0
1363 May match empty string
1364 Subject length lower bound = 0
1367 Capturing subpattern count = 0
1368 First code unit = 'a'
1369 Subject length lower bound = 1
1372 Capturing subpattern count = 1
1373 Starting code units: a b
1374 Last code unit = 'a'
1375 Subject length lower bound = 1
1378 Capturing subpattern count = 0
1379 May match empty string
1380 Subject length lower bound = 0
1383 Capturing subpattern count = 0
1384 First code unit = 'b'
1385 Last code unit = 'a'
1386 Subject length lower bound = 5
1389 Capturing subpattern count = 1
1390 First code unit = '"'
1391 Last code unit = '"'
1392 Subject length lower bound = 2
1395 Capturing subpattern count = 1
1396 First code unit = 'a'
1397 Subject length lower bound = 3
1400 Capturing subpattern count = 1
1401 Subject length lower bound = 1
1404 Capturing subpattern count = 0
1405 Starting code units: 0 1 2 3 4 5 6 7 8 9 A B C D E F G H I J K L M N O P
1406 Q R S T U V W X Y Z _ 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
1407 Subject length lower bound = 1
1410 Capturing subpattern count = 0
1411 First code unit = 'a'
1412 Last code unit = 'r'
1413 Subject length lower bound = 3
1416 Capturing subpattern count = 0
1418 Subject length lower bound = 3
1421 Capturing subpattern count = 0
1422 First code unit = 'a'
1423 Last code unit = 'c'
1424 Subject length lower bound = 3
1427 Capturing subpattern count = 0
1428 First code unit = 'a'
1429 Last code unit = 'b'
1430 Subject length lower bound = 3
1433 Capturing subpattern count = 0
1434 First code unit = 'a'
1435 Last code unit = 'b'
1436 Subject length lower bound = 3
1439 Capturing subpattern count = 0
1440 First code unit = 'a'
1441 Last code unit = 'b'
1442 Subject length lower bound = 2
1445 Capturing subpattern count = 0
1446 First code unit = 'a'
1447 Last code unit = 'b'
1448 Subject length lower bound = 3
1451 Capturing subpattern count = 0
1452 First code unit = 'a'
1453 Subject length lower bound = 2
1456 Capturing subpattern count = 0
1457 Subject length lower bound = 1
1460 Capturing subpattern count = 0
1461 First code unit = 'a'
1462 Subject length lower bound = 1
1465 Capturing subpattern count = 1
1466 Starting code units: a b
1467 Subject length lower bound = 2
1470 Capturing subpattern count = 0
1471 First code unit = 'a'
1472 Subject length lower bound = 2
1475 Capturing subpattern count = 0
1476 Last code unit = 'a'
1477 Subject length lower bound = 2
1480 Capturing subpattern count = 0
1481 First code unit = 'a'
1482 Last code unit = 'a'
1483 Subject length lower bound = 1
1486 Capturing subpattern count = 0
1487 First code unit = 'a'
1488 Subject length lower bound = 1
1491 Capturing subpattern count = 1
1492 First code unit = 'a'
1493 Subject length lower bound = 1
1496 Capturing subpattern count = 0
1497 First code unit = 'a'
1498 Subject length lower bound = 1
1501 Capturing subpattern count = 0
1502 First code unit = 'a'
1503 Last code unit = 'b'
1504 Subject length lower bound = 2
1507 Capturing subpattern count = 1
1508 First code unit = 'a'
1509 Subject length lower bound = 1
1512 Capturing subpattern count = 0
1513 First code unit = 'a'
1514 Last code unit = 'd'
1515 Subject length lower bound = 4
1518 Capturing subpattern count = 0
1519 First code unit = 'a'
1520 Last code unit = 'b'
1521 Subject length lower bound = 3
1524 Capturing subpattern count = 1
1525 Max back reference = 1
1526 First code unit = 'a'
1527 Subject length lower bound = 2
1529 /a(?(1)bag|big)(.)/I
1530 Capturing subpattern count = 1
1531 Max back reference = 1
1532 First code unit = 'a'
1533 Last code unit = 'g'
1534 Subject length lower bound = 5
1536 /a(?(1)bag|big)*(.)/I
1537 Capturing subpattern count = 1
1538 Max back reference = 1
1539 First code unit = 'a'
1540 Subject length lower bound = 2
1542 /a(?(1)bag|big)+(.)/I
1543 Capturing subpattern count = 1
1544 Max back reference = 1
1545 First code unit = 'a'
1546 Last code unit = 'g'
1547 Subject length lower bound = 5
1549 /a(?(1)b..|b..)(.)/I
1550 Capturing subpattern count = 1
1551 Max back reference = 1
1552 First code unit = 'a'
1553 Last code unit = 'b'
1554 Subject length lower bound = 5
1557 Capturing subpattern count = 0
1558 First code unit = 'a'
1559 Last code unit = 'e'
1560 Subject length lower bound = 3
1563 Capturing subpattern count = 0
1564 May match empty string
1565 Subject length lower bound = 0
1579 Capturing subpattern count = 0
1580 May match empty string
1581 Subject length lower bound = 0
1593 Capturing subpattern count = 0
1594 Compile options: <none>
1595 Overall options: anchored
1596 Last code unit = 'd'
1597 Subject length lower bound = 4
1600 (?: # Non-capturing bracket
1601 (?>[^()]+) # Either a sequence of non-brackets (no backtracking)
1603 (?R) # Recurse - i.e. nested bracketed string
1604 )* # Zero or more contents
1607 Capturing subpattern count = 0
1609 First code unit = '('
1610 Last code unit = ')'
1611 Subject length lower bound = 2
1624 12(abcde(fsh)xyz(foo(bar))lmno)89
1625 0: (abcde(fsh)xyz(foo(bar))lmno)
1634 /\( ( (?>[^()]+) | (?R) )* \) /Igx
1635 Capturing subpattern count = 1
1637 First code unit = '('
1638 Last code unit = ')'
1639 Subject length lower bound = 2
1649 /\( (?: (?>[^()]+) | (?R) ) \) /Ix
1650 Capturing subpattern count = 0
1652 First code unit = '('
1653 Last code unit = ')'
1654 Subject length lower bound = 3
1667 /\( (?: (?>[^()]+) | (?R) )? \) /Ix
1668 Capturing subpattern count = 0
1670 First code unit = '('
1671 Last code unit = ')'
1672 Subject length lower bound = 2
1675 12(abcde(fsh)xyz(foo(bar))lmno)89
1678 /\( ( (?>[^()]+) | (?R) )* \) /Ix
1679 Capturing subpattern count = 1
1681 First code unit = '('
1682 Last code unit = ')'
1683 Subject length lower bound = 2
1688 /\( ( ( (?>[^()]+) | (?R) )* ) \) /Ix
1689 Capturing subpattern count = 2
1691 First code unit = '('
1692 Last code unit = ')'
1693 Subject length lower bound = 2
1699 /\( (123)? ( ( (?>[^()]+) | (?R) )* ) \) /Ix
1700 Capturing subpattern count = 3
1702 First code unit = '('
1703 Last code unit = ')'
1704 Subject length lower bound = 2
1716 /\( ( (123)? ( (?>[^()]+) | (?R) )* ) \) /Ix
1717 Capturing subpattern count = 3
1719 First code unit = '('
1720 Last code unit = ')'
1721 Subject length lower bound = 2
1733 /\( (((((((((( ( (?>[^()]+) | (?R) )* )))))))))) \) /Ix
1734 Capturing subpattern count = 11
1736 First code unit = '('
1737 Last code unit = ')'
1738 Subject length lower bound = 2
1753 /\( ( ( (?>[^()<>]+) | ((?>[^()]+)) | (?R) )* ) \) /Ix
1754 Capturing subpattern count = 3
1756 First code unit = '('
1757 Last code unit = ')'
1758 Subject length lower bound = 2
1759 (abcd(xyz<p>qrs)123)
1760 0: (abcd(xyz<p>qrs)123)
1761 1: abcd(xyz<p>qrs)123
1764 /\( ( ( (?>[^()]+) | ((?R)) )* ) \) /Ix
1765 Capturing subpattern count = 3
1767 First code unit = '('
1768 Last code unit = ')'
1769 Subject length lower bound = 2
1782 ------------------------------------------------------------------
1788 ------------------------------------------------------------------
1789 Capturing subpattern count = 0
1790 Compile options: <none>
1791 Overall options: anchored
1792 Starting code units: 0 1 2 3 4 5 6 7 8 9 A B C D E F G H I J K L M N O P
1793 Q R S T U V W X Y Z 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
1794 Subject length lower bound = 1
1797 ------------------------------------------------------------------
1800 [\x00-/:-@[-`{-\xff] (neg)
1803 ------------------------------------------------------------------
1804 Capturing subpattern count = 0
1805 Compile options: <none>
1806 Overall options: anchored
1807 Starting code units: \x00 \x01 \x02 \x03 \x04 \x05 \x06 \x07 \x08 \x09 \x0a
1808 \x0b \x0c \x0d \x0e \x0f \x10 \x11 \x12 \x13 \x14 \x15 \x16 \x17 \x18 \x19
1809 \x1a \x1b \x1c \x1d \x1e \x1f \x20 ! " # $ % & ' ( ) * + , - . / : ; < = >
1810 ? @ [ \ ] ^ _ ` { | } ~ \x7f \x80 \x81 \x82 \x83 \x84 \x85 \x86 \x87 \x88
1811 \x89 \x8a \x8b \x8c \x8d \x8e \x8f \x90 \x91 \x92 \x93 \x94 \x95 \x96 \x97
1812 \x98 \x99 \x9a \x9b \x9c \x9d \x9e \x9f \xa0 \xa1 \xa2 \xa3 \xa4 \xa5 \xa6
1813 \xa7 \xa8 \xa9 \xaa \xab \xac \xad \xae \xaf \xb0 \xb1 \xb2 \xb3 \xb4 \xb5
1814 \xb6 \xb7 \xb8 \xb9 \xba \xbb \xbc \xbd \xbe \xbf \xc0 \xc1 \xc2 \xc3 \xc4
1815 \xc5 \xc6 \xc7 \xc8 \xc9 \xca \xcb \xcc \xcd \xce \xcf \xd0 \xd1 \xd2 \xd3
1816 \xd4 \xd5 \xd6 \xd7 \xd8 \xd9 \xda \xdb \xdc \xdd \xde \xdf \xe0 \xe1 \xe2
1817 \xe3 \xe4 \xe5 \xe6 \xe7 \xe8 \xe9 \xea \xeb \xec \xed \xee \xef \xf0 \xf1
1818 \xf2 \xf3 \xf4 \xf5 \xf6 \xf7 \xf8 \xf9 \xfa \xfb \xfc \xfd \xfe \xff
1819 Subject length lower bound = 1
1822 ------------------------------------------------------------------
1828 ------------------------------------------------------------------
1829 Capturing subpattern count = 0
1830 Compile options: <none>
1831 Overall options: anchored
1832 Starting code units: 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
1833 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
1834 Subject length lower bound = 1
1837 ------------------------------------------------------------------
1840 [\x00-@[-`{-\xff] (neg)
1843 ------------------------------------------------------------------
1844 Capturing subpattern count = 0
1845 Compile options: <none>
1846 Overall options: anchored
1847 Starting code units: \x00 \x01 \x02 \x03 \x04 \x05 \x06 \x07 \x08 \x09 \x0a
1848 \x0b \x0c \x0d \x0e \x0f \x10 \x11 \x12 \x13 \x14 \x15 \x16 \x17 \x18 \x19
1849 \x1a \x1b \x1c \x1d \x1e \x1f \x20 ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4
1850 5 6 7 8 9 : ; < = > ? @ [ \ ] ^ _ ` { | } ~ \x7f \x80 \x81 \x82 \x83 \x84
1851 \x85 \x86 \x87 \x88 \x89 \x8a \x8b \x8c \x8d \x8e \x8f \x90 \x91 \x92 \x93
1852 \x94 \x95 \x96 \x97 \x98 \x99 \x9a \x9b \x9c \x9d \x9e \x9f \xa0 \xa1 \xa2
1853 \xa3 \xa4 \xa5 \xa6 \xa7 \xa8 \xa9 \xaa \xab \xac \xad \xae \xaf \xb0 \xb1
1854 \xb2 \xb3 \xb4 \xb5 \xb6 \xb7 \xb8 \xb9 \xba \xbb \xbc \xbd \xbe \xbf \xc0
1855 \xc1 \xc2 \xc3 \xc4 \xc5 \xc6 \xc7 \xc8 \xc9 \xca \xcb \xcc \xcd \xce \xcf
1856 \xd0 \xd1 \xd2 \xd3 \xd4 \xd5 \xd6 \xd7 \xd8 \xd9 \xda \xdb \xdc \xdd \xde
1857 \xdf \xe0 \xe1 \xe2 \xe3 \xe4 \xe5 \xe6 \xe7 \xe8 \xe9 \xea \xeb \xec \xed
1858 \xee \xef \xf0 \xf1 \xf2 \xf3 \xf4 \xf5 \xf6 \xf7 \xf8 \xf9 \xfa \xfb \xfc
1860 Subject length lower bound = 1
1863 Capturing subpattern count = 0
1864 Starting code units: 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
1865 _ 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
1866 Subject length lower bound = 1
1869 ------------------------------------------------------------------
1875 ------------------------------------------------------------------
1876 Capturing subpattern count = 0
1877 Compile options: <none>
1878 Overall options: anchored
1879 Starting code units: \x00 \x01 \x02 \x03 \x04 \x05 \x06 \x07 \x08 \x09 \x0a
1880 \x0b \x0c \x0d \x0e \x0f \x10 \x11 \x12 \x13 \x14 \x15 \x16 \x17 \x18 \x19
1881 \x1a \x1b \x1c \x1d \x1e \x1f \x20 ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4
1882 5 6 7 8 9 : ; < = > ? @ 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
1883 Z [ \ ] ^ _ ` 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 Subject length lower bound = 1
1888 ------------------------------------------------------------------
1894 ------------------------------------------------------------------
1895 Capturing subpattern count = 0
1896 Compile options: <none>
1897 Overall options: anchored
1898 Starting code units: \x80 \x81 \x82 \x83 \x84 \x85 \x86 \x87 \x88 \x89 \x8a
1899 \x8b \x8c \x8d \x8e \x8f \x90 \x91 \x92 \x93 \x94 \x95 \x96 \x97 \x98 \x99
1900 \x9a \x9b \x9c \x9d \x9e \x9f \xa0 \xa1 \xa2 \xa3 \xa4 \xa5 \xa6 \xa7 \xa8
1901 \xa9 \xaa \xab \xac \xad \xae \xaf \xb0 \xb1 \xb2 \xb3 \xb4 \xb5 \xb6 \xb7
1902 \xb8 \xb9 \xba \xbb \xbc \xbd \xbe \xbf \xc0 \xc1 \xc2 \xc3 \xc4 \xc5 \xc6
1903 \xc7 \xc8 \xc9 \xca \xcb \xcc \xcd \xce \xcf \xd0 \xd1 \xd2 \xd3 \xd4 \xd5
1904 \xd6 \xd7 \xd8 \xd9 \xda \xdb \xdc \xdd \xde \xdf \xe0 \xe1 \xe2 \xe3 \xe4
1905 \xe5 \xe6 \xe7 \xe8 \xe9 \xea \xeb \xec \xed \xee \xef \xf0 \xf1 \xf2 \xf3
1906 \xf4 \xf5 \xf6 \xf7 \xf8 \xf9 \xfa \xfb \xfc \xfd \xfe \xff
1907 Subject length lower bound = 1
1910 ------------------------------------------------------------------
1916 ------------------------------------------------------------------
1917 Capturing subpattern count = 0
1918 Compile options: <none>
1919 Overall options: anchored
1920 Starting code units: \x09 \x20
1921 Subject length lower bound = 1
1924 ------------------------------------------------------------------
1927 [\x00-\x08\x0a-\x1f!-\xff] (neg)
1930 ------------------------------------------------------------------
1931 Capturing subpattern count = 0
1932 Compile options: <none>
1933 Overall options: anchored
1934 Starting code units: \x00 \x01 \x02 \x03 \x04 \x05 \x06 \x07 \x08 \x0a \x0b
1935 \x0c \x0d \x0e \x0f \x10 \x11 \x12 \x13 \x14 \x15 \x16 \x17 \x18 \x19 \x1a
1936 \x1b \x1c \x1d \x1e \x1f ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9
1937 : ; < = > ? @ 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 [ \ ] ^
1938 _ ` 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 { | } ~ \x7f \x80
1939 \x81 \x82 \x83 \x84 \x85 \x86 \x87 \x88 \x89 \x8a \x8b \x8c \x8d \x8e \x8f
1940 \x90 \x91 \x92 \x93 \x94 \x95 \x96 \x97 \x98 \x99 \x9a \x9b \x9c \x9d \x9e
1941 \x9f \xa0 \xa1 \xa2 \xa3 \xa4 \xa5 \xa6 \xa7 \xa8 \xa9 \xaa \xab \xac \xad
1942 \xae \xaf \xb0 \xb1 \xb2 \xb3 \xb4 \xb5 \xb6 \xb7 \xb8 \xb9 \xba \xbb \xbc
1943 \xbd \xbe \xbf \xc0 \xc1 \xc2 \xc3 \xc4 \xc5 \xc6 \xc7 \xc8 \xc9 \xca \xcb
1944 \xcc \xcd \xce \xcf \xd0 \xd1 \xd2 \xd3 \xd4 \xd5 \xd6 \xd7 \xd8 \xd9 \xda
1945 \xdb \xdc \xdd \xde \xdf \xe0 \xe1 \xe2 \xe3 \xe4 \xe5 \xe6 \xe7 \xe8 \xe9
1946 \xea \xeb \xec \xed \xee \xef \xf0 \xf1 \xf2 \xf3 \xf4 \xf5 \xf6 \xf7 \xf8
1947 \xf9 \xfa \xfb \xfc \xfd \xfe \xff
1948 Subject length lower bound = 1
1950 /[\n\x0b\x0c\x0d[:blank:]]/I
1951 Capturing subpattern count = 0
1952 Contains explicit CR or LF match
1953 Starting code units: \x09 \x0a \x0b \x0c \x0d \x20
1954 Subject length lower bound = 1
1957 ------------------------------------------------------------------
1963 ------------------------------------------------------------------
1964 Capturing subpattern count = 0
1965 Compile options: <none>
1966 Overall options: anchored
1967 Starting code units: \x00 \x01 \x02 \x03 \x04 \x05 \x06 \x07 \x08 \x09 \x0a
1968 \x0b \x0c \x0d \x0e \x0f \x10 \x11 \x12 \x13 \x14 \x15 \x16 \x17 \x18 \x19
1969 \x1a \x1b \x1c \x1d \x1e \x1f \x7f
1970 Subject length lower bound = 1
1973 ------------------------------------------------------------------
1979 ------------------------------------------------------------------
1980 Capturing subpattern count = 0
1981 Compile options: <none>
1982 Overall options: anchored
1983 Starting code units: 0 1 2 3 4 5 6 7 8 9
1984 Subject length lower bound = 1
1987 ------------------------------------------------------------------
1993 ------------------------------------------------------------------
1994 Capturing subpattern count = 0
1995 Compile options: <none>
1996 Overall options: anchored
1997 Starting code units: ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 :
1998 ; < = > ? @ 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 [ \ ] ^ _
1999 ` 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 { | } ~
2000 Subject length lower bound = 1
2003 ------------------------------------------------------------------
2009 ------------------------------------------------------------------
2010 Capturing subpattern count = 0
2011 Compile options: <none>
2012 Overall options: anchored
2013 Starting code units: 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
2014 Subject length lower bound = 1
2017 ------------------------------------------------------------------
2023 ------------------------------------------------------------------
2024 Capturing subpattern count = 0
2025 Compile options: <none>
2026 Overall options: anchored
2027 Starting code units: \x20 ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8
2028 9 : ; < = > ? @ 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 [ \ ]
2029 ^ _ ` 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 { | } ~
2030 Subject length lower bound = 1
2033 ------------------------------------------------------------------
2039 ------------------------------------------------------------------
2040 Capturing subpattern count = 0
2041 Compile options: <none>
2042 Overall options: anchored
2043 Starting code units: ! " # $ % & ' ( ) * + , - . / : ; < = > ? @ [ \ ] ^
2045 Subject length lower bound = 1
2048 ------------------------------------------------------------------
2054 ------------------------------------------------------------------
2055 Capturing subpattern count = 0
2056 Compile options: <none>
2057 Overall options: anchored
2058 Starting code units: \x09 \x0a \x0b \x0c \x0d \x20
2059 Subject length lower bound = 1
2062 ------------------------------------------------------------------
2068 ------------------------------------------------------------------
2069 Capturing subpattern count = 0
2070 Compile options: <none>
2071 Overall options: anchored
2072 Starting code units: 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
2073 Subject length lower bound = 1
2076 ------------------------------------------------------------------
2082 ------------------------------------------------------------------
2083 Capturing subpattern count = 0
2084 Compile options: <none>
2085 Overall options: anchored
2086 Starting code units: 0 1 2 3 4 5 6 7 8 9 A B C D E F a b c d e f
2087 Subject length lower bound = 1
2090 ------------------------------------------------------------------
2096 ------------------------------------------------------------------
2097 Capturing subpattern count = 0
2098 Compile options: <none>
2099 Overall options: anchored
2100 Starting code units: 0 1 2 3 4 5 6 7 8 9 A B C D E F G H I J K L M N O P
2101 Q R S T U V W X Y Z _ 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
2102 Subject length lower bound = 1
2105 ------------------------------------------------------------------
2108 [ -~\x80-\xff] (neg)
2111 ------------------------------------------------------------------
2112 Capturing subpattern count = 0
2113 Compile options: <none>
2114 Overall options: anchored
2115 Starting code units: \x20 ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8
2116 9 : ; < = > ? @ 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 [ \ ]
2117 ^ _ ` 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 { | } ~ \x80 \x81
2118 \x82 \x83 \x84 \x85 \x86 \x87 \x88 \x89 \x8a \x8b \x8c \x8d \x8e \x8f \x90
2119 \x91 \x92 \x93 \x94 \x95 \x96 \x97 \x98 \x99 \x9a \x9b \x9c \x9d \x9e \x9f
2120 \xa0 \xa1 \xa2 \xa3 \xa4 \xa5 \xa6 \xa7 \xa8 \xa9 \xaa \xab \xac \xad \xae
2121 \xaf \xb0 \xb1 \xb2 \xb3 \xb4 \xb5 \xb6 \xb7 \xb8 \xb9 \xba \xbb \xbc \xbd
2122 \xbe \xbf \xc0 \xc1 \xc2 \xc3 \xc4 \xc5 \xc6 \xc7 \xc8 \xc9 \xca \xcb \xcc
2123 \xcd \xce \xcf \xd0 \xd1 \xd2 \xd3 \xd4 \xd5 \xd6 \xd7 \xd8 \xd9 \xda \xdb
2124 \xdc \xdd \xde \xdf \xe0 \xe1 \xe2 \xe3 \xe4 \xe5 \xe6 \xe7 \xe8 \xe9 \xea
2125 \xeb \xec \xed \xee \xef \xf0 \xf1 \xf2 \xf3 \xf4 \xf5 \xf6 \xf7 \xf8 \xf9
2126 \xfa \xfb \xfc \xfd \xfe \xff
2127 Subject length lower bound = 1
2130 ------------------------------------------------------------------
2133 [\x00-/12:-\xff] (neg)
2136 ------------------------------------------------------------------
2137 Capturing subpattern count = 0
2138 Compile options: <none>
2139 Overall options: anchored
2140 Starting code units: \x00 \x01 \x02 \x03 \x04 \x05 \x06 \x07 \x08 \x09 \x0a
2141 \x0b \x0c \x0d \x0e \x0f \x10 \x11 \x12 \x13 \x14 \x15 \x16 \x17 \x18 \x19
2142 \x1a \x1b \x1c \x1d \x1e \x1f \x20 ! " # $ % & ' ( ) * + , - . / 1 2 : ; <
2143 = > ? @ 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 [ \ ] ^ _ ` a
2144 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 { | } ~ \x7f \x80 \x81 \x82
2145 \x83 \x84 \x85 \x86 \x87 \x88 \x89 \x8a \x8b \x8c \x8d \x8e \x8f \x90 \x91
2146 \x92 \x93 \x94 \x95 \x96 \x97 \x98 \x99 \x9a \x9b \x9c \x9d \x9e \x9f \xa0
2147 \xa1 \xa2 \xa3 \xa4 \xa5 \xa6 \xa7 \xa8 \xa9 \xaa \xab \xac \xad \xae \xaf
2148 \xb0 \xb1 \xb2 \xb3 \xb4 \xb5 \xb6 \xb7 \xb8 \xb9 \xba \xbb \xbc \xbd \xbe
2149 \xbf \xc0 \xc1 \xc2 \xc3 \xc4 \xc5 \xc6 \xc7 \xc8 \xc9 \xca \xcb \xcc \xcd
2150 \xce \xcf \xd0 \xd1 \xd2 \xd3 \xd4 \xd5 \xd6 \xd7 \xd8 \xd9 \xda \xdb \xdc
2151 \xdd \xde \xdf \xe0 \xe1 \xe2 \xe3 \xe4 \xe5 \xe6 \xe7 \xe8 \xe9 \xea \xeb
2152 \xec \xed \xee \xef \xf0 \xf1 \xf2 \xf3 \xf4 \xf5 \xf6 \xf7 \xf8 \xf9 \xfa
2153 \xfb \xfc \xfd \xfe \xff
2154 Subject length lower bound = 1
2157 ------------------------------------------------------------------
2160 [\x00-\x08\x0a-\x1f!-\xff] (neg)
2163 ------------------------------------------------------------------
2164 Capturing subpattern count = 0
2165 Compile options: <none>
2166 Overall options: anchored
2167 Starting code units: \x00 \x01 \x02 \x03 \x04 \x05 \x06 \x07 \x08 \x0a \x0b
2168 \x0c \x0d \x0e \x0f \x10 \x11 \x12 \x13 \x14 \x15 \x16 \x17 \x18 \x19 \x1a
2169 \x1b \x1c \x1d \x1e \x1f ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9
2170 : ; < = > ? @ 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 [ \ ] ^
2171 _ ` 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 { | } ~ \x7f \x80
2172 \x81 \x82 \x83 \x84 \x85 \x86 \x87 \x88 \x89 \x8a \x8b \x8c \x8d \x8e \x8f
2173 \x90 \x91 \x92 \x93 \x94 \x95 \x96 \x97 \x98 \x99 \x9a \x9b \x9c \x9d \x9e
2174 \x9f \xa0 \xa1 \xa2 \xa3 \xa4 \xa5 \xa6 \xa7 \xa8 \xa9 \xaa \xab \xac \xad
2175 \xae \xaf \xb0 \xb1 \xb2 \xb3 \xb4 \xb5 \xb6 \xb7 \xb8 \xb9 \xba \xbb \xbc
2176 \xbd \xbe \xbf \xc0 \xc1 \xc2 \xc3 \xc4 \xc5 \xc6 \xc7 \xc8 \xc9 \xca \xcb
2177 \xcc \xcd \xce \xcf \xd0 \xd1 \xd2 \xd3 \xd4 \xd5 \xd6 \xd7 \xd8 \xd9 \xda
2178 \xdb \xdc \xdd \xde \xdf \xe0 \xe1 \xe2 \xe3 \xe4 \xe5 \xe6 \xe7 \xe8 \xe9
2179 \xea \xeb \xec \xed \xee \xef \xf0 \xf1 \xf2 \xf3 \xf4 \xf5 \xf6 \xf7 \xf8
2180 \xf9 \xfa \xfb \xfc \xfd \xfe \xff
2181 Subject length lower bound = 1
2184 ------------------------------------------------------------------
2189 ------------------------------------------------------------------
2190 Capturing subpattern count = 0
2191 Starting code units: % 0 1 A B C D E F G H I J K L M N O P Q R S T U V W
2192 X Y Z 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
2193 Subject length lower bound = 1
2196 Failed: error 113 at offset 1: POSIX collating elements are not supported
2199 Failed: error 113 at offset 1: POSIX collating elements are not supported
2202 Failed: error 130 at offset 3: unknown POSIX class name
2205 Capturing subpattern count = 0
2207 Starting code units: 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
2208 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
2209 Subject length lower bound = 1
2216 Capturing subpattern count = 0
2218 Starting code units: 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
2219 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
2220 Subject length lower bound = 1
2226 /((?-i)[[:lower:]])[[:lower:]]/Ii
2227 Capturing subpattern count = 1
2229 Starting code units: 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
2230 Subject length lower bound = 2
2244 Failed: error 108 at offset 9: range out of order in character class
2247 Failed: error 115 at offset 5: reference to non-existent subpattern
2249 # This one's here because of the large output vector needed
2251 /(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\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
2252 Capturing subpattern count = 271
2253 Max back reference = 270
2254 Starting code units: 0 1 2 3 4 5 6 7 8 9
2255 Subject length lower bound = 0
2256 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\=ovector=300
2257 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
2530 # This one's here because Perl does this differently and PCRE2 can't at present
2533 Capturing subpattern count = 2
2534 First code unit = 'm'
2535 Last code unit = 'n'
2536 Subject length lower bound = 4
2545 # These are all cases where Perl does it differently (nested captures)
2548 Capturing subpattern count = 2
2549 Compile options: <none>
2550 Overall options: anchored
2551 First code unit = 'a'
2552 Subject length lower bound = 1
2559 Capturing subpattern count = 2
2560 Compile options: <none>
2561 Overall options: anchored
2562 First code unit = 'a'
2563 Subject length lower bound = 2
2570 Capturing subpattern count = 2
2571 Compile options: <none>
2572 Overall options: anchored
2573 First code unit = 'a'
2574 Subject length lower bound = 2
2581 Capturing subpattern count = 2
2582 Compile options: <none>
2583 Overall options: anchored
2584 First code unit = 'a'
2585 Subject length lower bound = 2
2592 Capturing subpattern count = 1
2593 Compile options: <none>
2594 Overall options: anchored
2595 First code unit = 'a'
2596 Subject length lower bound = 2
2602 Capturing subpattern count = 3
2603 Compile options: <none>
2604 Overall options: anchored
2605 First code unit = 'a'
2606 Subject length lower bound = 2
2614 Capturing subpattern count = 2
2615 Compile options: <none>
2616 Overall options: anchored
2617 First code unit = 'a'
2618 Subject length lower bound = 2
2624 /^(?:aa(b(?:b))?)+$/I
2625 Capturing subpattern count = 1
2626 Compile options: <none>
2627 Overall options: anchored
2628 First code unit = 'a'
2629 Subject length lower bound = 2
2634 /^(?:aa(bb(?:b))?)+$/I
2635 Capturing subpattern count = 1
2636 Compile options: <none>
2637 Overall options: anchored
2638 First code unit = 'a'
2639 Subject length lower bound = 2
2644 /^(?:aa(b(?:bb))?)+$/I
2645 Capturing subpattern count = 1
2646 Compile options: <none>
2647 Overall options: anchored
2648 First code unit = 'a'
2649 Subject length lower bound = 2
2654 /^(?:aa(?:b(b))?)+$/I
2655 Capturing subpattern count = 1
2656 Compile options: <none>
2657 Overall options: anchored
2658 First code unit = 'a'
2659 Subject length lower bound = 2
2664 /^(?:aa(?:b(bb))?)+$/I
2665 Capturing subpattern count = 1
2666 Compile options: <none>
2667 Overall options: anchored
2668 First code unit = 'a'
2669 Subject length lower bound = 2
2675 Capturing subpattern count = 3
2676 Compile options: <none>
2677 Overall options: anchored
2678 First code unit = 'a'
2679 Subject length lower bound = 2
2687 Capturing subpattern count = 3
2688 Compile options: <none>
2689 Overall options: anchored
2690 First code unit = 'a'
2691 Subject length lower bound = 2
2701 ------------------------------------------------------------------
2705 ------------------------------------------------------------------
2706 Capturing subpattern count = 0
2707 May match empty string
2709 Subject length lower bound = 0
2712 ------------------------------------------------------------------
2717 ------------------------------------------------------------------
2718 Capturing subpattern count = 0
2720 First code unit = 'a'
2721 Subject length lower bound = 1
2724 ------------------------------------------------------------------
2729 ------------------------------------------------------------------
2730 Capturing subpattern count = 0
2731 Starting code units: \x09 \x0a \x0b \x0c \x0d \x20
2732 Subject length lower bound = 1
2735 ------------------------------------------------------------------
2737 [\x00-\x08\x0e-\x1f!-\xff] (neg)
2740 ------------------------------------------------------------------
2741 Capturing subpattern count = 0
2742 Starting code units: \x00 \x01 \x02 \x03 \x04 \x05 \x06 \x07 \x08 \x0e \x0f
2743 \x10 \x11 \x12 \x13 \x14 \x15 \x16 \x17 \x18 \x19 \x1a \x1b \x1c \x1d \x1e
2744 \x1f ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C
2745 D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h
2746 i j k l m n o p q r s t u v w x y z { | } ~ \x7f \x80 \x81 \x82 \x83 \x84
2747 \x85 \x86 \x87 \x88 \x89 \x8a \x8b \x8c \x8d \x8e \x8f \x90 \x91 \x92 \x93
2748 \x94 \x95 \x96 \x97 \x98 \x99 \x9a \x9b \x9c \x9d \x9e \x9f \xa0 \xa1 \xa2
2749 \xa3 \xa4 \xa5 \xa6 \xa7 \xa8 \xa9 \xaa \xab \xac \xad \xae \xaf \xb0 \xb1
2750 \xb2 \xb3 \xb4 \xb5 \xb6 \xb7 \xb8 \xb9 \xba \xbb \xbc \xbd \xbe \xbf \xc0
2751 \xc1 \xc2 \xc3 \xc4 \xc5 \xc6 \xc7 \xc8 \xc9 \xca \xcb \xcc \xcd \xce \xcf
2752 \xd0 \xd1 \xd2 \xd3 \xd4 \xd5 \xd6 \xd7 \xd8 \xd9 \xda \xdb \xdc \xdd \xde
2753 \xdf \xe0 \xe1 \xe2 \xe3 \xe4 \xe5 \xe6 \xe7 \xe8 \xe9 \xea \xeb \xec \xed
2754 \xee \xef \xf0 \xf1 \xf2 \xf3 \xf4 \xf5 \xf6 \xf7 \xf8 \xf9 \xfa \xfb \xfc
2756 Subject length lower bound = 1
2759 ------------------------------------------------------------------
2765 ------------------------------------------------------------------
2766 Capturing subpattern count = 0
2767 First code unit = 'a'
2768 Last code unit = 'b' (caseless)
2769 Subject length lower bound = 2
2779 ------------------------------------------------------------------
2787 ------------------------------------------------------------------
2788 Capturing subpattern count = 1
2789 First code unit = 'a'
2790 Last code unit = 'b' (caseless)
2791 Subject length lower bound = 2
2803 ------------------------------------------------------------------
2808 ------------------------------------------------------------------
2809 Capturing subpattern count = 0
2811 First code unit = 'a' (caseless)
2812 Last code unit = 'c' (caseless)
2813 Subject length lower bound = 3
2817 ------------------------------------------------------------------
2822 ------------------------------------------------------------------
2823 Capturing subpattern count = 0
2825 First code unit = 'a' (caseless)
2826 Last code unit = 'c' (caseless)
2827 Subject length lower bound = 3
2829 /123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890/IB
2830 ------------------------------------------------------------------
2832 123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890
2835 ------------------------------------------------------------------
2836 Capturing subpattern count = 0
2837 First code unit = '1'
2838 Last code unit = '0'
2839 Subject length lower bound = 300
2841 /\Q123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890/IB
2842 ------------------------------------------------------------------
2844 123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890
2847 ------------------------------------------------------------------
2848 Capturing subpattern count = 0
2849 First code unit = '1'
2850 Last code unit = '0'
2851 Subject length lower bound = 300
2854 ------------------------------------------------------------------
2858 ------------------------------------------------------------------
2859 Capturing subpattern count = 0
2860 May match empty string
2861 Subject length lower bound = 0
2866 ------------------------------------------------------------------
2871 ------------------------------------------------------------------
2872 Capturing subpattern count = 0
2873 First code unit = 'x'
2874 Subject length lower bound = 1
2877 ------------------------------------------------------------------
2882 ------------------------------------------------------------------
2883 Capturing subpattern count = 0
2884 First code unit = ' '
2885 Subject length lower bound = 1
2888 ------------------------------------------------------------------
2893 ------------------------------------------------------------------
2894 Capturing subpattern count = 0
2895 First code unit = 'a'
2896 Subject length lower bound = 1
2905 ------------------------------------------------------------------
2910 ------------------------------------------------------------------
2911 Capturing subpattern count = 0
2912 First code unit = 'a'
2913 Last code unit = 'b'
2914 Subject length lower bound = 2
2919 ------------------------------------------------------------------
2924 ------------------------------------------------------------------
2925 Capturing subpattern count = 0
2926 First code unit = 'a'
2927 Last code unit = 'c'
2928 Subject length lower bound = 3
2931 ------------------------------------------------------------------
2937 ------------------------------------------------------------------
2938 Capturing subpattern count = 0
2939 Starting code units: 0 1 2 3 4 5 6 7 8 9 A B C D E F G H I J K L M N O P
2940 Q R S T U V W X Y Z _ 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
2941 Subject length lower bound = 1
2947 ------------------------------------------------------------------
2952 ------------------------------------------------------------------
2953 Capturing subpattern count = 0
2954 May match empty string
2955 Subject length lower bound = 0
2958 ------------------------------------------------------------------
2963 ------------------------------------------------------------------
2964 Capturing subpattern count = 0
2965 First code unit = 'x'
2966 Subject length lower bound = 1
2968 /x{1,3}+/B,no_auto_possess
2969 ------------------------------------------------------------------
2975 ------------------------------------------------------------------
2977 /x{1,3}+/Bi,no_auto_possess
2978 ------------------------------------------------------------------
2984 ------------------------------------------------------------------
2986 /[^x]{1,3}+/B,no_auto_possess
2987 ------------------------------------------------------------------
2993 ------------------------------------------------------------------
2995 /[^x]{1,3}+/Bi,no_auto_possess
2996 ------------------------------------------------------------------
3002 ------------------------------------------------------------------
3005 ------------------------------------------------------------------
3013 ------------------------------------------------------------------
3014 Capturing subpattern count = 1
3015 May match empty string
3016 Subject length lower bound = 0
3019 Capturing subpattern count = 1
3020 May match empty string
3021 Compile options: <none>
3022 Overall options: anchored
3023 Subject length lower bound = 0
3024 now is the time for all good men to come to the aid of the party
3025 0: now is the time for all good men to come to the aid of the party
3028 this is not a line with only words and spaces!
3032 Capturing subpattern count = 2
3033 Starting code units: 0 1 2 3 4 5 6 7 8 9
3034 Subject length lower bound = 2
3044 Capturing subpattern count = 0
3045 First code unit = 'a'
3046 Last code unit = 'b'
3047 Subject length lower bound = 2
3052 Capturing subpattern count = 1
3053 First code unit = 'a'
3054 Last code unit = 'b'
3055 Subject length lower bound = 2
3061 Capturing subpattern count = 1
3062 First code unit = 'a'
3063 Last code unit = 'b'
3064 Subject length lower bound = 2
3069 /([^()]++|\([^()]*\))+/I
3070 Capturing subpattern count = 1
3071 Starting code units: \x00 \x01 \x02 \x03 \x04 \x05 \x06 \x07 \x08 \x09 \x0a
3072 \x0b \x0c \x0d \x0e \x0f \x10 \x11 \x12 \x13 \x14 \x15 \x16 \x17 \x18 \x19
3073 \x1a \x1b \x1c \x1d \x1e \x1f \x20 ! " # $ % & ' ( * + , - . / 0 1 2 3 4 5
3074 6 7 8 9 : ; < = > ? @ 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
3075 [ \ ] ^ _ ` 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 { | } ~ \x7f
3076 \x80 \x81 \x82 \x83 \x84 \x85 \x86 \x87 \x88 \x89 \x8a \x8b \x8c \x8d \x8e
3077 \x8f \x90 \x91 \x92 \x93 \x94 \x95 \x96 \x97 \x98 \x99 \x9a \x9b \x9c \x9d
3078 \x9e \x9f \xa0 \xa1 \xa2 \xa3 \xa4 \xa5 \xa6 \xa7 \xa8 \xa9 \xaa \xab \xac
3079 \xad \xae \xaf \xb0 \xb1 \xb2 \xb3 \xb4 \xb5 \xb6 \xb7 \xb8 \xb9 \xba \xbb
3080 \xbc \xbd \xbe \xbf \xc0 \xc1 \xc2 \xc3 \xc4 \xc5 \xc6 \xc7 \xc8 \xc9 \xca
3081 \xcb \xcc \xcd \xce \xcf \xd0 \xd1 \xd2 \xd3 \xd4 \xd5 \xd6 \xd7 \xd8 \xd9
3082 \xda \xdb \xdc \xdd \xde \xdf \xe0 \xe1 \xe2 \xe3 \xe4 \xe5 \xe6 \xe7 \xe8
3083 \xe9 \xea \xeb \xec \xed \xee \xef \xf0 \xf1 \xf2 \xf3 \xf4 \xf5 \xf6 \xf7
3084 \xf8 \xf9 \xfa \xfb \xfc \xfd \xfe \xff
3085 Subject length lower bound = 1
3090 /\(([^()]++|\([^()]+\))+\)/I
3091 Capturing subpattern count = 1
3092 First code unit = '('
3093 Last code unit = ')'
3094 Subject length lower bound = 3
3102 ((()aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
3106 ------------------------------------------------------------------
3125 ------------------------------------------------------------------
3126 Capturing subpattern count = 1
3127 First code unit = 'a'
3128 Last code unit = 'c'
3129 Subject length lower bound = 3
3132 Failed: error 109 at offset 3: quantifier does not follow a repeatable item
3135 Failed: error 109 at offset 7: quantifier does not follow a repeatable item
3138 Failed: error 109 at offset 7: quantifier does not follow a repeatable item
3140 /a{2,3}?+b/I,ungreedy
3141 Failed: error 109 at offset 7: quantifier does not follow a repeatable item
3144 ------------------------------------------------------------------
3151 ------------------------------------------------------------------
3152 Capturing subpattern count = 0
3153 First code unit = 'x'
3154 Last code unit = 'b'
3155 Subject length lower bound = 3
3160 ------------------------------------------------------------------
3167 ------------------------------------------------------------------
3168 Capturing subpattern count = 0
3169 First code unit = 'x'
3170 Last code unit = 'b'
3171 Subject length lower bound = 3
3175 /^((a+)(?U)([ab]+)(?-U)([bc]+)(\w*))/IB
3176 ------------------------------------------------------------------
3195 ------------------------------------------------------------------
3196 Capturing subpattern count = 5
3197 Compile options: <none>
3198 Overall options: anchored
3199 First code unit = 'a'
3200 Subject length lower bound = 3
3203 ------------------------------------------------------------------
3211 ------------------------------------------------------------------
3212 Capturing subpattern count = 0
3213 Compile options: <none>
3214 Overall options: anchored
3215 First code unit = 'x'
3216 Last code unit = 'b'
3217 Subject length lower bound = 3
3220 ------------------------------------------------------------------
3230 ------------------------------------------------------------------
3231 Capturing subpattern count = 1
3232 Compile options: <none>
3233 Overall options: anchored
3234 First code unit = 'x'
3235 Last code unit = 'b'
3236 Subject length lower bound = 3
3239 Failed: error 113 at offset 0: POSIX collating elements are not supported
3242 Failed: error 113 at offset 0: POSIX collating elements are not supported
3245 Failed: error 112 at offset 0: POSIX named classes are supported only within a class
3248 Failed: error 137 at offset 2: PCRE2 does not support \F, \L, \l, \N{name}, \U, or \u
3251 Failed: error 137 at offset 2: PCRE2 does not support \F, \L, \l, \N{name}, \U, or \u
3254 Failed: error 137 at offset 2: PCRE2 does not support \F, \L, \l, \N{name}, \U, or \u
3257 Failed: error 137 at offset 2: PCRE2 does not support \F, \L, \l, \N{name}, \U, or \u
3260 Failed: error 137 at offset 2: PCRE2 does not support \F, \L, \l, \N{name}, \U, or \u
3263 Failed: error 137 at offset 2: PCRE2 does not support \F, \L, \l, \N{name}, \U, or \u
3270 Failed: error 106 at offset 1: missing terminating ] for character class
3273 Failed: error 106 at offset 3: missing terminating ] for character class
3276 Failed: error 106 at offset 10: missing terminating ] for character class
3279 ------------------------------------------------------------------
3284 ------------------------------------------------------------------
3285 Capturing subpattern count = 0
3286 Starting code units: \x09 \x0a \x0b \x0c \x0d \x20
3287 Subject length lower bound = 1
3290 ------------------------------------------------------------------
3295 ------------------------------------------------------------------
3296 Capturing subpattern count = 0
3297 Starting code units: \x09 \x0a \x0b \x0c \x0d \x20
3298 Subject length lower bound = 1
3300 /[[:space:]abcde]/IB
3301 ------------------------------------------------------------------
3306 ------------------------------------------------------------------
3307 Capturing subpattern count = 0
3308 Starting code units: \x09 \x0a \x0b \x0c \x0d \x20 a b c d e
3309 Subject length lower bound = 1
3311 /< (?: (?(R) \d++ | [^<>]*+) | (?R)) * >/Ix
3312 Capturing subpattern count = 0
3314 First code unit = '<'
3315 Last code unit = '>'
3316 Subject length lower bound = 2
3333 /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/IB
3334 ------------------------------------------------------------------
3336 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
3340 ------------------------------------------------------------------
3341 Capturing subpattern count = 0
3343 First code unit = '8'
3344 Last code unit = 'X'
3345 Subject length lower bound = 409
3347 /\$\<\.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/IB
3348 ------------------------------------------------------------------
3350 $<.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
3354 ------------------------------------------------------------------
3355 Capturing subpattern count = 0
3357 First code unit = '$'
3358 Last code unit = 'X'
3359 Subject length lower bound = 404
3362 Capturing subpattern count = 1
3363 Max back reference = 1
3364 Subject length lower bound = 1
3367 Capturing subpattern count = 1
3368 First code unit at start or follows newline
3369 Subject length lower bound = 1
3372 Capturing subpattern count = 1
3373 Max back reference = 1
3375 Subject length lower bound = 1
3378 Capturing subpattern count = 1
3379 Compile options: dotall
3380 Overall options: anchored dotall
3381 Subject length lower bound = 1
3384 Capturing subpattern count = 2
3385 Max back reference = 2
3386 First code unit at start or follows newline
3387 Last code unit = 'z'
3388 Subject length lower bound = 7
3391 Capturing subpattern count = 2
3392 Max back reference = 1
3393 Subject length lower bound = 1
3400 Capturing subpattern count = 0
3401 First code unit = 'a'
3402 Last code unit = 'b'
3403 Subject length lower bound = 2
3406 Capturing subpattern count = 0
3407 May match empty string
3408 First code unit = 'a'
3409 Subject length lower bound = 0
3412 Capturing subpattern count = 0
3414 First code unit = 'a' (caseless)
3415 Last code unit = 'z' (caseless)
3416 Subject length lower bound = 4
3419 Capturing subpattern count = 0
3420 First code unit = 'a'
3421 Last code unit = 'z' (caseless)
3422 Subject length lower bound = 4
3425 Capturing subpattern count = 0
3426 May match empty string
3427 First code unit = 'a'
3428 Subject length lower bound = 0
3431 Capturing subpattern count = 0
3432 First code unit = 'a'
3433 Subject length lower bound = 1
3436 Capturing subpattern count = 1
3437 First code unit = 'a'
3438 Last code unit = 'a'
3439 Subject length lower bound = 1
3442 Capturing subpattern count = 1
3443 First code unit = 'a'
3444 Last code unit = 'b'
3445 Subject length lower bound = 2
3448 Capturing subpattern count = 1
3449 First code unit = 'a'
3450 Subject length lower bound = 1
3452 /(?:(?=.)|(?<!x))a/I
3453 Capturing subpattern count = 0
3455 First code unit = 'a'
3456 Subject length lower bound = 1
3459 Capturing subpattern count = 1
3460 Max back reference = 1
3461 First code unit = 'a'
3462 Subject length lower bound = 3
3465 Capturing subpattern count = 1
3466 Max back reference = 1
3467 First code unit = 'a'
3468 Last code unit = 'z'
3469 Subject length lower bound = 4
3472 Capturing subpattern count = 1
3473 Max back reference = 1
3474 Subject length lower bound = 1
3477 Capturing subpattern count = 1
3478 Max back reference = 1
3479 Last code unit = '3'
3480 Subject length lower bound = 3
3483 Capturing subpattern count = 1
3484 First code unit = 'a'
3485 Subject length lower bound = 1
3488 Capturing subpattern count = 1
3489 First code unit = 'a'
3490 Last code unit = 'a'
3491 Subject length lower bound = 2
3494 Capturing subpattern count = 1
3495 May match empty string
3496 Subject length lower bound = 0
3499 Capturing subpattern count = 0
3500 First code unit = 'a'
3501 Subject length lower bound = 1
3504 Capturing subpattern count = 0
3505 Starting code units: a b
3506 Subject length lower bound = 1
3509 Capturing subpattern count = 0
3510 Starting code units: a b
3511 Subject length lower bound = 1
3514 Capturing subpattern count = 0
3515 Subject length lower bound = 1
3518 Capturing subpattern count = 0
3519 Starting code units: 0 1 2 3 4 5 6 7 8 9
3520 Last code unit = '6'
3521 Subject length lower bound = 4
3524 Capturing subpattern count = 0
3525 Starting code units: 0 1 2 3 4 5 6 7 8 9
3526 Last code unit = '6'
3527 Subject length lower bound = 4
3530 Capturing subpattern count = 0
3531 First code unit = 'a'
3532 Last code unit = 'b'
3533 Subject length lower bound = 2
3536 Capturing subpattern count = 0
3538 First code unit at start or follows newline
3539 Last code unit = 'a'
3540 Subject length lower bound = 1
3550 Capturing subpattern count = 0
3551 Starting code units: a c
3552 Last code unit = 'c'
3553 Subject length lower bound = 1
3556 Capturing subpattern count = 0
3557 Starting code units: A B a b
3558 Subject length lower bound = 1
3561 Capturing subpattern count = 0
3562 Starting code units: a b
3563 Last code unit = 'd' (caseless)
3564 Subject length lower bound = 3
3567 Capturing subpattern count = 0
3568 First code unit = 'a'
3569 Last code unit = 'f'
3570 Subject length lower bound = 6
3588 Capturing subpattern count = 0
3589 First code unit = 'a'
3590 Last code unit = 'f'
3591 Subject length lower bound = 6
3598 /(?C1)\dabc(?C2)def/I
3599 Capturing subpattern count = 0
3600 Starting code units: 0 1 2 3 4 5 6 7 8 9
3601 Last code unit = 'f'
3602 Subject length lower bound = 7
3615 /(?C1)\dabc(?C2)def/I
3616 Capturing subpattern count = 0
3617 Starting code units: 0 1 2 3 4 5 6 7 8 9
3618 Last code unit = 'f'
3619 Subject length lower bound = 7
3633 Capturing subpattern count = 0
3634 First code unit = 'a'
3635 Last code unit = 'b'
3636 Subject length lower bound = 2
3639 Failed: error 138 at offset 6: number after (?C is greater than 255
3642 Failed: error 182 at offset 3: unrecognized string delimiter follows (?C
3645 Failed: error 139 at offset 5: closing parenthesis for (?C expected
3648 Capturing subpattern count = 0
3649 First code unit = 'a'
3650 Last code unit = 'f'
3651 Subject length lower bound = 6
3657 /(abc)(?C)de(?C1)f/I
3658 Capturing subpattern count = 1
3659 First code unit = 'a'
3660 Last code unit = 'f'
3661 Subject length lower bound = 6
3668 123abcdef\=callout_capture
3669 Callout 0: last capture = 1
3673 Callout 1: last capture = 1
3679 123abcdefC-\=callout_none
3683 123abcdef\=callout_fail=1
3690 Capturing subpattern count = 1
3691 May match empty string
3692 Subject length lower bound = 0
3701 abcabc\=callout_fail=1:4
3708 abcabcabc\=callout_fail=1:4
3718 Capturing subpattern count = 1
3719 May match empty string
3720 Subject length lower bound = 0
3721 123\=callout_capture
3722 Callout 0: last capture = 0
3727 123456\=callout_capture
3728 Callout 0: last capture = 0
3731 Callout 0: last capture = 1
3737 123456789\=callout_capture
3738 Callout 0: last capture = 0
3741 Callout 0: last capture = 1
3745 Callout 0: last capture = 1
3752 /((xyz)(?C)p|(?C1)xyzabc)/I
3753 Capturing subpattern count = 2
3754 First code unit = 'x'
3755 Subject length lower bound = 4
3756 xyzabc\=callout_capture
3757 Callout 0: last capture = 2
3762 Callout 1: last capture = 0
3768 /(X)((xyz)(?C)p|(?C1)xyzabc)/I
3769 Capturing subpattern count = 3
3770 First code unit = 'X'
3771 Last code unit = 'x'
3772 Subject length lower bound = 5
3773 Xxyzabc\=callout_capture
3774 Callout 0: last capture = 3
3780 Callout 1: last capture = 1
3788 /(?=(abc))(?C)abcdef/I
3789 Capturing subpattern count = 1
3790 First code unit = 'a'
3791 Last code unit = 'f'
3792 Subject length lower bound = 6
3793 abcdef\=callout_capture
3794 Callout 0: last capture = 1
3801 /(?!(abc)(?C1)d)(?C2)abcxyz/I
3802 Capturing subpattern count = 1
3803 First code unit = 'a'
3804 Last code unit = 'z'
3805 Subject length lower bound = 6
3806 abcxyz\=callout_capture
3807 Callout 1: last capture = 1
3811 Callout 2: last capture = 0
3816 /(?<=(abc)(?C))xyz/I
3817 Capturing subpattern count = 1
3819 First code unit = 'x'
3820 Last code unit = 'z'
3821 Subject length lower bound = 3
3822 abcxyz\=callout_capture
3823 Callout 0: last capture = 1
3831 Capturing subpattern count = 2
3832 First code unit = 'a'
3833 Last code unit = 'b'
3834 Subject length lower bound = 2
3836 abbbbbccc\=callout_data=1
3838 1 ^ ^ End of pattern
3843 Capturing subpattern count = 2
3844 First code unit = 'a'
3845 Last code unit = 'b'
3846 Subject length lower bound = 2
3848 abbbbbccc\=callout_data=1
3850 1 ^ ^ End of pattern
3852 1 ^ ^ End of pattern
3854 1 ^ ^ End of pattern
3856 1 ^ ^ End of pattern
3858 1 ^ ^ End of pattern
3860 1 ^ ^ End of pattern
3862 1 ^ ^ End of pattern
3864 1 ^ ^ End of pattern
3869 Capturing subpattern count = 0
3870 First code unit = 'a'
3871 Last code unit = 'c'
3872 Subject length lower bound = 3
3875 Capturing subpattern count = 0
3876 Compile options: <none>
3877 Overall options: anchored
3878 First code unit = 'a'
3879 Subject length lower bound = 3
3882 Capturing subpattern count = 0
3883 Starting code units: a b
3884 Subject length lower bound = 1
3887 Capturing subpattern count = 1
3888 Starting code units: a b
3889 Subject length lower bound = 1
3896 /x(ab|(bc|(de|(?R))))/I
3897 Capturing subpattern count = 3
3898 First code unit = 'x'
3899 Subject length lower bound = 3
3926 /^([^()]|\((?1)*\))*$/I
3927 Capturing subpattern count = 1
3928 May match empty string
3929 Compile options: <none>
3930 Overall options: anchored
3931 Subject length lower bound = 0
3945 /^>abc>([^()]|\((?1)*\))*<xyz<$/I
3946 Capturing subpattern count = 1
3947 Compile options: <none>
3948 Overall options: anchored
3949 First code unit = '>'
3950 Last code unit = '<'
3951 Subject length lower bound = 10
3959 0: >abc>(1(2)3)<xyz<
3963 ------------------------------------------------------------------
3972 ------------------------------------------------------------------
3973 Capturing subpattern count = 1
3974 First code unit = 'a'
3975 Last code unit = 'b'
3976 Subject length lower bound = 2
3979 ------------------------------------------------------------------
3990 ------------------------------------------------------------------
3991 Capturing subpattern count = 1
3992 First code unit = 'a'
3993 Last code unit = 'b'
3994 Subject length lower bound = 2
3996 /^(\d+|\((?1)([+*-])(?1)\)|-(?1))$/I
3997 Capturing subpattern count = 2
3998 Compile options: <none>
3999 Overall options: anchored
4000 Starting code units: ( - 0 1 2 3 4 5 6 7 8 9
4001 Subject length lower bound = 1
4017 Capturing subpattern count = 2
4018 Compile options: <none>
4019 Overall options: anchored
4020 First code unit = 'x'
4021 Subject length lower bound = 3
4036 /((< (?: (?(R) \d++ | [^<>]*+) | (?2)) * >))/Ix
4037 Capturing subpattern count = 2
4039 First code unit = '<'
4040 Last code unit = '>'
4041 Subject length lower bound = 2
4071 Failed: error 115 at offset 3: reference to non-existent subpattern
4074 Failed: error 114 at offset 10: missing closing parenthesis
4077 Capturing subpattern count = 1
4078 Compile options: <none>
4079 Overall options: anchored
4080 First code unit = 'a'
4081 Subject length lower bound = 9
4087 Capturing subpattern count = 1
4088 Compile options: <none>
4089 Overall options: anchored
4090 Starting code units: a b c
4091 Subject length lower bound = 2
4103 Capturing subpattern count = 2
4104 Compile options: <none>
4105 Overall options: anchored
4106 Starting code units: a b c
4107 Subject length lower bound = 2
4121 /a(?P<name1>b|c)d(?P<longername2>e)/IB
4122 ------------------------------------------------------------------
4136 ------------------------------------------------------------------
4137 Capturing subpattern count = 2
4138 Named capturing subpatterns:
4141 First code unit = 'a'
4142 Last code unit = 'e'
4143 Subject length lower bound = 4
4153 /(?:a(?P<c>c(?P<d>d)))(?P<a>a)/IB
4154 ------------------------------------------------------------------
4170 ------------------------------------------------------------------
4171 Capturing subpattern count = 3
4172 Named capturing subpatterns:
4176 First code unit = 'a'
4177 Last code unit = 'a'
4178 Subject length lower bound = 4
4180 /(?P<a>a)...(?P=a)bbb(?P>a)d/IB
4181 ------------------------------------------------------------------
4195 ------------------------------------------------------------------
4196 Capturing subpattern count = 1
4197 Max back reference = 1
4198 Named capturing subpatterns:
4200 First code unit = 'a'
4201 Last code unit = 'd'
4202 Subject length lower bound = 10
4204 /^\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
4205 Capturing subpattern count = 4
4206 Max back reference = 4
4207 Named capturing subpatterns:
4212 May match empty string
4213 Compile options: caseless
4214 Overall options: anchored caseless
4215 Subject length lower bound = 0
4220 Satan, oscillate my metallic sonatas!
4221 0: Satan, oscillate my metallic sonatas!
4224 3: Satan, oscillate my metallic sonatas
4226 A man, a plan, a canal: Panama!
4227 0: A man, a plan, a canal: Panama!
4230 3: A man, a plan, a canal: Panama
4232 Able was I ere I saw Elba.
4233 0: Able was I ere I saw Elba.
4236 3: Able was I ere I saw Elba
4242 /((?(R)a|b))\1(?1)?/I
4243 Capturing subpattern count = 1
4244 Max back reference = 1
4245 Subject length lower bound = 2
4254 Capturing subpattern count = 1
4255 Compile options: dotall
4256 Overall options: anchored dotall
4257 Last code unit = 'a'
4258 Subject length lower bound = 1
4261 Capturing subpattern count = 1
4262 Max back reference = 1
4264 Last code unit = 'a'
4265 Subject length lower bound = 1
4268 Capturing subpattern count = 2
4269 Max back reference = 2
4270 Compile options: dotall
4271 Overall options: anchored dotall
4272 Last code unit = 'b'
4273 Subject length lower bound = 3
4276 Capturing subpattern count = 3
4277 Compile options: dotall
4278 Overall options: anchored dotall
4279 Last code unit = 'z'
4280 Subject length lower bound = 2
4282 /((.*)a|(.*)b)z\1/Is
4283 Capturing subpattern count = 3
4284 Max back reference = 1
4286 Last code unit = 'z'
4287 Subject length lower bound = 3
4289 /((.*)a|(.*)b)z\2/Is
4290 Capturing subpattern count = 3
4291 Max back reference = 2
4293 Last code unit = 'z'
4294 Subject length lower bound = 2
4296 /((.*)a|(.*)b)z\3/Is
4297 Capturing subpattern count = 3
4298 Max back reference = 3
4300 Last code unit = 'z'
4301 Subject length lower bound = 2
4303 /((.*)a|^(.*)b)z\3/Is
4304 Capturing subpattern count = 3
4305 Max back reference = 3
4306 Compile options: dotall
4307 Overall options: anchored dotall
4308 Last code unit = 'z'
4309 Subject length lower bound = 2
4311 /(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a/Is
4312 Capturing subpattern count = 31
4313 May match empty string
4314 Compile options: dotall
4315 Overall options: anchored dotall
4316 Subject length lower bound = 0
4318 /(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a\31/Is
4319 Capturing subpattern count = 31
4320 Max back reference = 31
4321 May match empty string
4323 Subject length lower bound = 0
4325 /(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a\32/Is
4326 Capturing subpattern count = 32
4327 Max back reference = 32
4328 May match empty string
4330 Subject length lower bound = 0
4332 /(a)(bc)/IB,no_auto_capture
4333 ------------------------------------------------------------------
4343 ------------------------------------------------------------------
4344 Capturing subpattern count = 0
4345 Options: no_auto_capture
4346 First code unit = 'a'
4347 Last code unit = 'c'
4348 Subject length lower bound = 3
4352 /(?P<one>a)(bc)/IB,no_auto_capture
4353 ------------------------------------------------------------------
4363 ------------------------------------------------------------------
4364 Capturing subpattern count = 1
4365 Named capturing subpatterns:
4367 Options: no_auto_capture
4368 First code unit = 'a'
4369 Last code unit = 'c'
4370 Subject length lower bound = 3
4375 /(a)(?P<named>bc)/IB,no_auto_capture
4376 ------------------------------------------------------------------
4386 ------------------------------------------------------------------
4387 Capturing subpattern count = 1
4388 Named capturing subpatterns:
4390 Options: no_auto_capture
4391 First code unit = 'a'
4392 Last code unit = 'c'
4393 Subject length lower bound = 3
4396 Capturing subpattern count = 1
4397 First code unit = 'a'
4398 Last code unit = 'b'
4399 Subject length lower bound = 2
4405 aaabbb\=callout_data=0
4410 aaabbb\=callout_data=1
4417 aaabbb\=callout_data=-1
4423 /ab(?P<one>cd)ef(?P<two>gh)/I
4424 Capturing subpattern count = 2
4425 Named capturing subpatterns:
4428 First code unit = 'a'
4429 Last code unit = 'h'
4430 Subject length lower bound = 8
4435 abcdefgh\=copy=1,get=two
4440 G gh (2) two (group 2)
4441 abcdefgh\=copy=one,copy=two
4445 C cd (2) one (group 1)
4446 C gh (2) two (group 2)
4447 abcdefgh\=copy=three
4451 Number not found for group 'three'
4452 Copy substring 'three' failed (-49): unknown substring
4454 /(?P<Tes>)(?P<Test>)/IB
4455 ------------------------------------------------------------------
4463 ------------------------------------------------------------------
4464 Capturing subpattern count = 2
4465 Named capturing subpatterns:
4468 May match empty string
4469 Subject length lower bound = 0
4471 /(?P<Test>)(?P<Tes>)/IB
4472 ------------------------------------------------------------------
4480 ------------------------------------------------------------------
4481 Capturing subpattern count = 2
4482 Named capturing subpatterns:
4485 May match empty string
4486 Subject length lower bound = 0
4488 /(?P<Z>zz)(?P<A>aa)/I
4489 Capturing subpattern count = 2
4490 Named capturing subpatterns:
4493 First code unit = 'z'
4494 Last code unit = 'a'
4495 Subject length lower bound = 4
4500 C zz (2) Z (group 1)
4505 C aa (2) A (group 2)
4507 /(?P<x>eks)(?P<x>eccs)/I
4508 Failed: error 143 at offset 16: two named subpatterns have the same name (PCRE2_DUPNAMES not set)
4510 /(?P<abc>abc(?P<def>def)(?P<abc>xyz))/I
4511 Failed: error 143 at offset 31: two named subpatterns have the same name (PCRE2_DUPNAMES not set)
4513 "\[((?P<elem>\d+)(,(?P>elem))*)\]"I
4514 Capturing subpattern count = 3
4515 Named capturing subpatterns:
4517 First code unit = '['
4518 Last code unit = ']'
4519 Subject length lower bound = 3
4520 [10,20,30,5,5,4,4,2,43,23,4234]
4521 0: [10,20,30,5,5,4,4,2,43,23,4234]
4522 1: 10,20,30,5,5,4,4,2,43,23,4234
4529 "\[((?P<elem>\d+)(,(?P>elem))*)?\]"I
4530 Capturing subpattern count = 3
4531 Named capturing subpatterns:
4533 First code unit = '['
4534 Last code unit = ']'
4535 Subject length lower bound = 2
4536 [10,20,30,5,5,4,4,2,43,23,4234]
4537 0: [10,20,30,5,5,4,4,2,43,23,4234]
4538 1: 10,20,30,5,5,4,4,2,43,23,4234
4545 ------------------------------------------------------------------
4558 ------------------------------------------------------------------
4559 Capturing subpattern count = 2
4560 May match empty string
4561 Subject length lower bound = 0
4564 ------------------------------------------------------------------
4577 ------------------------------------------------------------------
4578 Capturing subpattern count = 2
4579 May match empty string
4580 Subject length lower bound = 0
4582 /(a(b(?2)c)){0,2}/IB
4583 ------------------------------------------------------------------
4607 ------------------------------------------------------------------
4608 Capturing subpattern count = 2
4609 May match empty string
4610 Subject length lower bound = 0
4613 ------------------------------------------------------------------
4618 ------------------------------------------------------------------
4621 ------------------------------------------------------------------
4628 ------------------------------------------------------------------
4631 ------------------------------------------------------------------
4638 ------------------------------------------------------------------
4640 /((w\/|-|with)*(free|immediate)*.*?shipping\s*[!.-]*)/Ii
4641 Capturing subpattern count = 3
4643 Last code unit = 'g' (caseless)
4644 Subject length lower bound = 8
4645 Baby Bjorn Active Carrier - With free SHIPPING!!
4646 0: Baby Bjorn Active Carrier - With free SHIPPING!!
4647 1: Baby Bjorn Active Carrier - With free SHIPPING!!
4649 /((w\/|-|with)*(free|immediate)*.*?shipping\s*[!.-]*)/Ii
4650 Capturing subpattern count = 3
4652 Last code unit = 'g' (caseless)
4653 Subject length lower bound = 8
4654 Baby Bjorn Active Carrier - With free SHIPPING!!
4655 0: Baby Bjorn Active Carrier - With free SHIPPING!!
4656 1: Baby Bjorn Active Carrier - With free SHIPPING!!
4659 ------------------------------------------------------------------
4666 ------------------------------------------------------------------
4667 Capturing subpattern count = 0
4668 Last code unit = 'b'
4669 Subject length lower bound = 1
4672 ------------------------------------------------------------------
4684 ------------------------------------------------------------------
4685 Capturing subpattern count = 1
4686 Last code unit = 'c'
4687 Subject length lower bound = 1
4689 /abc(?C255)de(?C)f/IB
4690 ------------------------------------------------------------------
4699 ------------------------------------------------------------------
4700 Capturing subpattern count = 0
4701 First code unit = 'a'
4702 Last code unit = 'f'
4703 Subject length lower bound = 6
4705 /abcde/IB,auto_callout
4706 ------------------------------------------------------------------
4721 ------------------------------------------------------------------
4722 Capturing subpattern count = 0
4723 Options: auto_callout
4724 First code unit = 'a'
4725 Last code unit = 'e'
4726 Subject length lower bound = 5
4734 +5 ^ ^ End of pattern
4746 /a*b/IB,auto_callout
4747 ------------------------------------------------------------------
4756 ------------------------------------------------------------------
4757 Capturing subpattern count = 0
4758 Options: auto_callout
4759 Starting code units: a b
4760 Last code unit = 'b'
4761 Subject length lower bound = 1
4766 +3 ^ ^ End of pattern
4772 +3 ^ ^ End of pattern
4786 +3 ^^ End of pattern
4789 /a*b/IB,auto_callout
4790 ------------------------------------------------------------------
4799 ------------------------------------------------------------------
4800 Capturing subpattern count = 0
4801 Options: auto_callout
4802 Starting code units: a b
4803 Last code unit = 'b'
4804 Subject length lower bound = 1
4809 +3 ^ ^ End of pattern
4815 +3 ^ ^ End of pattern
4829 +3 ^^ End of pattern
4832 /a+b/IB,auto_callout
4833 ------------------------------------------------------------------
4842 ------------------------------------------------------------------
4843 Capturing subpattern count = 0
4844 Options: auto_callout
4845 First code unit = 'a'
4846 Last code unit = 'b'
4847 Subject length lower bound = 2
4852 +3 ^ ^ End of pattern
4858 +3 ^ ^ End of pattern
4873 /(abc|def)x/IB,auto_callout
4874 ------------------------------------------------------------------
4899 ------------------------------------------------------------------
4900 Capturing subpattern count = 1
4901 Options: auto_callout
4902 Starting code units: a d
4903 Last code unit = 'x'
4904 Subject length lower bound = 4
4913 +10 ^ ^ End of pattern
4925 +10 ^ ^ End of pattern
4947 /(abc|def)x/IB,auto_callout
4948 ------------------------------------------------------------------
4973 ------------------------------------------------------------------
4974 Capturing subpattern count = 1
4975 Options: auto_callout
4976 Starting code units: a d
4977 Last code unit = 'x'
4978 Subject length lower bound = 4
4987 +10 ^ ^ End of pattern
4999 +10 ^ ^ End of pattern
5021 /(ab|cd){3,4}/I,auto_callout
5022 Capturing subpattern count = 1
5023 Options: auto_callout
5024 Starting code units: a c
5025 Subject length lower bound = 6
5040 +12 ^ ^ End of pattern
5060 +12 ^ ^ End of pattern
5081 +12 ^ ^ End of pattern
5085 /([ab]{,4}c|xy)/IB,auto_callout
5086 ------------------------------------------------------------------
5113 ------------------------------------------------------------------
5114 Capturing subpattern count = 1
5115 Options: auto_callout
5116 Starting code units: a b x
5117 Subject length lower bound = 2
5119 Note: that { does NOT introduce a quantifier
5120 --->Note: that { does NOT introduce a quantifier
5135 /([ab]{,4}c|xy)/IB,auto_callout
5136 ------------------------------------------------------------------
5163 ------------------------------------------------------------------
5164 Capturing subpattern count = 1
5165 Options: auto_callout
5166 Starting code units: a b x
5167 Subject length lower bound = 2
5169 Note: that { does NOT introduce a quantifier
5170 --->Note: that { does NOT introduce a quantifier
5185 /([ab]{1,4}c|xy){4,5}?123/IB,auto_callout
5186 ------------------------------------------------------------------
5264 ------------------------------------------------------------------
5265 Capturing subpattern count = 1
5266 Options: auto_callout
5267 Starting code units: a b x
5268 Last code unit = '3'
5269 Subject length lower bound = 11
5271 --->aacaacaacaacaac123
5292 +24 ^ ^ End of pattern
5293 0: aacaacaacaacaac123
5297 Capturing subpattern count = 0
5299 May match empty string
5300 Subject length lower bound = 0
5305 Capturing subpattern count = 0
5307 May match empty string
5309 Subject length lower bound = 0
5310 ab cd\=startoffset=1
5314 Capturing subpattern count = 0
5315 May match empty string
5316 Subject length lower bound = 0
5321 Capturing subpattern count = 0
5322 First code unit = 'a'
5323 Last code unit = 'e'
5324 Subject length lower bound = 5
5333 the quick brown abc\=ps
5335 \= Expect no match\=ps
5336 the quick brown abxyz fox\=ps
5339 "^(0?[1-9]|[12][0-9]|3[01])/(0?[1-9]|1[012])/(20)?\d\d$"I
5340 Capturing subpattern count = 3
5341 Compile options: <none>
5342 Overall options: anchored
5343 Starting code units: 0 1 2 3 4 5 6 7 8 9
5344 Last code unit = '/'
5345 Subject length lower bound = 6
5364 Partial match: 1/2/0
5377 \= Expect no match\=ps
5396 Capturing subpattern count = 0
5397 Starting code units: 0 A
5398 Last code unit = 'C'
5399 Subject length lower bound = 3
5402 Capturing subpattern count = 0
5403 Starting code units: 0 1 2 3 4 5 6 7 8 9
5404 Last code unit = 'C'
5405 Subject length lower bound = 6
5408 Capturing subpattern count = 0
5409 Starting code units: 0 1 2 3 4 5 6 7 8 9 A
5410 Last code unit = 'C'
5411 Subject length lower bound = 3
5414 Capturing subpattern count = 0
5415 Starting code units: a b c
5416 Last code unit = 'E'
5417 Subject length lower bound = 3
5420 Capturing subpattern count = 0
5421 Starting code units: 1 a b c
5422 Last code unit = '3'
5423 Subject length lower bound = 3
5438 Capturing subpattern count = 0
5439 Compile options: <none>
5440 Overall options: anchored
5441 Starting code units: 0 1 2 3 4 5 6 7 8 9
5442 Last code unit = 'X'
5443 Subject length lower bound = 4
5455 Partial match: 12345
5464 "<(\w+)/?>(.)*</(\1)>"Igms
5465 Capturing subpattern count = 3
5466 Max back reference = 1
5467 Options: dotall multiline
5468 First code unit = '<'
5469 Last code unit = '>'
5470 Subject length lower bound = 7
5471 <!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>\=jitstack=1024
5472 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>
5478 Capturing subpattern count = 0
5479 Contains explicit CR or LF match
5480 First code unit = 'l'
5481 Last code unit = 'k'
5482 Subject length lower bound = 10
5483 this is a line\nbreak
5485 line one\nthis is a line\nbreak in the second line
5488 /line\nbreak/I,firstline
5489 Capturing subpattern count = 0
5490 Contains explicit CR or LF match
5492 First code unit = 'l'
5493 Last code unit = 'k'
5494 Subject length lower bound = 10
5495 this is a line\nbreak
5498 line one\nthis is a line\nbreak in the second line
5501 /line\nbreak/Im,firstline
5502 Capturing subpattern count = 0
5503 Contains explicit CR or LF match
5504 Options: firstline multiline
5505 First code unit = 'l'
5506 Last code unit = 'k'
5507 Subject length lower bound = 10
5508 this is a line\nbreak
5511 line one\nthis is a line\nbreak in the second line
5515 Capturing subpattern count = 0
5516 First code unit = 'A'
5517 Last code unit = 'd'
5518 Subject length lower bound = 4
5525 /a{11111111111111111111}/I
5526 Failed: error 105 at offset 8: number too big in {} quantifier
5529 Failed: error 105 at offset 9: number too big in {} quantifier
5532 Failed: error 105 at offset 11: number too big in {} quantifier
5534 "(?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
5535 Capturing subpattern count = 1
5536 Max back reference = 1
5537 First code unit = 'a' (caseless)
5538 Last code unit = 'B'
5539 Subject length lower bound = 15
5544 "(?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
5545 Capturing subpattern count = 12
5546 Max back reference = 11
5547 Named capturing subpatterns:
5560 First code unit = 'a'
5561 Last code unit = 'B'
5562 Subject length lower bound = 15
5578 "(a)(b)(c)(d)(e)(f)(g)(h)(i)(j)(k)(l)A\11B"I
5579 Capturing subpattern count = 12
5580 Max back reference = 11
5581 First code unit = 'a'
5582 Last code unit = 'B'
5583 Subject length lower bound = 15
5599 "(?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
5600 Capturing subpattern count = 101
5601 Named capturing subpatterns:
5703 First code unit = 'a'
5704 Last code unit = 'a'
5705 Subject length lower bound = 101
5706 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
5707 Matched, but too many substrings
5708 0: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
5724 "(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(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
5725 Capturing subpattern count = 101
5726 First code unit = 'a'
5727 Last code unit = 'a'
5728 Subject length lower bound = 101
5729 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
5730 Matched, but too many substrings
5731 0: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
5747 /[^()]*(?:\((?R)\)[^()]*)*/I
5748 Capturing subpattern count = 0
5749 May match empty string
5750 Subject length lower bound = 0
5755 (this(and)that)stuff
5756 0: (this(and)that)stuff
5758 /[^()]*(?:\((?>(?R))\)[^()]*)*/I
5759 Capturing subpattern count = 0
5760 May match empty string
5761 Subject length lower bound = 0
5767 /[^()]*(?:\((?R)\))*[^()]*/I
5768 Capturing subpattern count = 0
5769 May match empty string
5770 Subject length lower bound = 0
5776 /(?:\((?R)\))*[^()]*/I
5777 Capturing subpattern count = 0
5778 May match empty string
5779 Subject length lower bound = 0
5787 /(?:\((?R)\))|[^()]*/I
5788 Capturing subpattern count = 0
5789 May match empty string
5790 Subject length lower bound = 0
5801 Capturing subpattern count = 0
5802 First code unit = \xff
5803 Subject length lower bound = 1
5805 /^((?P<A>a1)|(?P<A>a2)b)/I
5806 Failed: error 143 at offset 18: two named subpatterns have the same name (PCRE2_DUPNAMES not set)
5808 /^((?P<A>a1)|(?P<A>a2)b)/I,dupnames
5809 Capturing subpattern count = 3
5810 Named capturing subpatterns:
5813 Compile options: dupnames
5814 Overall options: anchored dupnames
5815 First code unit = 'a'
5816 Subject length lower bound = 2
5821 C a1 (2) A (non-unique)
5827 C a2 (2) A (non-unique)
5832 Number not found for group 'Z'
5833 Copy substring 'Z' failed (-49): unknown substring
5834 C a1 (2) A (non-unique)
5836 /(?|(?<a>)(?<b>)(?<a>)|(?<a>)(?<b>)(?<a>))/I,dupnames
5837 Capturing subpattern count = 3
5838 Named capturing subpatterns:
5842 May match empty string
5844 Subject length lower bound = 0
5846 /^(?P<A>a)(?P<A>b)/I,dupnames
5847 Capturing subpattern count = 2
5848 Named capturing subpatterns:
5851 Compile options: dupnames
5852 Overall options: anchored dupnames
5853 First code unit = 'a'
5854 Subject length lower bound = 2
5859 C a (1) A (non-unique)
5861 /^(?P<A>a)(?P<A>b)|cd/I,dupnames
5862 Capturing subpattern count = 2
5863 Named capturing subpatterns:
5867 Starting code units: a c
5868 Subject length lower bound = 2
5873 C a (1) A (non-unique)
5876 Copy substring 'A' failed (-55): requested value is not set
5878 /^(?P<A>a)(?P<A>b)|cd(?P<A>ef)(?P<A>gh)/I,dupnames
5879 Capturing subpattern count = 4
5880 Named capturing subpatterns:
5886 Starting code units: a c
5887 Subject length lower bound = 2
5894 C ef (2) A (non-unique)
5896 /^((?P<A>a1)|(?P<A>a2)b)/I,dupnames
5897 Capturing subpattern count = 3
5898 Named capturing subpatterns:
5901 Compile options: dupnames
5902 Overall options: anchored dupnames
5903 First code unit = 'a'
5904 Subject length lower bound = 2
5909 G a1 (2) A (non-unique)
5915 G a2 (2) A (non-unique)
5920 Number not found for group 'Z'
5921 Get substring 'Z' failed (-49): unknown substring
5922 G a1 (2) A (non-unique)
5924 /^(?P<A>a)(?P<A>b)/I,dupnames
5925 Capturing subpattern count = 2
5926 Named capturing subpatterns:
5929 Compile options: dupnames
5930 Overall options: anchored dupnames
5931 First code unit = 'a'
5932 Subject length lower bound = 2
5937 G a (1) A (non-unique)
5939 /^(?P<A>a)(?P<A>b)|cd/I,dupnames
5940 Capturing subpattern count = 2
5941 Named capturing subpatterns:
5945 Starting code units: a c
5946 Subject length lower bound = 2
5951 G a (1) A (non-unique)
5954 Get substring 'A' failed (-55): requested value is not set
5956 /^(?P<A>a)(?P<A>b)|cd(?P<A>ef)(?P<A>gh)/I,dupnames
5957 Capturing subpattern count = 4
5958 Named capturing subpatterns:
5964 Starting code units: a c
5965 Subject length lower bound = 2
5972 G ef (2) A (non-unique)
5974 /(?J)^((?P<A>a1)|(?P<A>a2)b)/I
5975 Capturing subpattern count = 3
5976 Named capturing subpatterns:
5979 Compile options: <none>
5980 Overall options: anchored
5981 Duplicate name status changes
5982 First code unit = 'a'
5983 Subject length lower bound = 2
5988 C a1 (2) A (non-unique)
5994 C a2 (2) A (non-unique)
5996 /^(?P<A>a) (?J:(?P<B>b)(?P<B>c)) (?P<A>d)/I
5997 Failed: error 143 at offset 38: two named subpatterns have the same name (PCRE2_DUPNAMES not set)
5999 # In this next test, J is not set at the outer level; consequently it isn't set
6000 # in the pattern's options; consequently pcre2_substring_get_byname() produces
6003 /^(?P<A>a) (?J:(?P<B>b)(?P<B>c)) (?P<C>d)/I
6004 Capturing subpattern count = 4
6005 Named capturing subpatterns:
6010 Compile options: <none>
6011 Overall options: anchored
6012 Duplicate name status changes
6013 First code unit = 'a'
6014 Subject length lower bound = 6
6015 a bc d\=copy=A,copy=B,copy=C
6022 C b (1) B (non-unique)
6025 /^(?P<A>a)?(?(A)a|b)/I
6026 Capturing subpattern count = 1
6027 Max back reference = 1
6028 Named capturing subpatterns:
6030 Compile options: <none>
6031 Overall options: anchored
6032 Subject length lower bound = 1
6042 /(?:(?(ZZ)a|b)(?P<ZZ>X))+/I
6043 Capturing subpattern count = 1
6044 Max back reference = 1
6045 Named capturing subpatterns:
6047 Last code unit = 'X'
6048 Subject length lower bound = 2
6053 /(?:(?(2y)a|b)(X))+/I
6054 Failed: error 124 at offset 7: missing closing parenthesis for condition
6056 /(?:(?(ZA)a|b)(?P<ZZ>X))+/I
6057 Failed: error 115 at offset 6: reference to non-existent subpattern
6059 /(?:(?(ZZ)a|b)(?(ZZ)a|b)(?P<ZZ>X))+/I
6060 Capturing subpattern count = 1
6061 Max back reference = 1
6062 Named capturing subpatterns:
6064 Last code unit = 'X'
6065 Subject length lower bound = 3
6070 /(?:(?(ZZ)a|\(b\))\\(?P<ZZ>X))+/I
6071 Capturing subpattern count = 1
6072 Max back reference = 1
6073 Named capturing subpatterns:
6075 Last code unit = 'X'
6076 Subject length lower bound = 3
6082 Failed: error 142 at offset 7: syntax error in subpattern name (missing terminator)
6084 /(?:(?(A)(?P=A)a|b)(?P<A>X|Y))+/I
6085 Capturing subpattern count = 1
6086 Max back reference = 1
6087 Named capturing subpatterns:
6089 Subject length lower bound = 2
6097 /()()()()()()()()()(?:(?(A)(?P=A)a|b)(?P<A>X|Y))+/I
6098 Capturing subpattern count = 10
6099 Max back reference = 10
6100 Named capturing subpatterns:
6102 Subject length lower bound = 2
6117 Capturing subpattern count = 0
6118 Starting code units: \x09 \x0a \x0b \x0c \x0d \x20 ,
6119 Last code unit = ','
6120 Subject length lower bound = 1
6127 Capturing subpattern count = 0
6129 Forced newline is LF
6130 First code unit at start or follows newline
6131 Last code unit = 'c'
6132 Subject length lower bound = 3
6149 /^abc/Im,newline=crlf
6150 Capturing subpattern count = 0
6152 Forced newline is CRLF
6153 First code unit at start or follows newline
6154 Last code unit = 'c'
6155 Subject length lower bound = 3
6165 Capturing subpattern count = 0
6167 Forced newline is CR
6168 First code unit at start or follows newline
6169 Last code unit = 'c'
6170 Subject length lower bound = 3
6179 /^abc/Im,newline=bad
6180 ** Invalid value in 'newline=bad'
6183 Capturing subpattern count = 0
6184 May match empty string
6185 Forced newline is LF
6186 First code unit at start or follows newline
6187 Subject length lower bound = 0
6196 Capturing subpattern count = 0
6197 May match empty string
6198 Forced newline is CR
6199 First code unit at start or follows newline
6200 Subject length lower bound = 0
6209 Capturing subpattern count = 0
6210 May match empty string
6211 Forced newline is CRLF
6212 First code unit at start or follows newline
6213 Subject length lower bound = 0
6222 Capturing subpattern count = 2
6224 Starting code units: 0 1 2 3 4 5 6 7 8 9 A B C D E F G H I J K L M N O P
6225 Q R S T U V W X Y Z _ 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
6226 Last code unit = 'f'
6227 Subject length lower bound = 5
6239 /(?P<B>25[0-5]|2[0-4]\d|[01]?\d?\d)(?:\.(?P>B)){3}/I
6240 Capturing subpattern count = 1
6241 Named capturing subpatterns:
6243 Starting code units: 0 1 2 3 4 5 6 7 8 9
6244 Last code unit = '.'
6245 Subject length lower bound = 7
6247 /()()()()()()()()()()()()()()()()()()()()
6248 ()()()()()()()()()()()()()()()()()()()()
6249 ()()()()()()()()()()()()()()()()()()()()
6250 ()()()()()()()()()()()()()()()()()()()()
6251 ()()()()()()()()()()()()()()()()()()()()
6253 Capturing subpattern count = 102
6255 Subject length lower bound = 2
6361 /(a*b|(?i:c*(?-i)d))/I
6362 Capturing subpattern count = 1
6363 Starting code units: C a b c d
6364 Subject length lower bound = 1
6367 Capturing subpattern count = 1
6368 Starting code units: a b
6369 Last code unit = 'z'
6370 Subject length lower bound = 4
6373 Capturing subpattern count = 1
6374 Starting code units: a b
6375 Last code unit = 'z'
6376 Subject length lower bound = 4
6379 Capturing subpattern count = 1
6380 Starting code units: a b c
6381 Last code unit = 'z'
6382 Subject length lower bound = 4
6385 Capturing subpattern count = 1
6386 Starting code units: a b c
6387 Last code unit = 'z'
6388 Subject length lower bound = 4
6391 Capturing subpattern count = 1
6392 Starting code units: a b c d
6393 Last code unit = 'z'
6394 Subject length lower bound = 4
6397 Capturing subpattern count = 1
6398 Starting code units: a b c d
6399 Last code unit = 'z'
6400 Subject length lower bound = 4
6403 ------------------------------------------------------------------
6411 ------------------------------------------------------------------
6412 Capturing subpattern count = 0
6413 Compile options: <none>
6414 Overall options: anchored
6415 Starting code units: a b
6416 Last code unit = 'b'
6417 Subject length lower bound = 2
6420 ------------------------------------------------------------------
6428 ------------------------------------------------------------------
6429 Capturing subpattern count = 0
6430 Compile options: <none>
6431 Overall options: anchored
6432 Starting code units: a b
6433 Last code unit = 'b'
6434 Subject length lower bound = 2
6437 ------------------------------------------------------------------
6445 ------------------------------------------------------------------
6446 Capturing subpattern count = 0
6447 Compile options: <none>
6448 Overall options: anchored
6449 Starting code units: a b
6450 Last code unit = 'b'
6451 Subject length lower bound = 2
6454 ------------------------------------------------------------------
6462 ------------------------------------------------------------------
6463 Capturing subpattern count = 0
6464 Compile options: <none>
6465 Overall options: anchored
6466 First code unit = 'a'
6467 Last code unit = 'A'
6468 Subject length lower bound = 3
6476 ------------------------------------------------------------------
6484 ------------------------------------------------------------------
6485 Capturing subpattern count = 0
6486 Compile options: caseless
6487 Overall options: anchored caseless
6488 Starting code units: A a
6489 Last code unit = 'A' (caseless)
6490 Subject length lower bound = 2
6497 Capturing subpattern count = 1
6498 Starting code units: a b c d
6499 Subject length lower bound = 1
6502 Capturing subpattern count = 1
6503 Starting code units: a b c d
6504 Subject length lower bound = 1
6507 Capturing subpattern count = 1
6508 Starting code units: a b c d
6509 Subject length lower bound = 1
6512 Capturing subpattern count = 1
6513 Starting code units: a b
6514 Subject length lower bound = 2
6516 /((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((
6517 ((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((
6520 ))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
6521 ))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
6524 Capturing subpattern count = 203
6526 First code unit = 'a'
6527 Subject length lower bound = 1
6529 Matched, but too many substrings
6547 ------------------------------------------------------------------
6553 ------------------------------------------------------------------
6556 ------------------------------------------------------------------
6562 ------------------------------------------------------------------
6565 ------------------------------------------------------------------
6571 ------------------------------------------------------------------
6574 ------------------------------------------------------------------
6580 ------------------------------------------------------------------
6583 ------------------------------------------------------------------
6589 ------------------------------------------------------------------
6592 ------------------------------------------------------------------
6598 ------------------------------------------------------------------
6601 ------------------------------------------------------------------
6607 ------------------------------------------------------------------
6610 ------------------------------------------------------------------
6616 ------------------------------------------------------------------
6619 ------------------------------------------------------------------
6625 ------------------------------------------------------------------
6628 ------------------------------------------------------------------
6634 ------------------------------------------------------------------
6637 ------------------------------------------------------------------
6643 ------------------------------------------------------------------
6646 ------------------------------------------------------------------
6652 ------------------------------------------------------------------
6655 ------------------------------------------------------------------
6661 ------------------------------------------------------------------
6664 ------------------------------------------------------------------
6670 ------------------------------------------------------------------
6673 ------------------------------------------------------------------
6679 ------------------------------------------------------------------
6682 ------------------------------------------------------------------
6688 ------------------------------------------------------------------
6691 ------------------------------------------------------------------
6697 ------------------------------------------------------------------
6700 ------------------------------------------------------------------
6706 ------------------------------------------------------------------
6709 ------------------------------------------------------------------
6715 ------------------------------------------------------------------
6718 ------------------------------------------------------------------
6724 ------------------------------------------------------------------
6727 ------------------------------------------------------------------
6733 ------------------------------------------------------------------
6736 ------------------------------------------------------------------
6742 ------------------------------------------------------------------
6745 ------------------------------------------------------------------
6751 ------------------------------------------------------------------
6754 ------------------------------------------------------------------
6760 ------------------------------------------------------------------
6763 ------------------------------------------------------------------
6769 ------------------------------------------------------------------
6772 ------------------------------------------------------------------
6778 ------------------------------------------------------------------
6781 ------------------------------------------------------------------
6787 ------------------------------------------------------------------
6790 ------------------------------------------------------------------
6796 ------------------------------------------------------------------
6799 ------------------------------------------------------------------
6805 ------------------------------------------------------------------
6808 ------------------------------------------------------------------
6814 ------------------------------------------------------------------
6817 ------------------------------------------------------------------
6823 ------------------------------------------------------------------
6826 ------------------------------------------------------------------
6832 ------------------------------------------------------------------
6835 ------------------------------------------------------------------
6841 ------------------------------------------------------------------
6844 ------------------------------------------------------------------
6850 ------------------------------------------------------------------
6853 ------------------------------------------------------------------
6859 ------------------------------------------------------------------
6862 ------------------------------------------------------------------
6868 ------------------------------------------------------------------
6871 ------------------------------------------------------------------
6877 ------------------------------------------------------------------
6880 ------------------------------------------------------------------
6886 ------------------------------------------------------------------
6889 ------------------------------------------------------------------
6895 ------------------------------------------------------------------
6898 ------------------------------------------------------------------
6904 ------------------------------------------------------------------
6907 ------------------------------------------------------------------
6913 ------------------------------------------------------------------
6916 ------------------------------------------------------------------
6922 ------------------------------------------------------------------
6925 ------------------------------------------------------------------
6931 ------------------------------------------------------------------
6934 ------------------------------------------------------------------
6940 ------------------------------------------------------------------
6943 ------------------------------------------------------------------
6949 ------------------------------------------------------------------
6952 ------------------------------------------------------------------
6958 ------------------------------------------------------------------
6961 ------------------------------------------------------------------
6967 ------------------------------------------------------------------
6970 ------------------------------------------------------------------
6976 ------------------------------------------------------------------
6979 ------------------------------------------------------------------
6985 ------------------------------------------------------------------
6988 ------------------------------------------------------------------
6994 ------------------------------------------------------------------
6997 ------------------------------------------------------------------
7003 ------------------------------------------------------------------
7006 ------------------------------------------------------------------
7012 ------------------------------------------------------------------
7015 ------------------------------------------------------------------
7021 ------------------------------------------------------------------
7024 ------------------------------------------------------------------
7030 ------------------------------------------------------------------
7033 ------------------------------------------------------------------
7039 ------------------------------------------------------------------
7042 ------------------------------------------------------------------
7048 ------------------------------------------------------------------
7051 ------------------------------------------------------------------
7057 ------------------------------------------------------------------
7060 ------------------------------------------------------------------
7066 ------------------------------------------------------------------
7069 ------------------------------------------------------------------
7075 ------------------------------------------------------------------
7078 ------------------------------------------------------------------
7084 ------------------------------------------------------------------
7087 ------------------------------------------------------------------
7093 ------------------------------------------------------------------
7096 ------------------------------------------------------------------
7102 ------------------------------------------------------------------
7105 ------------------------------------------------------------------
7111 ------------------------------------------------------------------
7114 ------------------------------------------------------------------
7120 ------------------------------------------------------------------
7123 ------------------------------------------------------------------
7129 ------------------------------------------------------------------
7132 ------------------------------------------------------------------
7138 ------------------------------------------------------------------
7140 /(?P<abc>x)(?P<xyz>y)/I
7141 Capturing subpattern count = 2
7142 Named capturing subpatterns:
7145 First code unit = 'x'
7146 Last code unit = 'y'
7147 Subject length lower bound = 2
7148 xy\=copy=abc,copy=xyz
7152 C x (1) abc (group 1)
7153 C y (1) xyz (group 2)
7155 /(?<abc>x)(?'xyz'y)/I
7156 Capturing subpattern count = 2
7157 Named capturing subpatterns:
7160 First code unit = 'x'
7161 Last code unit = 'y'
7162 Subject length lower bound = 2
7163 xy\=copy=abc,copy=xyz
7167 C x (1) abc (group 1)
7168 C y (1) xyz (group 2)
7170 /(?<abc'x)(?'xyz'y)/I
7171 Failed: error 142 at offset 6: syntax error in subpattern name (missing terminator)
7173 /(?<abc>x)(?'xyz>y)/I
7174 Failed: error 142 at offset 15: syntax error in subpattern name (missing terminator)
7176 /(?P'abc'x)(?P<xyz>y)/I
7177 Failed: error 141 at offset 3: unrecognized character after (?P
7179 /^(?:(?(ZZ)a|b)(?<ZZ>X))+/
7192 /^(?P>abc)(?<abcd>xxx)/
7193 Failed: error 115 at offset 5: reference to non-existent subpattern
7195 /^(?P>abc)(?<abc>x|y)/
7209 /^(?P>abc)(?P<abc>x|y)/
7223 /^((?(abc)a|b)(?<abc>x|y))+/
7236 /^(((?P=abc)|X)(?<abc>x|y))+/
7261 /^(?:(?:\1|X)(a|b))+/
7269 /^[\E\Qa\E-\Qz\E]+/B
7270 ------------------------------------------------------------------
7276 ------------------------------------------------------------------
7279 ------------------------------------------------------------------
7285 ------------------------------------------------------------------
7288 ------------------------------------------------------------------
7294 ------------------------------------------------------------------
7296 /^(?P>abc)[()](?<abc>)/B
7297 ------------------------------------------------------------------
7306 ------------------------------------------------------------------
7308 /^((?(abc)y)[()](?P<abc>x))+/B
7309 ------------------------------------------------------------------
7324 ------------------------------------------------------------------
7330 /^(?P>abc)\Q()\E(?<abc>)/B
7331 ------------------------------------------------------------------
7340 ------------------------------------------------------------------
7342 /^(?P>abc)[a\Q(]\E(](?<abc>)/B
7343 ------------------------------------------------------------------
7352 ------------------------------------------------------------------
7354 /^(?P>abc) # this is (a comment)
7356 ------------------------------------------------------------------
7364 ------------------------------------------------------------------
7366 /^\W*(?:(?<one>(?<two>.)\W*(?&one)\W*\k<two>|)|(?<three>(?<four>.)\W*(?&three)\W*\k'four'|\W*.\W*))\W*$/Ii
7367 Capturing subpattern count = 4
7368 Max back reference = 4
7369 Named capturing subpatterns:
7374 May match empty string
7375 Compile options: caseless
7376 Overall options: anchored caseless
7377 Subject length lower bound = 0
7382 Satan, oscillate my metallic sonatas!
7383 0: Satan, oscillate my metallic sonatas!
7386 3: Satan, oscillate my metallic sonatas
7388 A man, a plan, a canal: Panama!
7389 0: A man, a plan, a canal: Panama!
7392 3: A man, a plan, a canal: Panama
7394 Able was I ere I saw Elba.
7395 0: Able was I ere I saw Elba.
7398 3: Able was I ere I saw Elba
7405 Capturing subpattern count = 1
7406 Max back reference = 1
7407 Starting code units: 0 1 2 3 4 5 6 7 8 9 A B C D E F G H I J K L M N O P
7408 Q R S T U V W X Y Z _ 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
7409 Last code unit = ':'
7410 Subject length lower bound = 2
7415 /(?=(?'abc'\w+))\k<abc>:/I
7416 Capturing subpattern count = 1
7417 Max back reference = 1
7418 Named capturing subpatterns:
7420 Starting code units: 0 1 2 3 4 5 6 7 8 9 A B C D E F G H I J K L M N O P
7421 Q R S T U V W X Y Z _ 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
7422 Last code unit = ':'
7423 Subject length lower bound = 2
7428 /(?'abc'a|b)(?<abc>d|e)\k<abc>{2}/dupnames
7439 /(?'abc'a|b)(?<abc>d|e)(?&abc){2}/dupnames
7453 Failed: error 142 at offset 6: syntax error in subpattern name (missing terminator)
7456 Failed: error 162 at offset 4: subpattern name expected
7459 Failed: error 115 at offset 4: reference to non-existent subpattern
7461 /((abc (?(R) (?(R1)1) (?(R2)2) X | (?1) (?2) (?R) ))) /x
7462 abcabc1Xabc2XabcXabcabc
7463 0: abcabc1Xabc2XabcX
7464 1: abcabc1Xabc2XabcX
7465 2: abcabc1Xabc2XabcX
7467 /(?<A> (?'B' abc (?(R) (?(R&A)1) (?(R&B)2) X | (?1) (?2) (?R) ))) /x
7468 abcabc1Xabc2XabcXabcabc
7469 0: abcabc1Xabc2XabcX
7470 1: abcabc1Xabc2XabcX
7471 2: abcabc1Xabc2XabcX
7473 /(?<A> (?'B' abc (?(R) (?(R&C)1) (?(R&B)2) X | (?1) (?2) (?R) ))) /x
7474 Failed: error 115 at offset 27: reference to non-existent subpattern
7476 /^(?(DEFINE) abc | xyz ) /x
7477 Failed: error 154 at offset 4: DEFINE group contains more than one branch
7479 /(?(DEFINE) abc) xyz/Ix
7480 Capturing subpattern count = 0
7482 First code unit = 'x'
7483 Last code unit = 'z'
7484 Subject length lower bound = 3
7487 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa4\=ovector=0
7488 0: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa4
7491 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\=ovector=0
7508 /^a.b/newline=anycrlf
7524 /^abc./gmx,newline=any
7525 abc1 \x0aabc2 \x0babc3xx \x0cabc4 \x0dabc5xx \x0d\x0aabc6 \x85abc7 JUNK
7534 /abc.$/gmx,newline=any
7535 abc1\x0a abc2\x0b abc3\x0c abc4\x0d abc5\x0d\x0a abc6\x85 abc7 abc9
7579 0: a\x0a\x0d\x85\x0cb
7597 0: a\x0a\x0d\x85\x0cb
7602 /^a\R{1,3}b/bsr=unicode
7610 0: a\x0d\x0a\x0d\x0ab
7612 0: a\x0d\x0a\x0d\x0a\x0d\x0ab
7614 0: a\x0a\x0d\x0a\x0db
7616 0: a\x0a\x0a\x0d\x0ab
7623 /(?&abc)X(?<abc>P)/I
7624 Capturing subpattern count = 1
7625 Named capturing subpatterns:
7627 Last code unit = 'P'
7628 Subject length lower bound = 3
7634 Capturing subpattern count = 1
7635 Named capturing subpatterns:
7637 Last code unit = 'P'
7638 Subject length lower bound = 3
7643 /(?:a(?&abc)b)*(?<abc>x)/
7651 /(?:a(?&abc)b){1,5}(?<abc>x)/
7656 /(?:a(?&abc)b){2,5}(?<abc>x)/
7661 /(?:a(?&abc)b){2,}(?<abc>x)/
7683 Failed: error 115 at offset 8: reference to non-existent subpattern
7686 Failed: error 157 at offset 6: \g is not followed by a braced, angle-bracketed, or quoted name/number or by a plain number
7689 Failed: error 115 at offset 9: reference to non-existent subpattern
7692 Failed: error 157 at offset 6: \g is not followed by a braced, angle-bracketed, or quoted name/number or by a plain number
7695 Failed: error 115 at offset 7: reference to non-existent subpattern
7748 /(?m)^$/g,newline=any,aftertext
7753 /(?m)^$|^\r\n/g,newline=any,aftertext
7760 /(?m)$/g,newline=any,aftertext
7769 /abc.$/gmx,newline=anycrlf
7770 abc1\x0a abc2\x0b abc3\x0c abc4\x0d abc5\x0d\x0a abc6\x85 abc9
7784 ------------------------------------------------------------------
7794 ------------------------------------------------------------------
7800 ------------------------------------------------------------------
7809 ------------------------------------------------------------------
7818 Failed: error 126 at offset 5: a relative value of zero is not allowed
7821 Failed: error 115 at offset 5: reference to non-existent subpattern
7824 Failed: error 126 at offset 5: a relative value of zero is not allowed
7827 Failed: error 115 at offset 5: reference to non-existent subpattern
7829 /^(abc)?(?(-1)X|Y)/B
7830 ------------------------------------------------------------------
7845 ------------------------------------------------------------------
7855 /^((?(+1)X|Y)(abc))+/B
7856 ------------------------------------------------------------------
7872 ------------------------------------------------------------------
7886 Failed: error 115 at offset 5: reference to non-existent subpattern
7889 ------------------------------------------------------------------
7899 ------------------------------------------------------------------
7902 Failed: error 115 at offset 6: reference to non-existent subpattern
7905 ------------------------------------------------------------------
7919 ------------------------------------------------------------------
7924 /(?<A>tom|bon)-\k{A}/
7936 Failed: error 142 at offset 4: syntax error in subpattern name (missing terminator)
7939 ------------------------------------------------------------------
7952 ------------------------------------------------------------------
7960 /(x)(?|(abc)|(xyz))(x)/B
7961 ------------------------------------------------------------------
7980 ------------------------------------------------------------------
7992 /(x)(?|(abc)(pqr)|(xyz))(x)/B
7993 ------------------------------------------------------------------
8015 ------------------------------------------------------------------
8030 ------------------------------------------------------------------
8036 ------------------------------------------------------------------
8042 ------------------------------------------------------------------
8049 ------------------------------------------------------------------
8054 ------------------------------------------------------------------
8060 ------------------------------------------------------------------
8063 ------------------------------------------------------------------
8069 ------------------------------------------------------------------
8072 ------------------------------------------------------------------
8078 ------------------------------------------------------------------
8081 ------------------------------------------------------------------
8087 ------------------------------------------------------------------
8090 ------------------------------------------------------------------
8096 ------------------------------------------------------------------
8099 ------------------------------------------------------------------
8105 ------------------------------------------------------------------
8108 ------------------------------------------------------------------
8114 ------------------------------------------------------------------
8117 ------------------------------------------------------------------
8123 ------------------------------------------------------------------
8126 ------------------------------------------------------------------
8132 ------------------------------------------------------------------
8135 ------------------------------------------------------------------
8141 ------------------------------------------------------------------
8144 ------------------------------------------------------------------
8152 ------------------------------------------------------------------
8155 ------------------------------------------------------------------
8164 ------------------------------------------------------------------
8166 /\h+\d\h+\w\h+\S\h+\H/B
8167 ------------------------------------------------------------------
8179 ------------------------------------------------------------------
8181 /\v+\d\v+\w\v+\S\v+\V/B
8182 ------------------------------------------------------------------
8194 ------------------------------------------------------------------
8197 ------------------------------------------------------------------
8205 ------------------------------------------------------------------
8208 ------------------------------------------------------------------
8216 ------------------------------------------------------------------
8218 /\( (?: [^()]* | (?R) )* \)/x
8219 (0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(00)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)\=jitstack=1024
8220 0: (0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(00)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)
8223 Failed: error 106 at offset 7: missing terminating ] for character class
8226 Failed: error 106 at offset 9: missing terminating ] for character class
8229 Failed: error 106 at offset 8: missing terminating ] for character class
8232 Failed: error 106 at offset 10: missing terminating ] for character class
8235 Failed: error 106 at offset 8: missing terminating ] for character class
8238 Failed: error 106 at offset 10: missing terminating ] for character class
8240 /A(*PRUNE)B(*SKIP)C(*THEN)D(*COMMIT)E(*F)F(*FAIL)G(?!)H(*ACCEPT)I/B
8241 ------------------------------------------------------------------
8262 ------------------------------------------------------------------
8264 /^a+(*FAIL)/auto_callout
8278 /a+b?c+(*FAIL)/auto_callout
8302 /a+b?(*PRUNE)c+(*FAIL)/auto_callout
8329 /a+b?(*COMMIT)c+(*FAIL)/auto_callout
8342 /a+b?(*SKIP)c+(*FAIL)/auto_callout
8362 /a+b?(*THEN)c+(*FAIL)/auto_callout
8390 Failed: error 166 at offset 7: (*MARK) must have an argument
8392 /(?i:A{1,}\6666666666)/
8393 Failed: error 161 at offset 19: group number is too big
8396 Failed: error 161 at offset 7: group number is too big
8399 ------------------------------------------------------------------
8404 ------------------------------------------------------------------
8407 Failed: error 115 at offset 3: reference to non-existent subpattern
8418 /[\r\n]A/newline=crlf
8422 /(\r|\n)A/newline=crlf
8428 Failed: error 160 at offset 5: (*VERB) not recognized or malformed
8437 /(*CR)a.b/newline=lf
8444 /(*LF)a.b/newline=CRLF
8460 /(*ANYCRLF)a.b/newline=CR
8469 /(*ANY)a.b/newline=cr
8513 /'#comment' 0d 0a 00 '^x\' 0a 'y'/x,newline=nul,hex
8527 Capturing subpattern count = 0
8528 \R matches CR, LF, or CRLF
8529 First code unit = 'a'
8530 Last code unit = 'b'
8531 Subject length lower bound = 3
8545 Capturing subpattern count = 0
8546 \R matches any Unicode newline
8547 First code unit = 'a'
8548 Last code unit = 'b'
8549 Subject length lower bound = 3
8561 /a\R?b/I,bsr=anycrlf
8562 Capturing subpattern count = 0
8563 \R matches CR, LF, or CRLF
8564 First code unit = 'a'
8565 Last code unit = 'b'
8566 Subject length lower bound = 2
8579 /a\R?b/I,bsr=unicode
8580 Capturing subpattern count = 0
8581 \R matches any Unicode newline
8582 First code unit = 'a'
8583 Last code unit = 'b'
8584 Subject length lower bound = 2
8596 /a\R{2,4}b/I,bsr=anycrlf
8597 Capturing subpattern count = 0
8598 \R matches CR, LF, or CRLF
8599 First code unit = 'a'
8600 Last code unit = 'b'
8601 Subject length lower bound = 4
8607 0: a\x0d\x0a\x0d\x0a\x0d\x0a\x0d\x0ab
8614 /a\R{2,4}b/I,bsr=unicode
8615 Capturing subpattern count = 0
8616 \R matches any Unicode newline
8617 First code unit = 'a'
8618 Last code unit = 'b'
8619 Subject length lower bound = 4
8625 0: a\x0d\x0a\x0a\x0d\x0db
8634 /(*BSR_ANYCRLF)a\Rb/I
8635 Capturing subpattern count = 0
8636 \R matches CR, LF, or CRLF
8637 First code unit = 'a'
8638 Last code unit = 'b'
8639 Subject length lower bound = 3
8645 /(*BSR_UNICODE)a\Rb/I
8646 Capturing subpattern count = 0
8647 \R matches any Unicode newline
8648 First code unit = 'a'
8649 Last code unit = 'b'
8650 Subject length lower bound = 3
8654 /(*BSR_ANYCRLF)(*CRLF)a\Rb/I
8655 Capturing subpattern count = 0
8656 \R matches CR, LF, or CRLF
8657 Forced newline is CRLF
8658 First code unit = 'a'
8659 Last code unit = 'b'
8660 Subject length lower bound = 3
8666 /(*CRLF)(*BSR_UNICODE)a\Rb/I
8667 Capturing subpattern count = 0
8668 \R matches any Unicode newline
8669 Forced newline is CRLF
8670 First code unit = 'a'
8671 Last code unit = 'b'
8672 Subject length lower bound = 3
8676 /(*CRLF)(*BSR_ANYCRLF)(*CR)ab/I
8677 Capturing subpattern count = 0
8678 \R matches CR, LF, or CRLF
8679 Forced newline is CR
8680 First code unit = 'a'
8681 Last code unit = 'b'
8682 Subject length lower bound = 2
8685 Failed: error 162 at offset 9: subpattern name expected
8688 Failed: error 115 at offset 11: reference to non-existent subpattern
8690 /(?<a>)(?&aaaaaaaaaaaaaaaaaaaaaaa)/
8691 Failed: error 115 at offset 9: reference to non-existent subpattern
8694 Failed: error 129 at offset 2: digit expected after (?+ or (?-
8697 Failed: error 111 at offset 3: unrecognized character after (? or (?-
8700 Failed: error 115 at offset 5: reference to non-existent subpattern
8703 Failed: error 115 at offset 4: reference to non-existent subpattern
8706 Failed: error 115 at offset 3: reference to non-existent subpattern
8713 Failed: error 162 at offset 3: subpattern name expected
8716 Failed: error 162 at offset 3: subpattern name expected
8719 Failed: error 162 at offset 3: subpattern name expected
8722 Failed: error 169 at offset 2: \k is not followed by a braced, angle-bracketed, or quoted name
8725 Failed: error 169 at offset 2: \k is not followed by a braced, angle-bracketed, or quoted name
8728 Failed: error 162 at offset 4: subpattern name expected
8731 Failed: error 162 at offset 4: subpattern name expected
8734 Failed: error 130 at offset 3: unknown POSIX class name
8737 Failed: error 130 at offset 3: unknown POSIX class name
8740 Failed: error 130 at offset 3: unknown POSIX class name
8743 Failed: error 130 at offset 3: unknown POSIX class name
8746 Failed: error 130 at offset 3: unknown POSIX class name
8749 Failed: error 130 at offset 3: unknown POSIX class name
8752 Failed: error 130 at offset 3: unknown POSIX class name
8755 Failed: error 130 at offset 6: unknown POSIX class name
8758 Failed: error 130 at offset 3: unknown POSIX class name
8761 Failed: error 157 at offset 8: \g is not followed by a braced, angle-bracketed, or quoted name/number or by a plain number
8763 /^(?+1)(?<a>x|y){0}z/
8777 /(\3)(\1)(a)/alt_bsux,allow_empty_class,match_unset_backref,dupnames
8788 /TA]/alt_bsux,allow_empty_class,match_unset_backref,dupnames
8793 Failed: error 115 at offset 3: reference to non-existent subpattern
8797 Failed: error 115 at offset 3: reference to non-existent subpattern
8816 /(?2)[]a()b](abc)(xyz)/
8822 /(?&N)[]a(?<N>)](?<M>abc)/
8823 Failed: error 115 at offset 3: reference to non-existent subpattern
8826 /(?&N)[]a(?<N>)](abc)/
8827 Failed: error 115 at offset 3: reference to non-existent subpattern
8831 Failed: error 106 at offset 4: missing terminating ] for character class
8834 Failed: error 106 at offset 5: missing terminating ] for character class
8836 /a[]b/alt_bsux,allow_empty_class,match_unset_backref,dupnames
8841 /a[]+b/alt_bsux,allow_empty_class,match_unset_backref,dupnames
8846 /a[]*+b/alt_bsux,allow_empty_class,match_unset_backref,dupnames
8851 /a[^]b/alt_bsux,allow_empty_class,match_unset_backref,dupnames
8860 /a[^]+b/alt_bsux,allow_empty_class,match_unset_backref,dupnames
8870 ------------------------------------------------------------------
8877 ------------------------------------------------------------------
8880 ------------------------------------------------------------------
8888 ------------------------------------------------------------------
8893 Failed: error 109 at offset 8: quantifier does not follow a repeatable item
8895 /(abc|pqr|123){0}[xyz]/I
8896 Capturing subpattern count = 1
8897 Starting code units: x y z
8898 Subject length lower bound = 1
8900 /(?(?=.*b)b|^)/I,auto_callout
8901 Capturing subpattern count = 0
8902 May match empty string
8903 Options: auto_callout
8904 Subject length lower bound = 0
8916 +13 ^ End of pattern
8937 +13 ^^ End of pattern
8941 Capturing subpattern count = 0
8942 Subject length lower bound = 1
8945 Capturing subpattern count = 0
8946 Subject length lower bound = 1
8954 +3 ^ ^ End of pattern
8961 +3 ^ ^ End of pattern
8969 /xyz/auto_callout,no_start_optimize
8978 +3 ^ ^ End of pattern
9003 /(*NO_START_OPT)xyz/auto_callout
9012 +18 ^ ^ End of pattern
9015 /(*NO_AUTO_POSSESS)a+b/B
9016 ------------------------------------------------------------------
9022 ------------------------------------------------------------------
9024 /xyz/auto_callout,no_start_optimize
9033 +3 ^ ^ End of pattern
9036 /^"((?(?=[a])[^"])|b)*"$/auto_callout
9062 +23 ^ ^ End of pattern
9066 /^"((?(?=[a])[^"])|b)*"$/
9071 /^X(?5)(a)(?|(b)|(q))(c)(d)Y/
9072 Failed: error 115 at offset 5: reference to non-existent subpattern
9075 /^X(?&N)(a)(?|(b)|(q))(c)(d)(?<N>Y)/
9094 Partial match: Xaaaa
9106 Partial match: Xaaaa
9118 Partial match: Xaaaa
9130 Partial match: X3333
9142 Partial match: X3333
9154 Partial match: X3333
9166 Partial match: Xaaaa
9178 Partial match: Xaaaa
9190 Partial match: Xaaaa
9202 Partial match: Xaaaa
9214 Partial match: Xaaaa
9226 Partial match: Xaaaa
9238 Partial match: Xzzzz
9250 Partial match: Xzzzz
9262 Partial match: Xzzzz
9272 Partial match: YXYYY
9274 Partial match: YXYYYY
9284 Partial match: YXYYY
9286 Partial match: YXYYYY
9296 Partial match: YXYYY
9298 Partial match: YXYYYY
9300 /\++\KZ|\d+X|9+Y/startchar
9302 Partial match: 123999
9351 Partial match: the cat
9364 Partial match: abc12
9366 Partial match: abc12
9372 Partial match: abc12
9375 Partial match: abc12
9388 /(?&word)(?&element)(?(DEFINE)(?<element><[^m][^>]>[^<])(?<word>\w*+))/B
9389 ------------------------------------------------------------------
9408 ------------------------------------------------------------------
9410 /(?&word)(?&element)(?(DEFINE)(?<element><[^\d][^>]>[^<])(?<word>\w*+))/B
9411 ------------------------------------------------------------------
9419 [\x00-/:-\xff] (neg)
9430 ------------------------------------------------------------------
9432 /(ab)(x(y)z(cd(*ACCEPT)))pq/B
9433 ------------------------------------------------------------------
9454 ------------------------------------------------------------------
9456 /abc\K/aftertext,startchar
9461 abcdef\=notempty_atstart
9465 xyzabcdef\=notempty_atstart
9475 /^(?:(?=abc)|abc\K)/aftertext,startchar
9479 abcdef\=notempty_atstart
9497 xyzabc\=notempty_atstart
9500 xyz\=notempty_atstart
9517 xyzabc\=notempty_atstart
9519 xyz\=notempty_atstart
9524 /^(?<name>a|b\g<name>c)/
9538 /^(?<name>a|b\g'name'c)/
9612 /(?-i:\g<name>)(?i:(?<name>a))/
9620 /(?i:\g<name>)(?-i:(?<name>a))/
9628 /(?-i:\g<+1>)(?i:(a))/
9636 /(?=(?<regex>(?#simplesyntax)\$(?<name>[a-zA-Z_\x{7f}-\x{ff}][a-zA-Z0-9_\x{7f}-\x{ff}]*)(?:\[(?<index>[a-zA-Z0-9_\x{7f}-\x{ff}]+|\$\g<name>)\]|->\g<name>(\(.*?\))?)?|(?#simple syntax withbraces)\$\{(?:\g<name>(?<indices>\[(?:\g<index>|'(?:\\.|[^'\\])*'|"(?:\g<regex>|\\.|[^"\\])*")\])?|\g<complex>|\$\{\g<complex>\})\}|(?#complexsyntax)\{(?<complex>\$(?<segment>\g<name>(\g<indices>*|\(.*?\))?)(?:->\g<segment>)*|\$\g<complex>|\$\{\g<complex>\})\}))\{/
9646 /^X(?7)(a)(?|(b)|(q)(r)(s))(c)(d)(Y)/
9668 Failed: error 125 at offset 3: lookbehind assertion is not fixed length
9671 Failed: error 125 at offset 4: lookbehind assertion is not fixed length
9674 Failed: error 125 at offset 2: lookbehind assertion is not fixed length
9677 Failed: error 115 at offset 8: reference to non-existent subpattern
9679 /(?<=b(?1))xyz(b+)pqrstuvew/
9680 Failed: error 125 at offset 0: lookbehind assertion is not fixed length
9683 Capturing subpattern count = 1
9684 Max back reference = 1
9685 Starting code units: a b
9686 Subject length lower bound = 2
9689 Capturing subpattern count = 1
9690 Max back reference = 1
9691 Starting code units: a b
9692 Subject length lower bound = 3
9695 Capturing subpattern count = 1
9696 Starting code units: a b
9697 Subject length lower bound = 2
9700 Capturing subpattern count = 2
9701 Max back reference = 1
9702 Starting code units: a b
9703 Subject length lower bound = 2
9706 Capturing subpattern count = 1
9707 Max back reference = 1
9708 Starting code units: a b
9709 Subject length lower bound = 2
9711 /(a|bbbb\1)(a|bbbb\1)/I
9712 Capturing subpattern count = 2
9713 Max back reference = 1
9714 Starting code units: a b
9715 Subject length lower bound = 2
9718 Capturing subpattern count = 1
9719 Max back reference = 1
9720 Starting code units: a b
9721 Subject length lower bound = 2
9723 /^From +([^ ]+) +[a-zA-Z][a-zA-Z][a-zA-Z] +[a-zA-Z][a-zA-Z][a-zA-Z] +[0-9]?[0-9] +[0-9][0-9]:[0-9][0-9]/I
9724 Capturing subpattern count = 1
9725 Compile options: <none>
9726 Overall options: anchored
9727 First code unit = 'F'
9728 Last code unit = ':'
9729 Subject length lower bound = 22
9731 /<tr([\w\W\s\d][^<>]{0,})><TD([\w\W\s\d][^<>]{0,})>([\d]{0,}\.)(.*)((<BR>([\w\W\s\d][^<>]{0,})|[\s]{0,}))<\/a><\/TD><TD([\w\W\s\d][^<>]{0,})>([\w\W\s\d][^<>]{0,})<\/TD><TD([\w\W\s\d][^<>]{0,})>([\w\W\s\d][^<>]{0,})<\/TD><\/TR>/Iis
9732 Capturing subpattern count = 11
9733 Options: caseless dotall
9734 First code unit = '<'
9735 Last code unit = '>'
9736 Subject length lower bound = 47
9739 Capturing subpattern count = 0
9740 Last code unit = 'o'
9741 Subject length lower bound = 4
9743 /(?(?=[^a-z]+[a-z]) \d{2}-[a-z]{3}-\d{2} | \d{2}-\d{2}-\d{2} ) /Ix
9744 Capturing subpattern count = 0
9746 Last code unit = '-'
9747 Subject length lower bound = 8
9749 /(?:(?:(?:(?:(?:(?:(?:(?:(?:(a|b|c))))))))))/Ii
9750 Capturing subpattern count = 1
9752 Starting code units: A B C a b c
9753 Subject length lower bound = 1
9755 /(?:c|d)(?:)(?:aaaaaaaa(?:)(?:bbbbbbbb)(?:bbbbbbbb(?:))(?:bbbbbbbb(?:)(?:bbbbbbbb)))/I
9756 Capturing subpattern count = 0
9757 Starting code units: c d
9758 Last code unit = 'b'
9759 Subject length lower bound = 41
9761 /<a[\s]+href[\s]*=[\s]* # find <a href=
9762 ([\"\'])? # find single or double quote
9763 (?(1) (.*?)\1 | ([^\s]+)) # if quote found, match up to next matching
9764 # quote, otherwise match up to next space
9766 Capturing subpattern count = 3
9767 Max back reference = 1
9768 Options: caseless dotall extended
9769 First code unit = '<'
9770 Last code unit = '='
9771 Subject length lower bound = 9
9773 /^(?!:) # colon disallowed at start
9775 (?: [0-9a-f]{1,4} | # 1-4 hex digits or
9776 (?(1)0 | () ) ) # if null previously matched, fail; else null
9777 : # followed by colon
9778 ){1,7} # end item; 1-7 of them required
9779 [0-9a-f]{1,4} $ # final hex number at end of string
9780 (?(1)|.) # check that there was an empty component
9782 Capturing subpattern count = 1
9783 Max back reference = 1
9784 Compile options: caseless extended
9785 Overall options: anchored caseless extended
9786 Last code unit = ':'
9787 Subject length lower bound = 2
9789 /(?|(?<a>A)|(?<a>B))/I
9790 Capturing subpattern count = 1
9791 Named capturing subpatterns:
9793 Starting code units: A B
9794 Subject length lower bound = 1
9804 /(?|(?<a>A)|(?<b>B))/
9805 Failed: error 165 at offset 16: different names for subpatterns of the same number are not allowed
9807 /(?:a(?<quote> (?<apostrophe>')|(?<realquote>")) |
9808 b(?<quote> (?<apostrophe>')|(?<realquote>")) )
9809 (?('quote')[a-z]+|[0-9]+)/Ix,dupnames
9810 Capturing subpattern count = 6
9811 Max back reference = 4
9812 Named capturing subpatterns:
9819 Options: dupnames extended
9820 Starting code units: a b
9821 Subject length lower bound = 3
9841 /^(?|(a)(b)(c)(?<D>d)|(?<D>e)) (?('D')X|Y)/IBx,dupnames
9842 ------------------------------------------------------------------
9871 ------------------------------------------------------------------
9872 Capturing subpattern count = 4
9873 Max back reference = 4
9874 Named capturing subpatterns:
9877 Compile options: dupnames extended
9878 Overall options: anchored dupnames extended
9879 Starting code units: a e
9880 Subject length lower bound = 2
9896 /(?<A>a) (b)(c) (?<A>d (?(R&A)$ | (?4)) )/IBx,dupnames
9897 ------------------------------------------------------------------
9919 ------------------------------------------------------------------
9920 Capturing subpattern count = 4
9921 Max back reference = 4
9922 Named capturing subpatterns:
9925 Options: dupnames extended
9926 First code unit = 'a'
9927 Last code unit = 'd'
9928 Subject length lower bound = 4
9972 Partial match: abcde
9974 /(\3)(\1)(a)/alt_bsux,allow_empty_class,match_unset_backref,dupnames
9981 /(\3)(\1)(a)/I,alt_bsux,allow_empty_class,match_unset_backref,dupnames
9982 Capturing subpattern count = 3
9983 Max back reference = 3
9984 Options: alt_bsux allow_empty_class dupnames match_unset_backref
9985 Last code unit = 'a'
9986 Subject length lower bound = 1
9994 Capturing subpattern count = 3
9995 Max back reference = 3
9996 Last code unit = 'a'
9997 Subject length lower bound = 3
10002 /i(?(DEFINE)(?<s>a))/I
10003 Capturing subpattern count = 1
10004 Named capturing subpatterns:
10006 First code unit = 'i'
10007 Subject length lower bound = 1
10012 Capturing subpattern count = 1
10013 Max back reference = 1
10014 First code unit = 'i'
10015 Subject length lower bound = 1
10021 ------------------------------------------------------------------
10029 ------------------------------------------------------------------
10041 ------------------------------------------------------------------
10048 ------------------------------------------------------------------
10051 ------------------------------------------------------------------
10059 ------------------------------------------------------------------
10061 /^(ab(c\1)d|x){2}$/B
10062 ------------------------------------------------------------------
10092 ------------------------------------------------------------------
10098 /^(?&t)*+(?(DEFINE)(?<t>.))$/B
10099 ------------------------------------------------------------------
10115 ------------------------------------------------------------------
10117 /^(?&t)*(?(DEFINE)(?<t>.))$/B
10118 ------------------------------------------------------------------
10134 ------------------------------------------------------------------
10136 # This one is here because Perl gives the match as "b" rather than "ab". I
10137 # believe this to be a Perl bug.
10144 /(?P<L1>(?P<L2>0|)|(?P>L2)(?P>L1))/
10155 Failed: error 166 at offset 10: (*MARK) must have an argument
10158 Failed: error 166 at offset 6: (*MARK) must have an argument
10161 ------------------------------------------------------------------
10166 ------------------------------------------------------------------
10168 # This should, and does, fail. In Perl, it does not, which I think is a
10169 # bug because replacing the B in the pattern by (B|D) does make it fail.
10170 # Turning off Perl's optimization by inserting (??{""}) also makes it fail.
10172 /A(*COMMIT)B/aftertext,mark
10177 # These should be different, but in Perl they are not, which I think
10178 # is a bug in Perl.
10180 /A(*THEN)B|A(*THEN)C/mark
10184 /A(*PRUNE)B|A(*PRUNE)C/mark
10189 # Mark names can be duplicated. Perl doesn't give a mark for this one,
10190 # though PCRE2 does.
10192 /^A(*:A)B|^X(*:A)Y/mark
10197 # COMMIT at the start of a pattern should be the same as an anchor. Perl
10198 # optimizations defeat this. So does the PCRE2 optimization unless we disable
10205 /(*COMMIT)ABC/no_start_optimize
10210 /^(ab (c+(*THEN)cd) | xyz)/x
10215 /^(ab (c+(*PRUNE)cd) | xyz)/x
10220 /^(ab (c+(*FAIL)cd) | xyz)/x
10225 # Perl gets some of these wrong
10227 /(?>.(*ACCEPT))*?5/
10247 ------------------------------------------------------------------
10255 ------------------------------------------------------------------
10265 ------------------------------------------------------------------
10273 ------------------------------------------------------------------
10292 ------------------------------------------------------------------
10298 ------------------------------------------------------------------
10301 ------------------------------------------------------------------
10307 ------------------------------------------------------------------
10310 ------------------------------------------------------------------
10316 ------------------------------------------------------------------
10319 ------------------------------------------------------------------
10325 ------------------------------------------------------------------
10328 ------------------------------------------------------------------
10334 ------------------------------------------------------------------
10343 ------------------------------------------------------------------
10349 ------------------------------------------------------------------
10354 ------------------------------------------------------------------
10361 ------------------------------------------------------------------
10366 ------------------------------------------------------------------
10373 ------------------------------------------------------------------
10378 ------------------------------------------------------------------
10385 ------------------------------------------------------------------
10390 ------------------------------------------------------------------
10397 ------------------------------------------------------------------
10465 Failed: error -33: bad offset value
10467 ** Invalid value in 'offset=-4'
10480 Failed: error 168 at offset 3: \c must be followed by a printable ASCII character
10482 /(?P<abn>(?P=abn)xxx)/B
10483 ------------------------------------------------------------------
10493 ------------------------------------------------------------------
10496 ------------------------------------------------------------------
10507 ------------------------------------------------------------------
10509 /(?P<abn>(?P=abn)(?<badstufxxx)/B
10510 Failed: error 142 at offset 29: syntax error in subpattern name (missing terminator)
10512 /(?P<abn>(?P=axn)xxx)/B
10513 Failed: error 115 at offset 12: reference to non-existent subpattern
10515 /(?P<abn>(?P=axn)xxx)(?<axn>yy)/B
10516 ------------------------------------------------------------------
10527 ------------------------------------------------------------------
10529 # These tests are here because Perl gets the first one wrong.
10537 0: \x0d\x0d\x0a\x0a\x0d
10538 1: \x0d\x0d\x0a\x0a
10541 0: \x0d\x0d\x0a\x0a\x0d
10542 1: \x0d\x0d\x0a\x0a
10551 0: \x0d\x0d\x0a\x0a\x0d
10555 0: \x0d\x0d\x0a\x0a\x0d
10559 /((?>\r\n|\n|\x0b|\f|\r|\x85)*)(.)/s
10565 0: \x0d\x0d\x0a\x0a\x0d
10566 1: \x0d\x0d\x0a\x0a
10569 0: \x0d\x0d\x0a\x0a\x0d
10570 1: \x0d\x0d\x0a\x0a
10576 ------------------------------------------------------------------
10583 ------------------------------------------------------------------
10586 ------------------------------------------------------------------
10593 ------------------------------------------------------------------
10613 ------------------------------------------------------------------
10621 ------------------------------------------------------------------
10622 Capturing subpattern count = 1
10623 First code unit = 'a'
10624 Last code unit = '4'
10625 Subject length lower bound = 5
10628 Capturing subpattern count = 1
10629 Starting code units: a b c
10630 Last code unit = '4'
10631 Subject length lower bound = 5
10634 Failed: error 125 at offset 0: lookbehind assertion is not fixed length
10637 Capturing subpattern count = 1
10638 Compile options: <none>
10639 Overall options: anchored
10640 First code unit = 'a'
10641 Subject length lower bound = 2
10644 Capturing subpattern count = 1
10645 Compile options: <none>
10646 Overall options: anchored
10647 First code unit = 'a'
10648 Subject length lower bound = 2
10651 Capturing subpattern count = 1
10652 May match empty string
10653 Compile options: <none>
10654 Overall options: anchored
10655 Subject length lower bound = 0
10658 Capturing subpattern count = 1
10659 May match empty string
10660 Compile options: <none>
10661 Overall options: anchored
10662 Subject length lower bound = 0
10665 Capturing subpattern count = 0
10666 Compile options: <none>
10667 Overall options: anchored
10668 First code unit = 'a'
10669 Subject length lower bound = 2
10672 Capturing subpattern count = 0
10673 Compile options: <none>
10674 Overall options: anchored
10675 First code unit = 'a'
10676 Subject length lower bound = 2
10679 Capturing subpattern count = 0
10680 May match empty string
10681 Compile options: <none>
10682 Overall options: anchored
10683 Subject length lower bound = 0
10686 Capturing subpattern count = 0
10687 May match empty string
10688 Compile options: <none>
10689 Overall options: anchored
10690 Subject length lower bound = 0
10693 Capturing subpattern count = 1
10694 First code unit at start or follows newline
10695 Last code unit = 'b'
10696 Subject length lower bound = 2
10699 Capturing subpattern count = 1
10700 First code unit at start or follows newline
10701 Last code unit = 'b'
10702 Subject length lower bound = 2
10705 Capturing subpattern count = 1
10706 May match empty string
10707 First code unit at start or follows newline
10708 Subject length lower bound = 0
10711 Capturing subpattern count = 1
10712 May match empty string
10713 First code unit at start or follows newline
10714 Subject length lower bound = 0
10717 Capturing subpattern count = 0
10718 First code unit at start or follows newline
10719 Last code unit = 'b'
10720 Subject length lower bound = 2
10723 Capturing subpattern count = 0
10724 First code unit at start or follows newline
10725 Last code unit = 'b'
10726 Subject length lower bound = 2
10729 Capturing subpattern count = 0
10730 May match empty string
10731 First code unit at start or follows newline
10732 Subject length lower bound = 0
10735 Capturing subpattern count = 0
10736 May match empty string
10737 First code unit at start or follows newline
10738 Subject length lower bound = 0
10741 Capturing subpattern count = 0
10742 First code unit = 'a'
10743 Subject length lower bound = 1
10746 Capturing subpattern count = 1
10747 First code unit = 'a'
10748 Subject length lower bound = 1
10751 Capturing subpattern count = 1
10752 First code unit = 'a'
10753 Subject length lower bound = 1
10756 Capturing subpattern count = 1
10757 First code unit = 'a'
10758 Subject length lower bound = 1
10761 Capturing subpattern count = 0
10763 First code unit = 'a' (caseless)
10764 Subject length lower bound = 1
10767 Capturing subpattern count = 0
10769 First code unit = 'a' (caseless)
10770 Subject length lower bound = 1
10773 Capturing subpattern count = 0
10775 First code unit = 'a' (caseless)
10776 Subject length lower bound = 1
10779 Capturing subpattern count = 0
10781 First code unit = 'a' (caseless)
10782 Last code unit = 'a' (caseless)
10783 Subject length lower bound = 1
10787 # Perl doesn't get these right IMO (the 3rd is PCRE2-specific)
10789 /(?1)(?:(b(*ACCEPT))){0}/
10793 /(?1)(?:(b(*ACCEPT))){0}c/
10800 /(?1)(?:((*ACCEPT))){0}c/
10806 /^.*?(?(?=a)a|b(*THEN)c)/
10815 /^.*?(?(?=a)a(*THEN)b|c)/
10820 /^.*?(?(?=a)a(*THEN)b)c/
10830 /^.*? (?1) c (?(DEFINE)(a(*THEN)b))/x
10834 /^.*?(a(*THEN)b|z)c/
10839 /^.*?(z|a(*THEN)b)c/
10844 # These are here because they are not Perl-compatible; the studying means the
10845 # mark is not seen.
10847 /(*MARK:A)(*SKIP:B)(C|X)/mark
10856 /(*:A)A+(*SKIP:A)(B|Z)/mark
10861 # ----------------------------
10863 "(?=a*(*ACCEPT)b)c"
10869 /(?1)c(?(DEFINE)((*ACCEPT)b))/
10882 /(?:(?>(a)))+a%/allaftertext
10889 /(a)b|ac/allaftertext
10894 /(a)(b)x|abc/allaftertext
10901 Matched, but too many substrings
10907 Matched, but too many substrings
10910 Matched, but too many substrings
10914 Matched, but too many substrings
10924 /(?(DEFINE)(a(?2)|b)(b(?1)|a))(?:(?1)|(?2))/I
10925 Capturing subpattern count = 2
10926 May match empty string
10927 Subject length lower bound = 0
10929 /(a(?2)|b)(b(?1)|a)(?:(?1)|(?2))/I
10930 Capturing subpattern count = 2
10931 Starting code units: a b
10932 Subject length lower bound = 3
10934 /(a(?2)|b)(b(?1)|a)(?1)(?2)/I
10935 Capturing subpattern count = 2
10936 Starting code units: a b
10937 Subject length lower bound = 4
10940 Capturing subpattern count = 1
10941 First code unit = 'a'
10942 Last code unit = 'c'
10943 Subject length lower bound = 6
10945 /(?:(foo)|(bar)|(baz))X/allcaptures
10977 Matched, but too many substrings
10988 ------------------------------------------------------------------
10996 ------------------------------------------------------------------
10999 ------------------------------------------------------------------
11007 ------------------------------------------------------------------
11010 ------------------------------------------------------------------
11018 ------------------------------------------------------------------
11021 ------------------------------------------------------------------
11030 ------------------------------------------------------------------
11033 ------------------------------------------------------------------
11044 ------------------------------------------------------------------
11047 ------------------------------------------------------------------
11058 ------------------------------------------------------------------
11060 /^(?=(a)){0}b(?1)/B
11061 ------------------------------------------------------------------
11074 ------------------------------------------------------------------
11076 /(?(DEFINE)(a))?b(?1)/B
11077 ------------------------------------------------------------------
11089 ------------------------------------------------------------------
11091 /^(?=(?1))?[az]([abc])d/B
11092 ------------------------------------------------------------------
11106 ------------------------------------------------------------------
11109 ------------------------------------------------------------------
11119 ------------------------------------------------------------------
11122 ------------------------------------------------------------------
11134 ------------------------------------------------------------------
11137 ------------------------------------------------------------------
11143 ------------------------------------------------------------------
11145 /^(a(*:A)(d|e(*:B))z|aeq)/auto_callout
11158 +24 ^ ^ End of pattern
11177 +24 ^ ^ End of pattern
11199 +24 ^ ^ End of pattern
11208 /\btype\b\W*?\btext\b\W*?\bjavascript\b/I
11209 Capturing subpattern count = 0
11211 First code unit = 't'
11212 Last code unit = 't'
11213 Subject length lower bound = 18
11215 /\btype\b\W*?\btext\b\W*?\bjavascript\b|\burl\b\W*?\bshell:|<input\b.*?\btype\b\W*?\bimage\b|\bonkeyup\b\W*?\=/I
11216 Capturing subpattern count = 0
11218 Starting code units: < o t u
11219 Subject length lower bound = 8
11221 /a(*SKIP)c|b(*ACCEPT)|/I,aftertext
11222 Capturing subpattern count = 0
11223 May match empty string
11224 Subject length lower bound = 0
11229 /a(*SKIP)c|b(*ACCEPT)cd(*ACCEPT)|x/I
11230 Capturing subpattern count = 0
11231 Starting code units: a b x
11232 Subject length lower bound = 0
11236 'a*(*ACCEPT)b'aftertext
11237 abc\=notempty_atstart
11240 bbb\=notempty_atstart
11247 /(*ACCEPT)a/I,aftertext
11248 Capturing subpattern count = 0
11249 Subject length lower bound = 0
11254 /z(*ACCEPT)a/I,aftertext
11255 Capturing subpattern count = 0
11256 First code unit = 'z'
11257 Subject length lower bound = 0
11262 /^(?>a+)(?>(z+))\w/B
11263 ------------------------------------------------------------------
11277 ------------------------------------------------------------------
11296 /(.)((?(1)c|a)|a(?2))/
11301 /(?P<abn>(?P=abn)xxx)/B
11302 ------------------------------------------------------------------
11312 ------------------------------------------------------------------
11315 ------------------------------------------------------------------
11326 ------------------------------------------------------------------
11328 /^a\x41z/alt_bsux,allow_empty_class,match_unset_backref,dupnames
11335 /^a[m\x41]z/alt_bsux,allow_empty_class,match_unset_backref,dupnames
11339 /^a\x1z/alt_bsux,allow_empty_class,match_unset_backref,dupnames
11343 /^a\u0041z/alt_bsux,allow_empty_class,match_unset_backref,dupnames
11350 /^a[m\u0041]z/alt_bsux,allow_empty_class,match_unset_backref,dupnames
11354 /^a\u041z/alt_bsux,allow_empty_class,match_unset_backref,dupnames
11361 /^a\U0041z/alt_bsux,allow_empty_class,match_unset_backref,dupnames
11369 ------------------------------------------------------------------
11384 ------------------------------------------------------------------
11387 ------------------------------------------------------------------
11403 ------------------------------------------------------------------
11406 Failed: error 171 at offset 4: \N is not supported in a class
11410 Failed: error 150 at offset 6: invalid range in character class
11413 Failed: error 171 at offset 5: \N is not supported in a class
11415 /(a)(?2){0,1999}?(b)/
11417 /(a)(?(DEFINE)(b))(?2){0,1999}?(?2)/
11419 # This test, with something more complicated than individual letters, causes
11420 # different behaviour in Perl. Perhaps it disables some optimization; no tag is
11421 # passed back for the failures, whereas in PCRE2 there is a tag.
11423 /(A|P)(*:A)(B|P) | (X|P)(X|P)(*:B)(Y|P)/x,mark
11447 # Perl doesn't give marks for these, though it does if the alternatives are
11448 # replaced by single letters.
11450 /(b|q)(*:m)f|a(*:n)w/mark
11458 /(q|b)(*:m)f|a(*:n)w/mark
11466 # After a partial match, the behaviour is as for a failure.
11470 Partial match, mark=X: abc
11472 # These are here because Perl doesn't return a mark, except for the first.
11474 /(?=(*:x))(q|)/aftertext,mark
11481 /(?=(*:x))((*:y)q|)/aftertext,mark
11488 /(?=(*:x))(?:(*:y)q|)/aftertext,mark
11494 /(?=(*:x))(?>(*:y)q|)/aftertext,mark
11500 /(?=a(*:x))(?!a(*:y)c)/aftertext,mark
11506 /(?=a(*:x))(?=a(*:y)c|)/aftertext,mark
11536 Partial match: abab
11538 Partial match: ababa
11543 Partial match: ababab
11548 Partial match: abababa
11556 Partial match: aBAb
11558 Partial match: AbaBA
11563 Partial match: aBAbaB
11568 Partial match: abaBABa
11576 Partial match: aBAb
11578 Partial match: abaBA
11580 Partial match: abAbaB
11582 Partial match: abaBabA
11595 Partial match: ababa
11597 Partial match: ababa
11609 Partial match: ababa
11611 Partial match: ababa
11629 Partial match: \x0d
11633 Partial match: \x0d
11635 Partial match: \x0d
11637 Partial match: \x0d\x0d
11639 Partial match: \x0d\x0d
11641 Partial match: \x0d\x0d\x0d
11643 Partial match: \x0d\x0d\x0d
11651 Partial match: \x0d
11653 Partial match: \x0d
11655 Partial match: \x0d\x0d
11657 Partial match: \x0d\x0d
11659 Partial match: \x0d\x0d\x0d
11661 Partial match: \x0d\x0d\x0d
11669 Partial match: \x0d
11671 Partial match: \x0d
11679 Partial match: \x0d
11681 Partial match: \x0d
11683 Partial match: \x0d\x0a
11685 Partial match: \x0d\x0a
11691 Partial match: a\x0d
11693 Partial match: a\x0d
11695 /^a$/m,newline=crlf
11697 Partial match: a\x0d
11699 Partial match: a\x0d
11701 /^(a$|a\r)/newline=crlf
11706 Partial match: a\x0d
11708 /^(a$|a\r)/m,newline=crlf
11713 Partial match: a\x0d
11719 Partial match: \x0d
11721 /.{2,3}/newline=crlf
11723 Partial match: \x0d
11725 Partial match: \x0d
11729 Partial match: \x0d\x0d
11733 Partial match: \x0d\x0d\x0d
11735 /.{2,3}?/newline=crlf
11737 Partial match: \x0d
11739 Partial match: \x0d
11743 Partial match: \x0d\x0d
11749 "AB(C(D))(E(F))?(?(?=\2)(?=\4))"
11750 ABCDGHI\=ovector=01
11751 Matched, but too many substrings
11754 # These are all run as real matches in test 1; here we are just checking the
11755 # settings of the anchored and startline bits.
11758 Capturing subpattern count = 0
11760 Last code unit = 'a'
11761 Subject length lower bound = 1
11764 Capturing subpattern count = 0
11766 First code unit at start or follows newline
11767 Last code unit = 'a'
11768 Subject length lower bound = 1
11771 Capturing subpattern count = 0
11772 Last code unit = 'b'
11773 Subject length lower bound = 2
11776 Capturing subpattern count = 0
11778 Last code unit = 'b'
11779 Subject length lower bound = 2
11782 Capturing subpattern count = 0
11783 Compile options: dotall
11784 Overall options: anchored dotall
11785 First code unit = 'a'
11786 Subject length lower bound = 2
11789 Capturing subpattern count = 0
11790 Last code unit = 'b'
11791 Subject length lower bound = 2
11794 Capturing subpattern count = 0
11796 Last code unit = 'b'
11797 Subject length lower bound = 2
11800 Capturing subpattern count = 0
11801 Last code unit = 'b'
11802 Subject length lower bound = 2
11805 Capturing subpattern count = 0
11806 Compile options: dotall
11807 Overall options: anchored dotall
11808 First code unit = 'a'
11809 Subject length lower bound = 2
11811 /(?>.*?)(?<=(abcd)|(wxyz))/I
11812 Capturing subpattern count = 2
11814 May match empty string
11815 Subject length lower bound = 0
11817 /(?>.*)(?<=(abcd)|(wxyz))/I
11818 Capturing subpattern count = 2
11820 May match empty string
11821 Subject length lower bound = 0
11824 Capturing subpattern count = 0
11825 Last code unit = 'o'
11826 Subject length lower bound = 3
11829 Capturing subpattern count = 0
11830 Last code unit = 'o'
11831 Subject length lower bound = 3
11834 Capturing subpattern count = 0
11836 First code unit at start or follows newline
11837 Last code unit = 'c'
11838 Subject length lower bound = 3
11841 Capturing subpattern count = 0
11843 Last code unit = 'c'
11844 Subject length lower bound = 3
11847 Capturing subpattern count = 0
11849 First code unit at start or follows newline
11850 Last code unit = 'c'
11851 Subject length lower bound = 3
11853 /(?:(a)+(?C1)bb|aa(?C2)b)/
11854 aab\=callout_capture
11855 Callout 1: last capture = 1
11859 Callout 1: last capture = 1
11863 Callout 2: last capture = 0
11868 /(?:(a)++(?C1)bb|aa(?C2)b)/
11869 aab\=callout_capture
11870 Callout 1: last capture = 1
11874 Callout 2: last capture = 0
11879 /(?:(?>(a))(?C1)bb|aa(?C2)b)/
11880 aab\=callout_capture
11881 Callout 1: last capture = 1
11885 Callout 2: last capture = 0
11890 /(?:(?1)(?C1)x|ab(?C2))((a)){0}/
11891 aab\=callout_capture
11892 Callout 1: last capture = 0
11895 Callout 1: last capture = 0
11898 Callout 2: last capture = 0
11903 /(?1)(?C1)((a)(?C2)){0}/
11904 aab\=callout_capture
11905 Callout 2: last capture = 2
11910 Callout 1: last capture = 0
11915 /(?:(a)+(?C1)bb|aa(?C2)b)++/
11916 aab\=callout_capture
11917 Callout 1: last capture = 1
11921 Callout 1: last capture = 1
11925 Callout 2: last capture = 0
11929 aab\=callout_capture,ovector=1
11930 Callout 1: last capture = 1
11934 Callout 1: last capture = 1
11938 Callout 2: last capture = 0
11949 /(?<=123)(*MARK:xx)abc/mark
11951 Partial match, mark=xx: 123a
11954 Partial match, mark=xx: 123a
11957 /123\Kabc/startchar
11959 Partial match: 123a
11961 Partial match: 123a
11963 /^(?(?=a)aa|bb)/auto_callout
11973 +14 ^ ^ End of pattern
11976 /(?C1)^(?C2)(?(?C99)(?=(?C3)a(?C4))(?C5)a(?C6)a(?C7)|(?C8)b(?C9)b(?C10))(?C11)/
11986 11 ^ ^ End of pattern
11989 # Perl seems to have a bug with this one.
11991 /aaaaa(*COMMIT)(*PRUNE)b|a+c/
11995 # Here are some that Perl treats differently because of the way it handles
11996 # backtracking verbs.
11998 /(?!a(*COMMIT)b)ac|ad/
12004 /^(?!a(*THEN)b|ac)../
12011 /^(?=a(*THEN)b|ac)/
12015 /\A.*?(?:a|b(*THEN)c)/
12019 /\A.*?(?:a|b(*THEN)c)++/
12023 /\A.*?(?:a|b(*THEN)c|d)/
12027 /(?:(a(*MARK:X)a+(*SKIP:X)b)){0}(?:(?1)|aac)/
12031 /\A.*?(a|b(*THEN)c)/
12036 /^(A(*THEN)B|A(*THEN)D)/
12041 /(?!b(*THEN)a)bn|bnn/
12045 /(?(?=b(*SKIP)a)bn|bnn)/
12049 /(?=b(*THEN)a|)bn|bnn/
12053 # This test causes a segfault with Perl 5.18.0
12059 /(?|(?<n>f)|(?<n>b))/I,dupnames
12060 Capturing subpattern count = 1
12061 Named capturing subpatterns:
12064 Starting code units: b f
12065 Subject length lower bound = 1
12067 /(?<a>abc)(?<a>z)\k<a>()/IB,dupnames
12068 ------------------------------------------------------------------
12081 ------------------------------------------------------------------
12082 Capturing subpattern count = 3
12083 Max back reference = 2
12084 Named capturing subpatterns:
12088 First code unit = 'a'
12089 Last code unit = 'z'
12090 Subject length lower bound = 5
12093 ------------------------------------------------------------------
12099 ------------------------------------------------------------------
12102 ------------------------------------------------------------------
12108 ------------------------------------------------------------------
12110 # A complete set of tests for auto-possessification of character types, but
12111 # omitting \C because it might be disabled (it has its own tests).
12113 /\D+\D \D+\d \D+\S \D+\s \D+\W \D+\w \D+. \D+\R \D+\H \D+\h \D+\V \D+\v \D+\Z \D+\z \D+$/Bx
12114 ------------------------------------------------------------------
12148 ------------------------------------------------------------------
12150 /\d+\D \d+\d \d+\S \d+\s \d+\W \d+\w \d+. \d+\R \d+\H \d+\h \d+\V \d+\v \d+\Z \d+\z \d+$/Bx
12151 ------------------------------------------------------------------
12185 ------------------------------------------------------------------
12187 /\S+\D \S+\d \S+\S \S+\s \S+\W \S+\w \S+. \S+\R \S+\H \S+\h \S+\V \S+\v \S+\Z \S+\z \S+$/Bx
12188 ------------------------------------------------------------------
12222 ------------------------------------------------------------------
12224 /\s+\D \s+\d \s+\S \s+\s \s+\W \s+\w \s+. \s+\R \s+\H \s+\h \s+\V \s+\v \s+\Z \s+\z \s+$/Bx
12225 ------------------------------------------------------------------
12259 ------------------------------------------------------------------
12261 /\W+\D \W+\d \W+\S \W+\s \W+\W \W+\w \W+. \W+\R \W+\H \W+\h \W+\V \W+\v \W+\Z \W+\z \W+$/Bx
12262 ------------------------------------------------------------------
12296 ------------------------------------------------------------------
12298 /\w+\D \w+\d \w+\S \w+\s \w+\W \w+\w \w+. \w+\R \w+\H \w+\h \w+\V \w+\v \w+\Z \w+\z \w+$/Bx
12299 ------------------------------------------------------------------
12333 ------------------------------------------------------------------
12335 /\R+\D \R+\d \R+\S \R+\s \R+\W \R+\w \R+. \R+\R \R+\H \R+\h \R+\V \R+\v \R+\Z \R+\z \R+$/Bx
12336 ------------------------------------------------------------------
12370 ------------------------------------------------------------------
12372 /\H+\D \H+\d \H+\S \H+\s \H+\W \H+\w \H+. \H+\R \H+\H \H+\h \H+\V \H+\v \H+\Z \H+\z \H+$/Bx
12373 ------------------------------------------------------------------
12407 ------------------------------------------------------------------
12409 /\h+\D \h+\d \h+\S \h+\s \h+\W \h+\w \h+. \h+\R \h+\H \h+\h \h+\V \h+\v \h+\Z \h+\z \h+$/Bx
12410 ------------------------------------------------------------------
12444 ------------------------------------------------------------------
12446 /\V+\D \V+\d \V+\S \V+\s \V+\W \V+\w \V+. \V+\R \V+\H \V+\h \V+\V \V+\v \V+\Z \V+\z \V+$/Bx
12447 ------------------------------------------------------------------
12481 ------------------------------------------------------------------
12483 /\v+\D \v+\d \v+\S \v+\s \v+\W \v+\w \v+. \v+\R \v+\H \v+\h \v+\V \v+\v \v+\Z \v+\z \v+$/Bx
12484 ------------------------------------------------------------------
12518 ------------------------------------------------------------------
12520 / a+\D a+\d a+\S a+\s a+\W a+\w a+. a+\R a+\H a+\h a+\V a+\v a+\Z a+\z a+$/Bx
12521 ------------------------------------------------------------------
12555 ------------------------------------------------------------------
12557 /\n+\D \n+\d \n+\S \n+\s \n+\W \n+\w \n+. \n+\R \n+\H \n+\h \n+\V \n+\v \n+\Z \n+\z \n+$/Bx
12558 ------------------------------------------------------------------
12592 ------------------------------------------------------------------
12594 / .+\D .+\d .+\S .+\s .+\W .+\w .+. .+\R .+\H .+\h .+\V .+\v .+\Z .+\z .+$/Bx
12595 ------------------------------------------------------------------
12629 ------------------------------------------------------------------
12631 / .+\D .+\d .+\S .+\s .+\W .+\w .+. .+\R .+\H .+\h .+\V .+\v .+\Z .+\z .+$/Bsx
12632 ------------------------------------------------------------------
12666 ------------------------------------------------------------------
12668 / \D+$ \d+$ \S+$ \s+$ \W+$ \w+$ \R+$ \H+$ \h+$ \V+$ \v+$ a+$ \n+$ .+$ .+$/Bmx
12669 ------------------------------------------------------------------
12703 ------------------------------------------------------------------
12706 ------------------------------------------------------------------
12718 ------------------------------------------------------------------
12720 /a+(bb|cc)a+(?:bb|cc)a+(?>bb|cc)a+(?:bb|cc)+a+(aa)a+(?:bb|aa)/B
12721 ------------------------------------------------------------------
12759 ------------------------------------------------------------------
12761 /a+(bb|cc)?#a+(?:bb|cc)??#a+(?:bb|cc)?+#a+(?:bb|cc)*#a+(bb|cc)?a#a+(?:aa)?/B
12762 ------------------------------------------------------------------
12813 ------------------------------------------------------------------
12815 /a+(?:bb)?a#a+(?:|||)#a+(?:|b)a#a+(?:|||)?a/B
12816 ------------------------------------------------------------------
12847 ------------------------------------------------------------------
12850 ------------------------------------------------------------------
12855 ------------------------------------------------------------------
12860 ------------------------------------------------------------------
12865 ------------------------------------------------------------------
12870 ------------------------------------------------------------------
12875 ------------------------------------------------------------------
12880 ------------------------------------------------------------------
12885 ------------------------------------------------------------------
12890 ------------------------------------------------------------------
12895 ------------------------------------------------------------------
12900 ------------------------------------------------------------------
12905 ------------------------------------------------------------------
12910 ------------------------------------------------------------------
12915 ------------------------------------------------------------------
12920 ------------------------------------------------------------------
12925 ------------------------------------------------------------------
12930 ------------------------------------------------------------------
12935 ------------------------------------------------------------------
12940 ------------------------------------------------------------------
12945 ------------------------------------------------------------------
12949 /\d+\s{0,5}=\s*\S?=\w{0,4}\W*/B
12950 ------------------------------------------------------------------
12962 ------------------------------------------------------------------
12964 /[a-d]{5,12}[e-z0-9]*#[^a-z]+[b-y]*a[2-7]?[^0-9a-z]+/B
12965 ------------------------------------------------------------------
12970 [\x00-`{-\xff] (neg)++
12974 [\x00-/:-`{-\xff] (neg)++
12977 ------------------------------------------------------------------
12979 /[a-z]*\s#[ \t]?\S#[a-c]*\S#[C-G]+?\d#[4-8]*\D#[4-9,]*\D#[!$]{0,5}\w#[M-Xf-l]+\W#[a-c,]?\W/B
12980 ------------------------------------------------------------------
13010 ------------------------------------------------------------------
13012 /a+(aa|bb)*c#a*(bb|cc)*a#a?(bb|cc)*d#[a-f]*(g|hh)*f/B
13013 ------------------------------------------------------------------
13049 ------------------------------------------------------------------
13051 /[a-f]*(g|hh|i)*i#[a-x]{4,}(y{0,6})*y#[a-k]+(ll|mm)+n/B
13052 ------------------------------------------------------------------
13079 ------------------------------------------------------------------
13081 /[a-f]*(?>gg|hh)+#[a-f]*(?>gg|hh)?#[a-f]*(?>gg|hh)*a#[a-f]*(?>gg|hh)*h/B
13082 ------------------------------------------------------------------
13117 ------------------------------------------------------------------
13120 ------------------------------------------------------------------
13126 ------------------------------------------------------------------
13127 Capturing subpattern count = 0
13128 Starting code units: a b c d
13129 Last code unit = 'd'
13130 Subject length lower bound = 1
13133 ------------------------------------------------------------------
13139 ------------------------------------------------------------------
13140 Capturing subpattern count = 0
13141 Starting code units: a b c
13142 Last code unit = 'd'
13143 Subject length lower bound = 2
13146 ------------------------------------------------------------------
13152 ------------------------------------------------------------------
13153 Capturing subpattern count = 0
13154 Starting code units: a b c d
13155 Last code unit = 'd'
13156 Subject length lower bound = 1
13159 ------------------------------------------------------------------
13165 ------------------------------------------------------------------
13166 Capturing subpattern count = 0
13167 Starting code units: a b c
13168 Last code unit = 'd'
13169 Subject length lower bound = 5
13172 ------------------------------------------------------------------
13178 ------------------------------------------------------------------
13179 Capturing subpattern count = 0
13180 Starting code units: a b c d
13181 Last code unit = 'd'
13182 Subject length lower bound = 1
13184 # End of special auto-possessive tests
13187 Failed: error 164 at offset 8: non-octal character in \o{} (closing brace missing?)
13191 Failed: error 155 at offset 4: missing opening brace after \o
13194 Failed: error 167 at offset 5: non-hex character in \x{} (closing brace missing?)
13197 Failed: error 167 at offset 7: non-hex character in \x{} (closing brace missing?)
13200 Failed: error 178 at offset 5: digits missing in \x{} or \o{} or \N{U+}
13202 /[ab]++/B,no_auto_possess
13203 ------------------------------------------------------------------
13208 ------------------------------------------------------------------
13210 /[^ab]*+/B,no_auto_possess
13211 ------------------------------------------------------------------
13213 [\x00-`c-\xff] (neg)*+
13216 ------------------------------------------------------------------
13218 /a{4}+/B,no_auto_possess
13219 ------------------------------------------------------------------
13224 ------------------------------------------------------------------
13226 /a{4}+/Bi,no_auto_possess
13227 ------------------------------------------------------------------
13232 ------------------------------------------------------------------
13235 Failed: error 150 at offset 4: invalid range in character class
13238 Failed: error 150 at offset 4: invalid range in character class
13241 Failed: error 150 at offset 4: invalid range in character class
13244 Failed: error 150 at offset 4: invalid range in character class
13247 Failed: error 108 at offset 3: range out of order in character class
13254 Failed: error 150 at offset 5: invalid range in character class
13257 Failed: error 144 at offset 3: group name must start with a non-digit
13259 /(?&1abc)xx(?<1abc>y)/
13260 Failed: error 144 at offset 3: group name must start with a non-digit
13263 Failed: error 142 at offset 5: syntax error in subpattern name (missing terminator)
13266 Failed: error 144 at offset 3: group name must start with a non-digit
13269 Failed: error 144 at offset 4: group name must start with a non-digit
13272 Failed: error 144 at offset 3: group name must start with a non-digit
13275 Failed: error 144 at offset 3: group name must start with a non-digit
13278 Failed: error 144 at offset 3: group name must start with a non-digit
13281 Failed: error 144 at offset 4: group name must start with a non-digit
13284 Failed: error 157 at offset 2: \g is not followed by a braced, angle-bracketed, or quoted name/number or by a plain number
13286 /(?&1abc)xx(?<1abc>y)/
13287 Failed: error 144 at offset 3: group name must start with a non-digit
13289 /(?P>1abc)xx(?<1abc>y)/
13290 Failed: error 144 at offset 4: group name must start with a non-digit
13293 Failed: error 157 at offset 2: \g is not followed by a braced, angle-bracketed, or quoted name/number or by a plain number
13296 Failed: error 157 at offset 2: \g is not followed by a braced, angle-bracketed, or quoted name/number or by a plain number
13299 Failed: error 144 at offset 4: group name must start with a non-digit
13302 Failed: error 144 at offset 4: group name must start with a non-digit
13305 Failed: error 124 at offset 4: missing closing parenthesis for condition
13308 Failed: error 144 at offset 5: group name must start with a non-digit
13310 /(((a\2)|(a*)\g<-1>))*a?/B
13311 ------------------------------------------------------------------
13332 ------------------------------------------------------------------
13334 # Test the ugly "start or end of word" compatibility syntax.
13336 /[[:<:]]red[[:>:]]/B
13337 ------------------------------------------------------------------
13351 ------------------------------------------------------------------
13352 little red riding hood
13366 /[a[:<:]] should give error/
13367 Failed: error 130 at offset 4: unknown POSIX class name
13369 /(?=ab\K)/aftertext
13371 Start of matched string is beyond its end - displaying from end to start.
13375 /abcd/newline=lf,firstline
13380 # Test stack guard external calls.
13382 /(((a)))/stackguard=1
13383 Failed: error 133 at offset 7: parentheses are too deeply nested (stack check)
13385 /(((a)))/stackguard=2
13386 Failed: error 133 at offset 7: parentheses are too deeply nested (stack check)
13388 /(((a)))/stackguard=3
13392 # End stack guard tests
13394 /^\w+(?>\s*)(?<=\w)/B
13395 ------------------------------------------------------------------
13408 ------------------------------------------------------------------
13411 Failed: error 155 at offset 2: missing opening brace after \o
13414 Failed: error 178 at offset 3: digits missing in \x{} or \o{} or \N{U+}
13417 Failed: error 164 at offset 3: non-octal character in \o{} (closing brace missing?)
13422 Failed: error 178 at offset 3: digits missing in \x{} or \o{} or \N{U+}
13425 Failed: error 167 at offset 3: non-hex character in \x{} (closing brace missing?)
13428 Failed: error 115 at offset 2: reference to non-existent subpattern
13431 Failed: error 115 at offset 2: reference to non-existent subpattern
13433 # This one is here because Perl fails to match "12" for this pattern when the $
13436 /^(?(?=abc)\w{3}:|\d\d)$/
13447 # Perl gets this one wrong, giving "a" as the after text for ca and failing to
13450 /(?(?=ab)ab)/aftertext
13461 # This should test both paths for processing OP_RECURSE.
13466 aaaabcde\=ovector=100
13473 /(*NOTEMPTY)a*?b*?/
13481 /(*NOTEMPTY_ATSTART)a*?b*?/aftertext
13489 /(?(VERSION>=10.0)yes|no)/I
13490 Capturing subpattern count = 0
13491 Subject length lower bound = 2
13495 /(?(VERSION>=10.04)yes|no)/
13499 /(?(VERSION=8)yes){3}/BI,aftertext
13500 ------------------------------------------------------------------
13508 ------------------------------------------------------------------
13509 Capturing subpattern count = 0
13510 May match empty string
13511 Subject length lower bound = 0
13516 /(?(VERSION=8)yes|no){3}/I
13517 Capturing subpattern count = 0
13518 Subject length lower bound = 6
13525 /(?:(?<VERSION>abc)|xyz)(?(VERSION)yes|no)/I
13526 Capturing subpattern count = 1
13527 Max back reference = 1
13528 Named capturing subpatterns:
13530 Starting code units: a x
13531 Subject length lower bound = 5
13543 /(?(VERSION<10)yes|no)/
13544 Failed: error 179 at offset 10: syntax error or number too big in (?(VERSION condition
13546 /(?(VERSION>10)yes|no)/
13547 Failed: error 179 at offset 11: syntax error or number too big in (?(VERSION condition
13549 /(?(VERSION>=10.0.0)yes|no)/
13550 Failed: error 179 at offset 16: syntax error or number too big in (?(VERSION condition
13552 /(?(VERSION=10.101)yes|no)/
13553 Failed: error 179 at offset 16: syntax error or number too big in (?(VERSION condition
13556 Capturing subpattern count = 0
13557 First code unit = 'a'
13558 Last code unit = 'd'
13559 Subject length lower bound = 4
13561 /abcd/I,no_start_optimize
13562 Capturing subpattern count = 0
13563 Options: no_start_optimize
13564 Subject length lower bound = 0
13567 Capturing subpattern count = 1
13568 Starting code units: a d
13569 Last code unit = 'd'
13570 Subject length lower bound = 1
13577 /(|ab)*?d/I,no_start_optimize
13578 Capturing subpattern count = 1
13579 Options: no_start_optimize
13580 Subject length lower bound = 0
13587 /\k<A>*(?<A>aa)(?<A>bb)/match_unset_backref,dupnames
13593 /(((((a)))))/parens_nest_limit=2
13594 Failed: error 119 at offset 3: parentheses are too deeply nested
13603 123123\=zero_terminate
13605 123abc123\=zero_terminate
13607 123abc123abc123\=zero_terminate
13620 /abc/g,replace=X$$Z
13624 /a(b)c(d)e/replace=X$1Y${2}Z
13628 /a(b)c(d)e/replace=X$1Y${2}Z,global
13632 /a(?<ONE>b)c(?<TWO>d)e/replace=X$ONE+${TWO}Z
13636 /a(?<ONE>b)c(?<TWO>d)e/g,replace=X$ONE+${TWO}Z
13642 Failed: error -35 at offset 2 in replacement: invalid replacement string
13646 Failed: error -49 at offset 5 in replacement: unknown substring
13648 /abc/replace=a${A234567890123456789_123456789012}z
13650 Failed: error -49 at offset 36 in replacement: unknown substring
13652 /abc/replace=a${A23456789012345678901234567890123}z
13654 Failed: error -35 at offset 35 in replacement: invalid replacement string
13656 /abc/replace=a${bcd
13658 Failed: error -58 at offset 6 in replacement: expected closing curly bracket in replacement string
13660 /abc/replace=a${b+d}z
13662 Failed: error -58 at offset 4 in replacement: expected closing curly bracket in replacement string
13664 /abc/replace=[10]XYZ
13668 /abc/replace=[9]XYZ
13670 Failed: error -48: no more memory
13673 1abc2\=partial_hard
13674 Failed: error -34: bad option value
13679 123abc456\=replace=pqr
13686 /(?<=abc)(|def)/g,replace=<$0>
13687 123abcxyzabcdef789abcpqr
13688 4: 123abc<>xyzabc<><def>789abc<>pqr
13694 /(.)(.)/replace=$2+$1
13698 /(?<A>.)(?<B>.)/replace=$B+$A
13702 /(.)(.)/g,replace=$2$1
13706 /(*:pear)apple|(*:orange)lemon|(*:strawberry)blackberry/g,replace=${*MARK}
13707 apple lemon blackberry
13708 3: pear orange strawberry
13714 /(*:pear)apple|(*:orange)lemon|(*:strawberry)blackberry/replace=${*MARK} sauce,
13715 apple lemon blackberry
13716 1: pear sauce lemon blackberry
13718 /(*:pear)apple|(*:orange)lemon|(*:strawberry)blackberry/g,replace=<$*MARK>
13719 apple lemon blackberry
13720 3: <pear> <orange> <strawberry>
13726 /(*:pear)apple/g,replace=${*MARKING}
13727 apple lemon blackberry
13728 Failed: error -35 at offset 11 in replacement: invalid replacement string
13730 /(*:pear)apple/g,replace=${*MARK-time
13731 apple lemon blackberry
13732 Failed: error -58 at offset 7 in replacement: expected closing curly bracket in replacement string
13734 /(*:pear)apple/g,replace=${*mark}
13735 apple lemon blackberry
13736 Failed: error -35 at offset 8 in replacement: invalid replacement string
13738 /(*:pear)apple|(*:orange)lemon|(*:strawberry)blackberry/g,replace=<$*MARKET>
13739 apple lemon blackberry
13740 Failed: error -35 at offset 9 in replacement: invalid replacement string
13742 /(*:pear)apple|(*:orange)lemon|(*:strawberry)blackberry/g,replace=[22]${*MARK}
13743 apple lemon blackberry
13744 Failed: error -48: no more memory
13745 apple lemon blackberry\=substitute_overflow_length
13746 Failed: error -48: no more memory: 23 code units are needed
13748 /(*:pear)apple|(*:orange)lemon|(*:strawberry)blackberry/g,replace=[23]${*MARK}
13749 apple lemon blackberry
13750 3: pear orange strawberry
13753 123abc123\=replace=[9]XYZ
13754 Failed: error -48: no more memory
13755 123abc123\=substitute_overflow_length,replace=[9]XYZ
13756 Failed: error -48: no more memory: 10 code units are needed
13757 123abc123\=substitute_overflow_length,replace=[6]XYZ
13758 Failed: error -48: no more memory: 10 code units are needed
13759 123abc123\=substitute_overflow_length,replace=[1]XYZ
13760 Failed: error -48: no more memory: 10 code units are needed
13761 123abc123\=substitute_overflow_length,replace=[0]XYZ
13762 Failed: error -48: no more memory: 10 code units are needed
13765 123abc123\=replace=[9]x$1z
13766 Failed: error -48: no more memory
13767 123abc123\=substitute_overflow_length,replace=[9]x$1z
13768 Failed: error -48: no more memory: 10 code units are needed
13769 123abc123\=substitute_overflow_length,replace=[6]x$1z
13770 Failed: error -48: no more memory: 10 code units are needed
13771 123abc123\=substitute_overflow_length,replace=[1]x$1z
13772 Failed: error -48: no more memory: 10 code units are needed
13773 123abc123\=substitute_overflow_length,replace=[0]x$1z
13774 Failed: error -48: no more memory: 10 code units are needed
13776 "((?=(?(?=(?(?=(?(?=()))))))))"
13782 "(?(?=)==)(((((((((?=)))))))))"
13788 XcX\=ovector=2,get=1,get=2,get=3,get=4,getall
13789 Matched, but too many substrings
13792 Get substring 1 failed (-55): requested value is not set
13793 Get substring 2 failed (-54): requested value is not available
13794 Get substring 3 failed (-54): requested value is not available
13795 Get substring 4 failed (-49): unknown substring
13801 Start of matched string is beyond its end - displaying from end to start.
13805 Start of matched string is beyond its end - displaying from end to start.
13809 Start of matched string is beyond its end - displaying from end to start.
13813 /(?<A>a)|(?<A>b)/dupnames
13814 a\=ovector=1,copy=A,get=A,get=2
13815 Matched, but too many substrings
13817 Copy substring 'A' failed (-54): requested value is not available
13818 Get substring 2 failed (-54): requested value is not available
13819 Get substring 'A' failed (-54): requested value is not available
13820 a\=ovector=2,copy=A,get=A,get=2
13823 C a (1) A (non-unique)
13824 Get substring 2 failed (-54): requested value is not available
13825 G a (1) A (non-unique)
13826 b\=ovector=2,copy=A,get=A,get=2
13827 Matched, but too many substrings
13830 Copy substring 'A' failed (-55): requested value is not set
13831 Get substring 2 failed (-54): requested value is not available
13832 Get substring 'A' failed (-55): requested value is not set
13835 abc\=ph,copy=0,copy=1,getall
13838 Copy substring 1 failed (-2): partial match
13839 get substring list failed (-2): partial match
13842 Capturing subpattern count = 0
13843 Compile options: <none>
13844 Overall options: anchored
13845 First code unit = 'a'
13846 Subject length lower bound = 3
13848 /^abc/info,no_dotstar_anchor
13849 Capturing subpattern count = 0
13850 Compile options: no_dotstar_anchor
13851 Overall options: anchored no_dotstar_anchor
13852 First code unit = 'a'
13853 Subject length lower bound = 3
13855 /.*\d/info,auto_callout
13856 Capturing subpattern count = 0
13857 Options: auto_callout
13858 First code unit at start or follows newline
13859 Subject length lower bound = 1
13870 /.*\d/info,no_dotstar_anchor,auto_callout
13871 Capturing subpattern count = 0
13872 Options: auto_callout no_dotstar_anchor
13873 Subject length lower bound = 1
13892 Capturing subpattern count = 0
13893 Compile options: dotall
13894 Overall options: anchored dotall
13895 Subject length lower bound = 1
13897 /.*\d/dotall,no_dotstar_anchor,info
13898 Capturing subpattern count = 0
13899 Options: dotall no_dotstar_anchor
13900 Subject length lower bound = 1
13902 /(*NO_DOTSTAR_ANCHOR)(?s).*\d/info
13903 Capturing subpattern count = 0
13904 Compile options: <none>
13905 Overall options: no_dotstar_anchor
13906 Subject length lower bound = 1
13908 '^(?:(a)|b)(?(1)A|B)'
13910 Matched, but too many substrings
13916 '^(?:(?<AA>a)|b)(?(<AA>)A|B)'
13918 Matched, but too many substrings
13924 '^(?<AA>)(?:(?<AA>a)|b)(?(<AA>)A|B)'dupnames
13926 Matched, but too many substrings
13929 Matched, but too many substrings
13937 '^(?:(?<AA>X)|)(?:(?<AA>a)|b)\k{AA}'dupnames
13939 Matched, but too many substrings
13942 Matched, but too many substrings
13950 /(?<N111>(?J)(?<N111>1(111111)11|)1|1|)(?(<N111>)1)/
13952 /(?<N>(?J)(?<N>))(?-J)\k<N>/
13954 # Quantifiers are not allowed on condition assertions, but are otherwise
13955 # OK in conditions.
13958 Failed: error 109 at offset 7: quantifier does not follow a repeatable item
13960 /(?(?=0)(?=00)?00765)/
13964 /(?(?=0)(?=00)?00765|(?!3).56)/
13979 Matched, but too many substrings
13987 Matched, but too many substrings
13990 # These two pattern showeds up compile-time bugs
13992 "((?2){0,1999}())?"
13995 ------------------------------------------------------------------
14007 ------------------------------------------------------------------
14009 # Callouts with string arguments
14012 Failed: error 181 at offset 4: missing terminating delimiter for callout with string argument
14015 Failed: error 181 at offset 4: missing terminating delimiter for callout with string argument
14018 Failed: error 139 at offset 7: closing parenthesis for (?C expected
14020 /a(?C"a"bcde(?C"b")xyz/
14021 Failed: error 139 at offset 7: closing parenthesis for (?C expected
14024 ------------------------------------------------------------------
14027 CalloutStr "a)b"c" 5 13 0
14030 ------------------------------------------------------------------
14032 /ab(?C" any text with spaces ")cde/B
14033 ------------------------------------------------------------------
14036 CalloutStr " any text with spaces " 6 30 1
14040 ------------------------------------------------------------------
14042 Callout (6): " any text with spaces "
14047 Callout (6): " any text with spaces "
14059 /^a(b)c(?C"AB")def/
14068 abcdef\=callout_capture
14069 Callout 1: last capture = 1
14076 /^a(b)c(?C{AB})def/B
14077 ------------------------------------------------------------------
14085 CalloutStr {AB} 10 14 1
14089 ------------------------------------------------------------------
14090 abcdef\=callout_capture
14091 Callout (10): {AB} last capture = 1
14098 /(?C`a``b`)(?C'a''b')(?C"a""b")(?C^a^^b^)(?C%a%%b%)(?C#a##b#)(?C$a$$b$)(?C{a}}b})/B,callout_info
14099 ------------------------------------------------------------------
14101 CalloutStr `a`b` 4 10 0
14102 CalloutStr 'a'b' 14 20 0
14103 CalloutStr "a"b" 24 30 0
14104 CalloutStr ^a^b^ 34 40 0
14105 CalloutStr %a%b% 44 50 0
14106 CalloutStr #a#b# 54 60 0
14107 CalloutStr $a$b$ 64 70 0
14108 CalloutStr {a}b} 74 80 0
14111 ------------------------------------------------------------------
14121 /(?:a(?C`code`)){3}/B
14122 ------------------------------------------------------------------
14126 CalloutStr `code` 8 14 4
14130 CalloutStr `code` 8 14 4
14134 CalloutStr `code` 8 14 4
14138 ------------------------------------------------------------------
14140 /^(?(?C25)(?=abc)abcd|xyz)/B,callout_info
14141 ------------------------------------------------------------------
14155 ------------------------------------------------------------------
14166 /^(?(?C$abc$)(?=abc)abcd|xyz)/B
14167 ------------------------------------------------------------------
14171 CalloutStr $abc$ 7 12 3
14181 ------------------------------------------------------------------
14193 /^ab(?C'first')cd(?C"second")ef/
14195 Callout (7): 'first'
14198 Callout (20): "second"
14203 /(?:a(?C`code`)){3}X/
14205 Callout (8): `code`
14208 Callout (8): `code`
14211 Callout (8): `code`
14216 # Binary zero in callout string
14217 # a ( ? C ' x z ' ) b
14218 / 61 28 3f 43 27 78 00 7a 27 29 62/hex,callout_info
14221 Callout (5): 'x\x00z'
14235 # JIT gives a different error message for the infinite recursion
14237 "(*NO_JIT)((?2)+)((?1)){"
14239 Failed: error -52: nested recursion at the same subject position
14241 # Perl fails to diagnose the absence of an assertion
14244 Failed: error 128 at offset 2: assertion expected after (?( or (?(?C)
14247 ------------------------------------------------------------------
14266 ------------------------------------------------------------------
14269 ------------------------------------------------------------------
14286 ------------------------------------------------------------------
14288 /(?<=\bABQ(3(?-7)))/
14289 Failed: error 115 at offset 15: reference to non-existent subpattern
14291 /(?<=\bABQ(3(?+7)))/
14292 Failed: error 115 at offset 15: reference to non-existent subpattern
14294 ";(?<=()((?3))((?2)))"
14295 Failed: error 125 at offset 1: lookbehind assertion is not fixed length
14297 # Perl loops on this (PCRE2 used to!)
14299 /(?<=\Ka)/g,aftertext
14312 /(?<=\Ka)/altglobal,aftertext
14325 /((?2){73}(?2))((?1))/info
14326 Capturing subpattern count = 2
14327 May match empty string
14328 Subject length lower bound = 0
14346 /^/gm,alt_circumflex
14353 /((((((((x))))))))\81/
14354 Failed: error 115 at offset 19: reference to non-existent subpattern
14357 /((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((x))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))\80/
14359 Matched, but too many substrings
14377 Failed: error 115 at offset 2: reference to non-existent subpattern
14380 Failed: error 115 at offset 2: reference to non-existent subpattern
14383 /(?x:((?'a')) # comment (with parentheses) and | vertical
14384 (?-x:#not a comment (?'b')) # this is a comment ()
14385 (?'c')) # not a comment (?'d')/info
14386 Capturing subpattern count = 5
14387 Named capturing subpatterns:
14392 First code unit = '#'
14393 Last code unit = ' '
14394 Subject length lower bound = 32
14396 /(?|(?'a')(2)(?'b')|(?'a')(?'a')(3))/I,dupnames
14397 Capturing subpattern count = 3
14398 Named capturing subpatterns:
14403 Starting code units: 2 3
14404 Subject length lower bound = 1
14416 # These are some patterns that used to cause buffer overflows or other errors
14419 /.((?2)(?R)|\1|$)()/B
14420 ------------------------------------------------------------------
14437 ------------------------------------------------------------------
14439 /.((?3)(?R)()(?2)|\1|$)()/B
14440 ------------------------------------------------------------------
14460 ------------------------------------------------------------------
14462 /(\9*+(?2);\3++()2|)++{/
14463 Failed: error 115 at offset 2: reference to non-existent subpattern
14465 /\V\x85\9*+((?2)\3++()2)*:2/
14466 Failed: error 115 at offset 7: reference to non-existent subpattern
14468 /(((?(R)){0,2}) (?'x'((?'R')((?'R')))))/dupnames
14470 /(((?(X)){0,2}) (?'x'((?'X')((?'X')))))/dupnames
14472 /(((?(R)){0,2}) (?'x'((?'X')((?'R')))))/
14474 "(?J)(?'d'(?'d'\g{d}))"
14476 "(?=!((?2)(?))({8(?<=(?1){29}8bbbb\x16\xd\xc6^($(\xa9H4){4}h}?1)B))\x15')"
14477 Failed: error 125 at offset 16: lookbehind assertion is not fixed length
14480 Failed: error 162 at offset 4: subpattern name expected
14482 "(?J:(?|(?'R')(\k'R')|((?'R'))))"
14484 /(?<=|(\,\$(?73591620449005828816)\xa8.{7}){6}\x09)/
14485 Failed: error 161 at offset 17: group number is too big
14487 /^(?:(?(1)x|)+)+$()/B
14488 ------------------------------------------------------------------
14503 ------------------------------------------------------------------
14506 Failed: error 162 at offset 10: subpattern name expected
14509 Failed: error 162 at offset 15: subpattern name expected
14512 Failed: error 162 at offset 10: subpattern name expected
14515 Failed: error 162 at offset 10: subpattern name expected
14518 ------------------------------------------------------------------
14528 ------------------------------------------------------------------
14533 Failed: error 162 at offset 14: subpattern name expected
14535 /((?x)(?#))#(?'abc')/I
14536 Capturing subpattern count = 2
14537 Named capturing subpatterns:
14539 First code unit = '#'
14540 Subject length lower bound = 1
14543 Failed: error 162 at offset 9: subpattern name expected
14545 /[[:\\](?'abc')[a:]/I
14546 Capturing subpattern count = 1
14547 Named capturing subpatterns:
14549 Starting code units: : [ \
14550 Subject length lower bound = 2
14552 "[[[.\xe8Nq\xffq\xff\xe0\x2|||::Nq\xffq\xff\xe0\x6\x2|||::[[[:[::::::[[[[[::::::::[:[[[:[:::[[[[[[[[[[[[:::::::::::::::::[[.\xe8Nq\xffq\xff\xe0\x2|||::Nq\xffq\xff\xe0\x6\x2|||::[[[:[::::::[[[[[::::::::[:[[[:[:::[[[[[[[[[[[[[[:::E[[[:[:[[:[:::[[:::E[[[:[:[[:'[:::::E[[[:[::::::[[[:[[[[[[[::E[[[:[::::::[[[:[[[[[[[[:[[::[::::[[:::::::[[:[[[[[[[:[[::[:[[:[~"
14553 Failed: error 106 at offset 353: missing terminating ] for character class
14556 ------------------------------------------------------------------
14569 ------------------------------------------------------------------
14572 Failed: error 158 at offset 3: (?R (recursive pattern call) must be followed by a closing parenthesis
14575 Failed: error 158 at offset 3: (?R (recursive pattern call) must be followed by a closing parenthesis
14578 Failed: error 162 at offset 16: subpattern name expected
14580 /(?(?C{\Q})(?!(?'abc')))/I
14581 Capturing subpattern count = 1
14582 Named capturing subpatterns:
14584 May match empty string
14585 Subject length lower bound = 0
14587 /(?1){3918}(((((0(\k'R'))))(?J)(?'R'(?'R'\3){99})))/I
14588 Capturing subpattern count = 8
14589 Max back reference = 8
14590 Named capturing subpatterns:
14593 Duplicate name status changes
14594 Last code unit = '0'
14595 Subject length lower bound = 65535
14597 /(?|(aaa)|(b))\g{1}/I
14598 Capturing subpattern count = 1
14599 Max back reference = 1
14600 Starting code units: a b
14601 Subject length lower bound = 0
14603 /(?|(aaa)|(b))(?1)/I
14604 Capturing subpattern count = 1
14605 Starting code units: a b
14606 Subject length lower bound = 4
14609 Capturing subpattern count = 1
14610 Starting code units: a b
14611 Subject length lower bound = 1
14613 /(?|(?'a'aaa)|(?'a'b))\k'a'/I
14614 Capturing subpattern count = 1
14615 Max back reference = 1
14616 Named capturing subpatterns:
14618 Starting code units: a b
14619 Subject length lower bound = 0
14621 /(?|(?'a'aaa)|(?'a'b))(?'a'cccc)\k'a'/I,dupnames
14622 Capturing subpattern count = 2
14623 Max back reference = 2
14624 Named capturing subpatterns:
14628 Starting code units: a b
14629 Last code unit = 'c'
14630 Subject length lower bound = 0
14652 /^(a(b))\1\g1\g{1}\g-1\g{-1}\g{-02}Z/
14676 Failed: error 161 at offset 8: group number is too big
14678 /((?(R8000000000)))/
14679 Failed: error 161 at offset 9: group number is too big
14681 /0(?0)|(1)(*THEN)(*SKIP:0)(*FAIL)/
14686 /(?(1)()\983040\2)/
14687 Failed: error 161 at offset 14: group number is too big
14689 /(*LIMIT_MATCH=)abc/
14690 Failed: error 160 at offset 14: (*VERB) not recognized or malformed
14692 /(*CRLF)(*LIMIT_MATCH=)abc/
14693 Failed: error 160 at offset 21: (*VERB) not recognized or malformed
14695 /(?:ab)?(?:ab)(?:ab)/
14704 /((*MARK:A))++a(*SKIP:B)b/
14709 /(*MARK:a\zb)z/alt_verbnames
14710 Failed: error 140 at offset 10: invalid escape sequence in (*VERB) name
14713 Failed: error 122 at offset 12: unmatched closing parenthesis
14715 /(*:ab\t(d\)c)xxx/alt_verbnames,mark
14720 /(*:A\Qxx)x\EB)x/alt_verbnames,mark
14725 /(*:A\ExxxB)x/alt_verbnames,mark
14730 /(*: A \ and #comment
14731 \ B)x/x,alt_verbnames,mark
14736 /(*: A \ and #comment
14737 \ B)x/alt_verbnames,mark
14740 MK: A and #comment\x0a B
14742 /(*: A \ and #comment
14746 MK: A \ and #comment\x0a \ B
14748 /(*: A \ and #comment
14752 MK: A \ and #comment\x0a \ B
14755 B)x/alt_verbnames,mark
14760 /(*:abc\Qpqr)/alt_verbnames
14761 Failed: error 160 at offset 12: (*VERB) not recognized or malformed
14763 /abc/use_offset_limit
14764 1234abcde\=offset_limit=100
14766 1234abcde\=offset_limit=9
14768 1234abcde\=offset_limit=4
14770 1234abcde\=offset_limit=4,offset=4
14773 1234abcde\=offset_limit=4,offset=5
14775 1234abcde\=offset_limit=3
14778 /(?<=abc)/use_offset_limit
14779 1234abc\=offset_limit=7
14782 1234abc\=offset_limit=6
14785 /A/g,replace=-,use_offset_limit
14786 XAXAXAXAXA\=offset_limit=4
14791 1234abcde\=offset_limit=4
14792 Failed: error -56: offset limit set without PCRE2_USE_OFFSET_LIMIT
14794 /^\w/m,use_offset_limit
14795 \n..\naa\=offset_limit=3
14797 \n..\naa\=offset_limit=4
14804 abcd\=null_context,find_limits
14805 ** Not allowed together: find_limits null_context
14806 abcd\=allusedtext,startchar
14807 ** Not allowed together: allusedtext startchar
14809 /abcd/replace=w\rx\x82y\o{333}z(\Q12\$34$$\x34\E5$$),substitute_extended
14811 1: w\x0dx\x82y\xdbz(12\$34$$\x345$)
14813 /a(bc)(DE)/replace=a\u$1\U$1\E$1\l$2\L$2\Eab\Uab\LYZ\EDone,substitute_extended
14815 1: aBcBCbcdEdeabAByzDone
14817 /abcd/replace=xy\kz,substitute_extended
14819 Failed: error -57 at offset 4 in replacement: bad escape sequence in replacement string
14821 /a(?:(b)|(c))/substitute_extended,replace=X${1:+1:-1}X${2:+2:-2}
14826 ab\=replace=${1:+$1\:$1:$2}
14828 ac\=replace=${1:+$1\:$1:$2}
14831 /a(?:(b)|(c))/substitute_extended,replace=X${1:-1:-1}X${2:-2:-2}
14837 /(a)/substitute_extended,replace=>${1:+\Q$1:{}$$\E+\U$1}<
14841 /X(b)Y/substitute_extended
14842 XbY\=replace=x${1:+$1\U$1}y
14844 XbY\=replace=\Ux${1:+$1$1}y
14847 /a/substitute_extended,replace=${*MARK:+a:b}
14849 Failed: error -58 at offset 7 in replacement: expected closing curly bracket in replacement string
14851 /(abcd)/replace=${1:+xy\kz},substitute_extended
14853 Failed: error -57 at offset 8 in replacement: bad escape sequence in replacement string
14856 abcd\=replace=${1:+xy\kz},substitute_extended
14857 Failed: error -57 at offset 8 in replacement: bad escape sequence in replacement string
14859 /abcd/substitute_extended,replace=>$1<
14861 Failed: error -49 at offset 3 in replacement: unknown substring
14863 /abcd/substitute_extended,replace=>xxx${xyz}<<<
14865 Failed: error -49 at offset 10 in replacement: unknown substring
14867 /(?J)(?:(?<A>a)|(?<A>b))/replace=<$A>
14874 Failed: error -54 at offset 3 in replacement: requested value is not available
14876 /(a)|(b)/replace=<$1>
14879 Failed: error -55 at offset 3 in replacement: requested value is not set
14881 /(aa)(BB)/substitute_extended,replace=\U$1\L$2\E$1..\U$1\l$2$1
14885 /^(o(\1{72}{\"{\\{00000059079}\d*){74}}){19}/I
14886 Capturing subpattern count = 2
14887 Max back reference = 1
14888 Compile options: <none>
14889 Overall options: anchored
14890 First code unit = 'o'
14891 Last code unit = '}'
14892 Subject length lower bound = 65535
14895 Failed: error 142 at offset 7: syntax error in subpattern name (missing terminator)
14897 /((p(?'K/no_auto_capture
14898 Failed: error 142 at offset 7: syntax error in subpattern name (missing terminator)
14900 /abc/replace=A$3123456789Z
14902 Failed: error -49 at offset 3 in replacement: unknown substring
14904 /(?<!a{65535}a{5})x/I
14905 Failed: error 187 at offset 0: lookbehind assertion is too long
14908 Capturing subpattern count = 0
14909 Max lookbehind = 65535
14910 First code unit = 'x'
14911 Subject length lower bound = 1
14915 Failed: error -60: match with end before start or start moved backwards is not supported
14917 /(?<=\K.)/g,replace=-
14919 Failed: error -60: match with end before start or start moved backwards is not supported
14921 /(?'abcdefghijklmnopqrstuvwxyzABCDEFG'toolong)/
14922 Failed: error 148 at offset 36: subpattern name is too long (maximum 32 characters)
14924 /(?'abcdefghijklmnopqrstuvwxyzABCDEF'justright)/
14926 # These two use zero-termination
14927 /abcd/max_pattern_length=3
14928 Failed: error 188 at offset 0: pattern string is longer than the limit set by the application
14930 /abc/max_pattern_length=3
14932 # These two, being hex, pass the length
14933 /abcdefab/hex,max_pattern_length=3
14934 Failed: error 188 at offset 0: pattern string is longer than the limit set by the application
14936 /abcdef/hex,max_pattern_length=3
14938 # These patterns used to take a long time to compile
14941 ((?-2)(?-2))((?-2)(?-2))((?-2)(?-2))((?-2)(?-2))
14942 ((?-2)(?-2))((?-2)(?-2))((?-2)(?-2))((?-2)(?-2))
14943 ((?-2)(?-2))((?-2)(?-2))((?-2)(?-2))"xI
14944 Capturing subpattern count = 12
14945 May match empty string
14947 First code unit at start or follows newline
14948 Subject length lower bound = 0
14951 ((?-2)(?-2))((?-2)(?-2))((?-2)(?-2))((?-2)(?-2))
14952 ((?-2)(?-2))((?-2)(?-2))((?-2)(?-2))((?-2)(?-2))
14953 ((?-2)(?-2))((?-2)(?-2))((?-2)(?-2))
14955 Capturing subpattern count = 12
14957 May match empty string
14959 Subject length lower bound = 0
14962 ((?-2)(?-2))((?-2)(?-2))((?-2)(?-2))((?-2)(?-2))
14963 ((?-2)(?-2))((?-2)(?-2))((?-2)(?-2))((?-2)(?-2))
14964 ((?-2)(?-2))((?-2)(?-2))((?-2)(?-2))"xI
14965 Capturing subpattern count = 13
14966 May match empty string
14968 Subject length lower bound = 0
14971 ((?-2)(?-2))((?-2)(?-2))((?-2)(?-2))((?-2)(?-2))
14972 ((?-2)(?-2))((?-2)(?-2))((?-2)(?-2))((?-2)(?-2))
14973 ((?-2)(?-2))((?-2)(?-2))((?-2)(?-2))
14975 Failed: error 135 at offset 9: lookbehind is too complicated
14977 # Test the use of malloc for caching group information when there are more
14978 # groups than fit into the on-stack workspace.
14980 /\[()]{1024}/I,expand
14981 Expanded: ()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()()
14982 Capturing subpattern count = 1024
14983 May match empty string
14984 Subject length lower bound = 0
14986 # Test minlength capped at 65535
14988 /(A{65000})\1{65000}/I
14989 Capturing subpattern count = 1
14990 Max back reference = 1
14991 First code unit = 'A'
14992 Last code unit = 'A'
14993 Subject length lower bound = 65535
14995 # Test group scans when numbers are not unique
14998 ------------------------------------------------------------------
15010 ------------------------------------------------------------------
15011 Capturing subpattern count = 1
15012 May match empty string
15013 Subject length lower bound = 0
15016 ------------------------------------------------------------------
15028 ------------------------------------------------------------------
15029 Capturing subpattern count = 1
15030 May match empty string
15031 Subject length lower bound = 0
15034 ------------------------------------------------------------------
15046 ------------------------------------------------------------------
15047 Capturing subpattern count = 1
15048 May match empty string
15049 Subject length lower bound = 0
15052 ------------------------------------------------------------------
15064 ------------------------------------------------------------------
15065 Capturing subpattern count = 1
15066 May match empty string
15067 Subject length lower bound = 0
15069 # Test CRLF handling in empty string substitutions
15071 /^$/gm,newline=anycrlf,replace=-
15073 1: X\x0d\x0a-\x0d\x0aY
15075 /^$/gm,newline=crlf,replace=-
15077 1: X\x0d\x0a-\x0d\x0aY
15079 /^$/gm,newline=any,replace=-
15081 1: X\x0d\x0a-\x0d\x0aY
15083 "(*ANYCRLF)(?m)^(.*[^0-9\r\n].*|)$"g,replace=NaN
15084 15\r\nfoo\r\n20\r\nbar\r\nbaz\r\n\r\n20
15085 4: 15\x0d\x0aNaN\x0d\x0a20\x0d\x0aNaN\x0d\x0aNaN\x0d\x0aNaN\x0d\x0a20
15087 /a[[:punct:]b]/bincode
15088 ------------------------------------------------------------------
15094 ------------------------------------------------------------------
15096 /a[b[:punct:]]/bincode
15097 ------------------------------------------------------------------
15103 ------------------------------------------------------------------
15106 ------------------------------------------------------------------
15111 ------------------------------------------------------------------
15113 /L(?#(|++<!(2)?/B,no_auto_possess
15114 ------------------------------------------------------------------
15119 ------------------------------------------------------------------
15121 /L(?#(|++<!(2)?/B,auto_callout
15122 ------------------------------------------------------------------
15129 ------------------------------------------------------------------
15131 /L(?#(|++<!(2)?/B,no_auto_possess,auto_callout
15132 ------------------------------------------------------------------
15139 ------------------------------------------------------------------
15141 /(A*)\E+/B,auto_callout
15142 ------------------------------------------------------------------
15153 ------------------------------------------------------------------
15155 /()\Q\E*]/B,auto_callout
15156 ------------------------------------------------------------------
15168 ------------------------------------------------------------------
15174 +8 ^^ End of pattern
15178 /\x8a+f|;T?(*:;.'?`(\xeap ){![^()!y*''C*(?';]{1;(\x08)/B,alt_verbnames,dupnames,extended
15179 ------------------------------------------------------------------
15186 *MARK ;.'?`(\x{ea}p
15188 [\x00- "-&+-:<->@-BD-xz-\xff] (neg)
15195 ------------------------------------------------------------------
15197 # Tests for NULL characters in comments and verb "names" and callouts
15200 /41 23 42 00 43 0a 5a/Bx,hex
15201 ------------------------------------------------------------------
15206 ------------------------------------------------------------------
15209 /41 2b 23 42 00 43 0a 2b/Bx,hex
15210 ------------------------------------------------------------------
15215 ------------------------------------------------------------------
15217 # /A(*:B\x00W#X\00Y\x0aC)Z/
15218 /41 28 2a 3a 42 00 57 23 58 00 59 0a 43 29 5a/Bx,hex,alt_verbnames
15219 ------------------------------------------------------------------
15226 ------------------------------------------------------------------
15228 # /A(*:B\x00W#X\00Y\x0aC)Z/
15229 /41 28 2a 3a 42 00 57 23 58 00 59 0a 43 29 5a/Bx,hex
15230 ------------------------------------------------------------------
15233 *MARK B\x{0}W#X\x{0}Y\x{a}C
15237 ------------------------------------------------------------------
15240 /41 28 3f 43 7b 58 00 59 7d 29 42/B,hex
15241 ------------------------------------------------------------------
15244 CalloutStr {X\x{0}Y} 5 10 1
15248 ------------------------------------------------------------------
15251 /41 28 3f 23 7b 00 7d 29 42/B,hex
15252 ------------------------------------------------------------------
15257 ------------------------------------------------------------------
15259 # Tests for leading comment in extended patterns
15263 /
\v(?-x):?/extended
15265 /0b 28 3f 2d 78 29 3a/hex,extended
15270 /(8(*:6^\x09x\xa6l\)6!|\xd0:[^:|)\x09d\Z\d{85*m(?'(?<1!)*\W[*\xff]!!h\w]*\xbe;/alt_bsux,alt_verbnames,allow_empty_class,dollar_endonly,extended,multiline,never_utf,no_dotstar_anchor,no_start_optimize
15271 Failed: error 162 at offset 49: subpattern name expected
15273 /a|(b)c/replace=>$1<,substitute_unset_empty
15281 Failed: error -55 at offset 3 in replacement: requested value is not set
15282 cat\=replace=>$1<,substitute_unset_empty
15284 xbcom\=replace=>$1<,substitute_unset_empty
15287 /a|(b)c/substitute_extended
15288 cat\=replace=>${2:-xx}<
15289 Failed: error -49 at offset 9 in replacement: unknown substring
15290 cat\=replace=>${2:-xx}<,substitute_unknown_unset
15292 cat\=replace=>${X:-xx}<,substitute_unknown_unset
15295 /a|(?'X'b)c/replace=>$X<,substitute_unset_empty
15301 /a|(?'X'b)c/replace=>$Y<,substitute_unset_empty
15303 Failed: error -49 at offset 3 in replacement: unknown substring
15304 cat\=substitute_unknown_unset
15306 cat\=substitute_unknown_unset,-substitute_unset_empty
15307 Failed: error -55 at offset 3 in replacement: requested value is not set
15309 /a|(b)c/replace=>$2<,substitute_unset_empty
15311 Failed: error -49 at offset 3 in replacement: unknown substring
15312 cat\=substitute_unknown_unset
15314 cat\=substitute_unknown_unset,-substitute_unset_empty
15315 Failed: error -55 at offset 3 in replacement: requested value is not set
15317 /()()()/use_offset_limit
15318 \=ovector=11000000000
15319 ** Invalid value in 'ovector=11000000000'
15320 \=callout_fail=11000000000
15321 ** Invalid value in 'callout_fail=11000000000'
15322 \=callout_fail=1:11000000000
15323 ** Invalid value in 'callout_fail=1:11000000000'
15324 \=callout_data=11000000000
15325 ** Invalid value in 'callout_data=11000000000'
15326 \=callout_data=-11000000000
15327 ** Invalid value in 'callout_data=-11000000000'
15328 \=offset_limit=1100000000000000000000
15329 ** Invalid value in 'offset_limit=1100000000000000000000'
15331 ** Invalid value in 'copy=11000000000'
15333 /(*MARK:A\x00b)/mark
15338 /(*MARK:A\x00b)/mark,alt_verbnames
15343 /"(*MARK:A" 00 "b)"/mark,hex
15348 /"(*MARK:A" 00 "b)"/mark,hex,alt_verbnames
15354 ** Unexpected non-hex-digit 'g' at offset 2 in hex pattern: quote missing?
15357 ** Odd number of digits in hex pattern
15360 ** Unexpected non-hex-digit 'g' at offset 3 in hex pattern: quote missing?
15362 /(?J)(?'a'))(?'a')/
15363 Failed: error 122 at offset 10: unmatched closing parenthesis
15381 \[abc]{10000000000000000000000000000}
15382 ** Repeat count too large
15386 /\[AB]{6000000000000000000000}/expand
15387 ** Pattern repeat count too large
15389 # Hex uses pattern length, not zero-terminated. This tests for overrunning
15390 # the given length of a pattern.
15393 Failed: error 160 at offset 3: (*VERB) not recognized or malformed
15396 Failed: error 109 at offset 1: quantifier does not follow a repeatable item
15399 Failed: error 114 at offset 1: missing closing parenthesis
15403 # These tests are here because Perl never allows a back reference in a
15404 # lookbehind. PCRE2 supports some limited cases.
15406 /([ab])...(?<=\1)z/
15417 /(?|([ab]))...(?<=\1)z/
15418 Failed: error 125 at offset 13: lookbehind assertion is not fixed length
15420 /([ab])(\1)...(?<=\2)z/
15426 /(a\2)(b\1)(?<=\2)/
15427 Failed: error 125 at offset 10: lookbehind assertion is not fixed length
15429 /(?<A>[ab])...(?<=\k'A')z/
15440 /(?<A>[ab])...(?<=\k'A')(?<A>)z/dupnames
15441 Failed: error 125 at offset 13: lookbehind assertion is not fixed length
15443 # Perl does not support \g+n
15445 /((\g+1X)?([ab]))+/
15452 /ab(?C1)c/auto_callout
15458 +8 ^ ^ End of pattern
15461 /'ab(?C1)c'/hex,auto_callout
15467 +8 ^ ^ End of pattern
15470 # Perl accepts these, but gives a warning. We can't warn, so give an error.
15473 Failed: error 150 at offset 4: invalid range in character class
15477 Failed: error 150 at offset 4: invalid range in character class
15481 Failed: error 150 at offset 5: invalid range in character class
15484 /(?<RA>abc)(?(R)xyz)/B
15485 ------------------------------------------------------------------
15496 ------------------------------------------------------------------
15498 /(?<R>abc)(?(R)xyz)/B
15499 ------------------------------------------------------------------
15510 ------------------------------------------------------------------
15513 Capturing subpattern count = 0
15514 May match empty string
15515 Subject length lower bound = 0
15518 Failed: error 125 at offset 2: lookbehind assertion is not fixed length
15522 /(?<!|!|!||||||(?<!)||(?<!)!|!||(?<!)!|!(?<!)!|!|!|!||||!!|<!)!|!||||!|/
15524 /{2,2{2,2/use_length
15526 /.>*?\g'0/use_length
15527 Failed: error 157 at offset 6: \g is not followed by a braced, angle-bracketed, or quoted name/number or by a plain number
15530 Failed: error 157 at offset 6: \g is not followed by a braced, angle-bracketed, or quoted name/number or by a plain number
15532 /{
\84Í
\84ÍÍ
\84Í{'{22{2{{2{'{22{
\12{22{2{'{22{2{{2{{222{{2{'{22{2{22{2{'{22{2{{2{'{22{2{22{2{'{'{22{2{22{2{'{22{2{{2{'{22{2{22{2{'{222{2Ä
\84Í
\84ÍÍ
\84Í{'{22{2{{2{'{22{
\12{11{2{'{22{2{{2{{'{22{2{{2{'{22{
\12{22{1{'{22{2{{2{{222{{2{'{22{2{22{2{'{/auto_callout
15535 \=get=i00000000000000000000000000000000
15536 ** Group name in 'get' is too long
15537 \=get=i2345678901234567890123456789012,get=i1245678901234567890123456789012
15538 ** Too many characters in named 'get' modifiers
15541 Failed: error 128 at offset 6: assertion expected after (?( or (?(?C)
15543 /(?(?(?(?(?(?))))))/
15544 Failed: error 128 at offset 2: assertion expected after (?( or (?(?C)
15546 /(?<=(?1))((?s))/anchored
15549 Failed: error 109 at offset 6: quantifier does not follow a repeatable item
15551 %(*:
\1e(:
\11(
\1fsvvvvvvvvvv:]*[ Z!*;[]*[^[]*!^[
\19+.+{{2,7}' _\\\\\\\\\\\\\)?.:.. *w////\\\Q\\\\\\\\\\\\\\\T\\\\\+/?/////'+\\\EEE?/////'+/*+/[^K]?]//(w)%never_backslash_c,alt_verbnames,auto_callout
15557 /(\x0e00\000000\xc)/replace=\P,substitute_extended
15559 Failed: error -57 at offset 2 in replacement: bad escape sequence in replacement string
15563 Failed: error -33: bad offset value
15565 /(?<=\G.)/g,replace=+
15569 ".+\QX\E+"B,no_auto_possess
15570 ------------------------------------------------------------------
15576 ------------------------------------------------------------------
15578 ".+\QX\E+"B,auto_callout,no_auto_possess
15579 ------------------------------------------------------------------
15588 ------------------------------------------------------------------
15590 # This one is here because Perl gives an 'unmatched )' error which goes away
15591 # if one of the \) sequences is removed - which is weird. PCRE finds it too
15592 # complicated to find a minimum matching length.
15594 "()X|((((((((()))))))((((())))))\2())((((((\2\2)))\2)(\22((((\2\2)2))\2)))(2\ZZZ)+:)Z^|91ZiZZnter(ZZ |91Z(ZZ ZZ(\r2Z( or#(\Z2(Z\Z(\2\2)2))\2Z)Z(\22Z((\Z2(Z\Z(\2\2)2))\2Z+:)Z|91Z(ZZ ZZ(\r2Z( or#(\Z2(Z\Z((Z*(\2(Z\':))\0)i|||||||||||||||loZ\2\2)2))\2Z)Z(\22Z((\Z2(Z\Z(\2\2)2))\2Z)))int \)\0nte!rnal errpr\2\\21r(2\ZZZ)+:)Z!|91Z(ZZ ZZ(\r2Z( or#(\Z2(Z\Z(\2\2)2))\2Z)Z(\22Z((\Z2(Z\Z(\2\2)2))\2Z)))int \)\0(2\ZZZ)+:)Z^|91ZiZZnter(ZZ |91Z(ZZ ZZ(\r2Z( or#(\Z2(Z\Z(\2\2)2))\2Z)Z(\22Z((\Z2(Z\Z(\2\2)2))\2Z)))int \)\0(2\ZZZ)+:)Z^)))int \)\0(2\ZZZ)+:)Z^|91ZiZZnter(ZZernZal ZZ(\r2Z( or#(\Z2(Z\Z(\2\2)2))\2Z)Z(\22Z((\Z2(Z\Z(\2\2)2))\2Z)))int \))\ZZ(\r2Z( or#(\Z2(Z\Z(\2\2)2))\2Z)Z(\22Z((\Z2(Z\Z(\2\2)))\2))))((((((\2\2))))))"I
15595 Capturing subpattern count = 108
15596 Max back reference = 22
15597 Contains explicit CR or LF match
15598 Subject length lower bound = 1
15600 # This checks that new code for handling groups that may match an empty string
15601 # works on a very large number of alternatives. This pattern used to provoke a
15602 # complaint that it was too complicated.
15604 /(?:\[A|B|C|D|E|F|G|H|I|J|]{200}Z)/expand
15606 # This one used to compile rubbish instead of a compile error, and then
15607 # behave unpredictably at match time.
15609 /.+(?(?C'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'))?!XXXX.=X/
15610 Failed: error 128 at offset 63: assertion expected after (?( or (?(?C)
15611 .+(?(?C'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'))?!XXXX.=X
15613 /[:[:alnum:]-[[a:lnum:]+/
15614 Failed: error 150 at offset 11: invalid range in character class
15616 /((?(?C'')\QX\E(?!((?(?C'')(?!X=X));=)r*X=X));=)/
15617 Failed: error 128 at offset 11: assertion expected after (?( or (?(?C)
15619 /((?(?C'')\Q\E(?!((?(?C'')(?!X=X));=)r*X=X));=)/
15622 abcd\=callout_error=255:2
15626 Failed: error -37: callout error code
15629 Failed: error 161 at offset 11: group number is too big
15632 Failed: error 115 at offset 10: reference to non-existent subpattern
15634 /Á\x00\x00\x00
\17\9a(\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\2*\x00k\d+\x00â
\80\8e\x00\x00\x00\x00\x00\2*\x00\x00\1*.){36}int^\x00\x00
\bÿÿ\x00
\9a(\1{50779}?)J\w2/I
15635 Capturing subpattern count = 2
15636 Max back reference = 2
15637 First code unit = \xc1
15638 Last code unit = '2'
15639 Subject length lower bound = 65535
15641 /(a)(b)\2\1\1\1\1/I
15642 Capturing subpattern count = 2
15643 Max back reference = 2
15644 First code unit = 'a'
15645 Last code unit = 'b'
15646 Subject length lower bound = 7
15648 /(?<a>a)(?<b>b)\g{b}\g{a}\g{a}\g{a}\g{a}(?<a>xx)(?<b>zz)/I,dupnames
15649 Capturing subpattern count = 4
15650 Max back reference = 4
15651 Named capturing subpatterns:
15657 First code unit = 'a'
15658 Last code unit = 'z'
15659 Subject length lower bound = 11
15662 \=ovector=7777777777
15663 ** Invalid value in 'ovector=7777777777'
15665 # This is here because Perl matches, even though a COMMIT is encountered
15666 # outside of the recursion.
15668 /(?1)(A(*COMMIT)|B)D/
15673 ------------------------------------------------------------------
15682 ------------------------------------------------------------------
15685 ------------------------------------------------------------------
15704 ------------------------------------------------------------------
15706 # This test differs from Perl for the first subject. Perl ends up with
15707 # $1 set to 'B'; PCRE2 has it unset (which I think is right).
15710 (?:A| (?:B|B(*ACCEPT)) (?<=(.)) D)
15722 # The first of these, when run by Perl, gives the mark 'aa', which is wrong.
15724 '(?>a(*:aa))b|ac' mark
15728 '(?:a(*:aa))b|ac' mark
15741 /(?<!\1((?U)1((?U))))(*F)/never_backslash_c,alt_bsux,anchored,extended
15744 Failed: error 157 at offset 2: \g is not followed by a braced, angle-bracketed, or quoted name/number or by a plain number
15747 abcdabcd\=callout_capture
15748 Callout 1: last capture = 0
15751 Callout 1: last capture = 1
15762 # Perl matches this one, but PCRE does not because (*ACCEPT) clears out any
15763 # pending backtracks in the recursion.
15765 /^ (?(DEFINE) (..(*ACCEPT)|...) ) (?1)$/x
15770 # Perl gives no match for this one
15772 /(a(*MARK:m)(*ACCEPT)){0}(?1)/mark
15785 Failed: error -34: bad option value
15788 xyzabc\=endanchored
15791 xyzabcdef\=endanchored
15794 xyzabc\=ps,endanchored
15795 Failed: error -34: bad option value
15797 /abc(*ACCEPT)d/endanchored
15804 /abc|bcd/endanchored
15811 /a(*ACCEPT)x|aa/endanchored
15815 # Check auto-anchoring when there is a group that is never obeyed at
15816 # the start of a branch.
15818 /(?(DEFINE)(a))^bc/I
15819 Capturing subpattern count = 1
15820 Compile options: <none>
15821 Overall options: anchored
15822 First code unit = 'b'
15823 Subject length lower bound = 2
15826 Capturing subpattern count = 1
15827 Compile options: dotall
15828 Overall options: anchored dotall
15829 Last code unit = 'c'
15830 Subject length lower bound = 2
15832 # This should be anchored, as the condition is always false and there is
15833 # no alternative branch.
15835 /(?(VERSION>=999)yes)^bc/I
15836 Capturing subpattern count = 0
15837 Compile options: <none>
15838 Overall options: anchored
15839 Subject length lower bound = 2
15841 # This should not be anchored.
15843 /(?(VERSION>=999)yes|no)^bc/I
15844 Capturing subpattern count = 0
15845 Last code unit = 'c'
15846 Subject length lower bound = 4
15848 /(*LIMIT_HEAP=0)xxx/I
15849 Capturing subpattern count = 0
15851 First code unit = 'x'
15852 Last code unit = 'x'
15853 Subject length lower bound = 3
15855 /\d{0,3}(*:abc)(?C1)xxx/callout_info
15858 # ----------------------------------------------------------------------
15860 # These are a whole pile of tests that touch lines of code that are not
15861 # used by any other tests (at least when these were created).
15863 /^a+?x/i,no_start_optimize,no_auto_possess
15868 /^[^a]{3,}?x/i,no_start_optimize,no_auto_possess
15875 /^X\S/no_start_optimize,no_auto_possess
15880 /^X\W/no_start_optimize,no_auto_possess
15885 /^X\H/no_start_optimize,no_auto_possess
15890 /^X\h/no_start_optimize,no_auto_possess
15895 /^X\V/no_start_optimize,no_auto_possess
15900 /^X\v/no_start_optimize,no_auto_possess
15905 /^X\h/no_start_optimize,no_auto_possess
15910 /^X\V/no_start_optimize,no_auto_possess
15915 /^X\v/no_start_optimize,no_auto_possess
15920 /^X.+?/s,no_start_optimize,no_auto_possess
15925 /^X\R+?/no_start_optimize,no_auto_possess
15930 /^X\H+?/no_start_optimize,no_auto_possess
15935 /^X\h+?/no_start_optimize,no_auto_possess
15940 /^X\V+?/no_start_optimize,no_auto_possess
15947 /^X\D+?/no_start_optimize,no_auto_possess
15954 /^X\S+?/no_start_optimize,no_auto_possess
15961 /^X\W+?/no_start_optimize,no_auto_possess
15968 /^X.+?Z/no_start_optimize,no_auto_possess
15973 /(*CRLF)^X.+?Z/no_start_optimize,no_auto_possess
15976 Partial match: XY\x0d
15978 /^X\R+?Z/no_start_optimize,no_auto_possess
15991 /(*BSR_ANYCRLF)^X\R+?Z/no_start_optimize,no_auto_possess
16004 /^X\H+?Z/no_start_optimize,no_auto_possess
16011 /^X\h+?Z/no_start_optimize,no_auto_possess
16018 /^X\V+?Z/no_start_optimize,no_auto_possess
16025 /^X\v+?Z/no_start_optimize,no_auto_possess
16032 /^X\D+?Z/no_start_optimize,no_auto_possess
16039 /^X\d+?Z/no_start_optimize,no_auto_possess
16046 /^X\S+?Z/no_start_optimize,no_auto_possess
16053 /^X\s+?Z/no_start_optimize,no_auto_possess
16060 /^X\W+?Z/no_start_optimize,no_auto_possess
16067 /^X\w+?Z/no_start_optimize,no_auto_possess
16074 /^X.{1,3}Z/s,no_start_optimize,no_auto_possess
16079 /^X\h+Z/no_start_optimize,no_auto_possess
16086 /^X\V+Z/no_start_optimize,no_auto_possess
16093 /^(X(*THEN)Y|AB){0}(?1)/
16101 ABC\=callout_error=1,no_jit
16104 /^(?!A(?C1)B)C/no_start_optimize
16105 ABC\=callout_error=1
16108 Failed: error -37: callout error code
16111 ABC\=callout_error=1
16114 Failed: error -37: callout error code
16116 # ----------------------------------------------------------------------
16119 ------------------------------------------------------------------
16124 ------------------------------------------------------------------
16125 Capturing subpattern count = 0
16126 Options: extended_more
16127 Starting code units: a b c
16128 Subject length lower bound = 1
16131 ------------------------------------------------------------------
16136 ------------------------------------------------------------------
16137 Capturing subpattern count = 0
16138 Options: extended extended_more
16139 Starting code units: a b c
16140 Subject length lower bound = 1
16142 /[a b c]/B,extended_more
16143 ------------------------------------------------------------------
16148 ------------------------------------------------------------------
16150 /[ a b c ]/B,extended_more
16151 ------------------------------------------------------------------
16156 ------------------------------------------------------------------
16158 /[a b](?xx: [ 12 ] (?-xx:[ 34 ]) )y z/B
16159 ------------------------------------------------------------------
16171 ------------------------------------------------------------------
16173 # Unsetting /x also unsets /xx
16175 /[a b](?xx: [ 12 ] (?-x:[ 34 ]) )y z/B
16176 ------------------------------------------------------------------
16188 ------------------------------------------------------------------
16190 /(a)(?-n:(b))(c)/nB
16191 ------------------------------------------------------------------
16206 ------------------------------------------------------------------
16208 # ----------------------------------------------------------------------
16209 # These test the dangerous PCRE2_EXTRA_BAD_ESCAPE_IS_LITERAL option.
16211 /\j\x{z}\o{82}\L\uabcd\u\U\g{\g/B,\bad_escape_is_literal
16212 ** Unrecognized modifier '\' in '\bad_escape_is_literal'
16214 /\N{\c/IB,bad_escape_is_literal
16215 ------------------------------------------------------------------
16220 ------------------------------------------------------------------
16221 Capturing subpattern count = 0
16222 Extra options: bad_escape_is_literal
16223 First code unit = 'N'
16224 Last code unit = 'c'
16225 Subject length lower bound = 3
16227 /[\j\x{z}\o\gA-\Nb-\g]/B,bad_escape_is_literal
16228 ------------------------------------------------------------------
16233 ------------------------------------------------------------------
16235 /[Q-\N]/B,bad_escape_is_literal
16236 Failed: error 108 at offset 4: range out of order in character class
16238 # ----------------------------------------------------------------------
16244 /a\b(c/literal,caseless
16250 /a\b(c/literal,firstline
16257 /a\b?c/literal,use_offset_limit
16258 XXXXa\\b?c\=offset_limit=4
16261 XXXXa\\b?c\=offset_limit=3
16264 /a\b(c/literal,anchored,endanchored
16276 Failed: error 192 at offset 0: invalid option bits with PCRE2_LITERAL
16278 /a\b(c/literal,auto_callout,no_start_optimize
16290 +5 ^ ^ End of pattern
16293 /a\b(c/literal,auto_callout
16301 +5 ^ ^ End of pattern
16308 /cat|dog/I,match_word
16309 Capturing subpattern count = 0
16311 Extra options: match_word
16312 Starting code units: c d
16313 Subject length lower bound = 3
16324 /(cat)|dog/I,match_line,literal
16325 Capturing subpattern count = 0
16326 Compile options: literal
16327 Overall options: anchored literal
16328 Extra options: match_line
16329 First code unit = '('
16330 Subject length lower bound = 9
16343 /a whole line/match_line,multiline
16344 Rhubarb \na whole line\n custard
16350 # Perl gets this wrong, failing to capture 'b' in group 1.
16357 # And again here, for the "babc" subject string.
16376 Failed: error 150 at offset 10: invalid range in character class
16378 /[[:digit:]-[:print:]]/
16379 Failed: error 150 at offset 10: invalid range in character class
16382 Failed: error 150 at offset 3: invalid range in character class
16385 Failed: error 150 at offset 3: invalid range in character class
16388 Failed: error 150 at offset 3: invalid range in character class
16390 # Perl gets the second of these wrong, giving no match.
16393 Capturing subpattern count = 1
16394 Max back reference = 1
16396 Last code unit = 'b'
16397 Subject length lower bound = 1
16406 Capturing subpattern count = 1
16407 Max back reference = 1
16408 First code unit = 'a'
16409 Last code unit = 'b'
16410 Subject length lower bound = 1
16418 # JIT does not support callout_extra
16420 /(*NO_JIT)(a+)b/auto_callout,no_start_optimize,no_auto_possess
16434 No other matching paths
16442 No other matching paths
16448 No other matching paths
16455 /(*NO_JIT)a+(?C'XXX')b/no_start_optimize,no_auto_possess
16459 Callout (15): 'XXX'
16463 Callout (15): 'XXX'
16467 No other matching paths
16469 Callout (15): 'XXX'
16482 /\x{0a}abc/firstline,newline=crlf
16492 # These tests are matched in test 1 as they are Perl compatible. Here we are
16493 # looking at what does and does not get auto-possessified.
16495 /(?(DEFINE)(?<optional_a>a?))^(?&optional_a)a$/B
16496 ------------------------------------------------------------------
16510 ------------------------------------------------------------------
16512 /(?(DEFINE)(?<optional_a>a?)X)^(?&optional_a)a$/B
16513 ------------------------------------------------------------------
16528 ------------------------------------------------------------------
16531 ------------------------------------------------------------------
16542 ------------------------------------------------------------------
16545 ------------------------------------------------------------------
16556 ------------------------------------------------------------------
16559 ------------------------------------------------------------------
16570 ------------------------------------------------------------------
16573 ------------------------------------------------------------------
16582 ------------------------------------------------------------------
16585 ------------------------------------------------------------------
16597 ------------------------------------------------------------------
16599 /(?<=(?=.){4,5}x)/B
16600 ------------------------------------------------------------------
16611 ------------------------------------------------------------------
16613 # Perl behaves differently with these when optimization is turned off
16615 /a(*PRUNE:X)bc|qq/mark,no_start_optimize
16620 /a(*THEN:X)bc|qq/mark,no_start_optimize
16626 Failed: error 194 at offset 4: invalid hyphen in option setting
16629 Failed: error 194 at offset 3: invalid hyphen in option setting
16632 Failed: error 194 at offset 5: invalid hyphen in option setting
16635 Capturing subpattern count = 0
16636 Last code unit = 'b'
16637 Subject length lower bound = 1
16642 Capturing subpattern count = 0
16643 First code unit = 'b'
16644 Subject length lower bound = 1
16649 Capturing subpattern count = 0
16650 Compile options: <none>
16651 Overall options: anchored
16652 First code unit = 'b'
16653 Subject length lower bound = 1
16661 Capturing subpattern count = 1
16662 Max back reference = 1
16663 May match empty string
16664 Compile options: <none>
16665 Overall options: anchored
16666 Subject length lower bound = 0
16669 Capturing subpattern count = 1
16670 Max back reference = 1
16671 Last code unit = 'b'
16672 Subject length lower bound = 1
16674 /(?(1)^())+b/I,aftertext
16675 Capturing subpattern count = 1
16676 Max back reference = 1
16677 Last code unit = 'b'
16678 Subject length lower bound = 1
16683 /(?(1)^()|^)+b/I,aftertext
16684 Capturing subpattern count = 1
16685 Max back reference = 1
16686 Compile options: <none>
16687 Overall options: anchored
16688 First code unit = 'b'
16689 Subject length lower bound = 1
16697 /(?(1)^()|^)*b/I,aftertext
16698 Capturing subpattern count = 1
16699 Max back reference = 1
16700 First code unit = 'b'
16701 Subject length lower bound = 1
16712 /(?(1)^())+b/I,aftertext
16713 Capturing subpattern count = 1
16714 Max back reference = 1
16715 Last code unit = 'b'
16716 Subject length lower bound = 1
16721 /(?(1)^a()|^a)+b/I,aftertext
16722 Capturing subpattern count = 1
16723 Max back reference = 1
16724 Compile options: <none>
16725 Overall options: anchored
16726 First code unit = 'a'
16727 Last code unit = 'b'
16728 Subject length lower bound = 2
16736 /(?(1)^|^(a))+b/I,aftertext
16737 Capturing subpattern count = 1
16738 Max back reference = 1
16739 Compile options: <none>
16740 Overall options: anchored
16741 Last code unit = 'b'
16742 Subject length lower bound = 1
16751 /(?(1)^a()|^a)*b/I,aftertext
16752 Capturing subpattern count = 1
16753 Max back reference = 1
16754 Last code unit = 'b'
16755 Subject length lower bound = 1
16766 # End of testinput2
16767 Error -70: PCRE2_ERROR_BADDATA (unknown error number)
16768 Error -62: bad serialized data
16769 Error -2: partial match
16771 Error 0: PCRE2_ERROR_BADDATA (unknown error number)
16772 Error 100: no error
16773 Error 101: \ at end of pattern
16774 Error 191: PCRE2_EXTRA_ALLOW_SURROGATE_ESCAPES is not allowed in UTF-16 mode
16775 Error 200: PCRE2_ERROR_BADDATA (unknown error number)