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

Diff of /code/trunk/testdata/testoutput2

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 167 by ph10, Wed May 9 15:53:54 2007 UTC revision 598 by ph10, Sat May 7 15:37:31 2011 UTC
# Line 1  Line 1 
1    /-- This set of tests is not Perl-compatible. It checks on special features
2        of PCRE's API, error diagnostics, and the compiled code of some patterns.
3        It also checks the non-Perl syntax the PCRE supports (Python, .NET,
4        Oniguruma). Finally, there are some tests where PCRE and Perl differ,
5        either because PCRE can't be compatible, or there is a possible Perl
6        bug. --/
7    
8    /-- Originally, the Perl >= 5.10 things were in here too, but now I have
9        separated many (most?) of them out into test 11. However, there may still
10        be some that were overlooked. --/
11    
12  /(a)b|/I  /(a)b|/I
13  Capturing subpattern count = 1  Capturing subpattern count = 1
14  No options  No options
15  No first char  No first char
16  No need char  No need char
 Capturing subpattern count = 1  
  0:  
 No options  
  0:  
 No first char  
  0:  
 No need char  
  0:  
17    
18  /abc/I  /abc/I
19  Capturing subpattern count = 0  Capturing subpattern count = 0
20  No options  No options
21  First char = 'a'  First char = 'a'
22  Need char = 'c'  Need char = 'c'
 Capturing subpattern count = 0  
 No match  
 No options  
 No match  
 First char = 'a'  
 No match  
 Need char = 'c'  
 No match  
23      abc      abc
24   0: abc   0: abc
  0: abc  
  0: abc  
25      defabc      defabc
26   0: abc   0: abc
  0: abc  
  0: abc  
27      \Aabc      \Aabc
28   0: abc   0: abc
  0: abc  
  0: abc  
29      *** Failers      *** Failers
30  No match  No match
 No match  
 No match  
31      \Adefabc      \Adefabc
32  No match  No match
 No match  
 No match  
33      ABC      ABC
34  No match  No match
 No match  
 No match  
35    
36  /^abc/I  /^abc/I
37  Capturing subpattern count = 0  Capturing subpattern count = 0
38  Options: anchored  Options: anchored
39  No first char  No first char
40  No need char  No need char
 Capturing subpattern count = 0  
 No match  
 Options: anchored  
 No match  
 No first char  
 No match  
 No need char  
 No match  
41      abc      abc
42   0: abc   0: abc
  0: abc  
 No match  
43      \Aabc      \Aabc
44   0: abc   0: abc
  0: abc  
 No match  
45      *** Failers      *** Failers
46  No match  No match
 No match  
 No match  
47      defabc      defabc
48  No match  No match
 No match  
 No match  
49      \Adefabc      \Adefabc
50  No match  No match
 No match  
 No match  
51    
52  /a+bc/I  /a+bc/I
53  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
 No options  
 First char = 'a'  
 Need char = 'c'  
 Capturing subpattern count = 0  
 No match  
 Partial matching not supported  
 No match  
54  No options  No options
 No match  
55  First char = 'a'  First char = 'a'
 No match  
56  Need char = 'c'  Need char = 'c'
 No match  
57    
58  /a*bc/I  /a*bc/I
59  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
60  No options  No options
61  No first char  No first char
62  Need char = 'c'  Need char = 'c'
 Capturing subpattern count = 0  
 No match  
 Partial matching not supported  
 No match  
 No options  
 No match  
 No first char  
 No match  
 Need char = 'c'  
 No match  
63    
64  /a{3}bc/I  /a{3}bc/I
65  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
 No options  
 First char = 'a'  
 Need char = 'c'  
 Capturing subpattern count = 0  
 No match  
 Partial matching not supported  
 No match  
66  No options  No options
 No match  
67  First char = 'a'  First char = 'a'
 No match  
68  Need char = 'c'  Need char = 'c'
 No match  
69    
70  /(abc|a+z)/I  /(abc|a+z)/I
71  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
 No options  
 First char = 'a'  
 No need char  
 Capturing subpattern count = 1  
 No match  
 Partial matching not supported  
 No match  
72  No options  No options
 No match  
73  First char = 'a'  First char = 'a'
 No match  
74  No need char  No need char
 No match  
75    
76  /^abc$/I  /^abc$/I
77  Capturing subpattern count = 0  Capturing subpattern count = 0
78  Options: anchored  Options: anchored
79  No first char  No first char
80  No need char  No need char
 Capturing subpattern count = 0  
 No match  
 Options: anchored  
 No match  
 No first char  
 No match  
 No need char  
 No match  
81      abc      abc
82   0: abc   0: abc
  0: abc  
 No match  
83      *** Failers      *** Failers
84  No match  No match
 No match  
 No match  
85      def\nabc      def\nabc
86  No match  No match
 No match  
 No match  
87    
88  /ab\hdef/X  /ab\idef/X
89  Failed: unrecognized character follows \ at offset 3  Failed: unrecognized character follows \ at offset 3
90    
91  /(?X)ab\hdef/X  /(?X)ab\idef/X
92  Failed: unrecognized character follows \ at offset 7  Failed: unrecognized character follows \ at offset 7
93    
94  /x{5,4}/  /x{5,4}/
# Line 196  Failed: missing terminating ] for charac Line 103  Failed: missing terminating ] for charac
103  /(?X)[\B]/  /(?X)[\B]/
104  Failed: invalid escape sequence in character class at offset 6  Failed: invalid escape sequence in character class at offset 6
105    
106    /(?X)[\R]/
107    Failed: invalid escape sequence in character class at offset 6
108    
109    /(?X)[\X]/
110    Failed: invalid escape sequence in character class at offset 6
111    
112    /[\B]/BZ
113    ------------------------------------------------------------------
114            Bra
115            B
116            Ket
117            End
118    ------------------------------------------------------------------
119    
120    /[\R]/BZ
121    ------------------------------------------------------------------
122            Bra
123            R
124            Ket
125            End
126    ------------------------------------------------------------------
127    
128    /[\X]/BZ
129    ------------------------------------------------------------------
130            Bra
131            X
132            Ket
133            End
134    ------------------------------------------------------------------
135    
136  /[z-a]/  /[z-a]/
137  Failed: range out of order in character class at offset 3  Failed: range out of order in character class at offset 3
138    
# Line 209  Failed: missing ) at offset 4 Line 146  Failed: missing ) at offset 4
146  Failed: missing ) after comment at offset 7  Failed: missing ) after comment at offset 7
147    
148  /(?z)abc/  /(?z)abc/
149  Failed: unrecognized character after (? at offset 2  Failed: unrecognized character after (? or (?- at offset 2
150    
151  /.*b/I  /.*b/I
152  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
 No options  
 First char at start or follows newline  
 Need char = 'b'  
 Capturing subpattern count = 0  
  0: Capturing sub  
 Partial matching not supported  
 No match  
153  No options  No options
 No match  
154  First char at start or follows newline  First char at start or follows newline
 No match  
155  Need char = 'b'  Need char = 'b'
  0: Need char = 'b  
156    
157  /.*?b/I  /.*?b/I
158  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
 No options  
 First char at start or follows newline  
 Need char = 'b'  
 Capturing subpattern count = 0  
  0: Capturing sub  
 Partial matching not supported  
 No match  
159  No options  No options
 No match  
160  First char at start or follows newline  First char at start or follows newline
 No match  
161  Need char = 'b'  Need char = 'b'
  0: Need char = 'b  
162    
163  /cat|dog|elephant/I  /cat|dog|elephant/I
164  Capturing subpattern count = 0  Capturing subpattern count = 0
165  No options  No options
166  No first char  No first char
167  No need char  No need char
 Capturing subpattern count = 0  
 No match  
 No options  
 No match  
 No first char  
 No match  
 No need char  
 No match  
168      this sentence eventually mentions a cat      this sentence eventually mentions a cat
169   0: cat   0: cat
  0: cat  
  0: cat  
170      this sentences rambles on and on for a while and then reaches elephant      this sentences rambles on and on for a while and then reaches elephant
171   0: elephant   0: elephant
  0: elephant  
  0: elephant  
172    
173  /cat|dog|elephant/IS  /cat|dog|elephant/IS
174  Capturing subpattern count = 0  Capturing subpattern count = 0
175  No options  No options
176  No first char  No first char
177  No need char  No need char
178    Subject length lower bound = 3
179  Starting byte set: c d e  Starting byte set: c d e
 Capturing subpattern count = 0  
 No match  
 No options  
 No match  
 No first char  
 No match  
 No need char  
 No match  
 Starting byte set: c d e  
 No match  
180      this sentence eventually mentions a cat      this sentence eventually mentions a cat
181   0: cat   0: cat
  0: cat  
  0: cat  
182      this sentences rambles on and on for a while and then reaches elephant      this sentences rambles on and on for a while and then reaches elephant
183   0: elephant   0: elephant
  0: elephant  
  0: elephant  
184    
185  /cat|dog|elephant/IiS  /cat|dog|elephant/IiS
186  Capturing subpattern count = 0  Capturing subpattern count = 0
187  Options: caseless  Options: caseless
188  No first char  No first char
189  No need char  No need char
190    Subject length lower bound = 3
191  Starting byte set: C D E c d e  Starting byte set: C D E c d e
 Capturing subpattern count = 0  
 No match  
 Options: caseless  
 No match  
 No first char  
 No match  
 No need char  
 No match  
 Starting byte set: C D E c d e  
 No match  
192      this sentence eventually mentions a CAT cat      this sentence eventually mentions a CAT cat
193   0: CAT   0: CAT
  0: CAT  
  0: CAT  
194      this sentences rambles on and on for a while to elephant ElePhant      this sentences rambles on and on for a while to elephant ElePhant
195   0: elephant   0: elephant
  0: elephant  
  0: elephant  
196    
197  /a|[bcd]/IS  /a|[bcd]/IS
198  Capturing subpattern count = 0  Capturing subpattern count = 0
199  No options  No options
200  No first char  No first char
201  No need char  No need char
202    Subject length lower bound = 1
203  Starting byte set: a b c d  Starting byte set: a b c d
 Capturing subpattern count = 0  
  0: a  
 No options  
 No match  
 No first char  
  0: c  
 No need char  
  0: d  
 Starting byte set: a b c d  
  0: a  
204    
205  /(a|[^\dZ])/IS  /(a|[^\dZ])/IS
206  Capturing subpattern count = 1  Capturing subpattern count = 1
207  No options  No options
208  No first char  No first char
209  No need char  No need char
210    Subject length lower bound = 1
211  Starting byte set: \x00 \x01 \x02 \x03 \x04 \x05 \x06 \x07 \x08 \x09 \x0a  Starting byte set: \x00 \x01 \x02 \x03 \x04 \x05 \x06 \x07 \x08 \x09 \x0a
212    \x0b \x0c \x0d \x0e \x0f \x10 \x11 \x12 \x13 \x14 \x15 \x16 \x17 \x18 \x19    \x0b \x0c \x0d \x0e \x0f \x10 \x11 \x12 \x13 \x14 \x15 \x16 \x17 \x18 \x19
213    \x1a \x1b \x1c \x1d \x1e \x1f \x20 ! " # $ % & ' ( ) * + , - . / : ; < = >    \x1a \x1b \x1c \x1d \x1e \x1f \x20 ! " # $ % & ' ( ) * + , - . / : ; < = >
# Line 353  Starting byte set: \x00 \x01 \x02 \x03 \ Line 222  Starting byte set: \x00 \x01 \x02 \x03 \
222    \xde \xdf \xe0 \xe1 \xe2 \xe3 \xe4 \xe5 \xe6 \xe7 \xe8 \xe9 \xea \xeb \xec    \xde \xdf \xe0 \xe1 \xe2 \xe3 \xe4 \xe5 \xe6 \xe7 \xe8 \xe9 \xea \xeb \xec
223    \xed \xee \xef \xf0 \xf1 \xf2 \xf3 \xf4 \xf5 \xf6 \xf7 \xf8 \xf9 \xfa \xfb    \xed \xee \xef \xf0 \xf1 \xf2 \xf3 \xf4 \xf5 \xf6 \xf7 \xf8 \xf9 \xfa \xfb
224    \xfc \xfd \xfe \xff    \xfc \xfd \xfe \xff
 Capturing subpattern count = 1  
  0: C  
  1: C  
 No options  
  0: N  
  1: N  
 No first char  
  0: N  
  1: N  
 No need char  
  0: N  
  1: N  
 Starting byte set: \x00 \x01 \x02 \x03 \x04 \x05 \x06 \x07 \x08 \x09 \x0a  
  0: S  
  1: S  
   \x0b \x0c \x0d \x0e \x0f \x10 \x11 \x12 \x13 \x14 \x15 \x16 \x17 \x18 \x19  
  0: \x0b  
  1: \x0b  
   \x1a \x1b \x1c \x1d \x1e \x1f \x20 ! " # $ % & ' ( ) * + , - . / : ; < = >  
  0: \x1a  
  1: \x1a  
   ? @ 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  
  0: ?  
  1: ?  
   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  
  0: e  
  1: e  
   \x84 \x85 \x86 \x87 \x88 \x89 \x8a \x8b \x8c \x8d \x8e \x8f \x90 \x91 \x92  
  0: \x84  
  1: \x84  
   \x93 \x94 \x95 \x96 \x97 \x98 \x99 \x9a \x9b \x9c \x9d \x9e \x9f \xa0 \xa1  
  0: \x93  
  1: \x93  
   \xa2 \xa3 \xa4 \xa5 \xa6 \xa7 \xa8 \xa9 \xaa \xab \xac \xad \xae \xaf \xb0  
  0: \xa2  
  1: \xa2  
   \xb1 \xb2 \xb3 \xb4 \xb5 \xb6 \xb7 \xb8 \xb9 \xba \xbb \xbc \xbd \xbe \xbf  
  0: \xb1  
  1: \xb1  
   \xc0 \xc1 \xc2 \xc3 \xc4 \xc5 \xc6 \xc7 \xc8 \xc9 \xca \xcb \xcc \xcd \xce  
  0: \xc0  
  1: \xc0  
   \xcf \xd0 \xd1 \xd2 \xd3 \xd4 \xd5 \xd6 \xd7 \xd8 \xd9 \xda \xdb \xdc \xdd  
  0: \xcf  
  1: \xcf  
   \xde \xdf \xe0 \xe1 \xe2 \xe3 \xe4 \xe5 \xe6 \xe7 \xe8 \xe9 \xea \xeb \xec  
  0: \xde  
  1: \xde  
   \xed \xee \xef \xf0 \xf1 \xf2 \xf3 \xf4 \xf5 \xf6 \xf7 \xf8 \xf9 \xfa \xfb  
  0: \xed  
  1: \xed  
   \xfc \xfd \xfe \xff  
  0: \xfc  
  1: \xfc  
225    
226  /(a|b)*[\s]/IS  /(a|b)*[\s]/IS
227  Capturing subpattern count = 1  Capturing subpattern count = 1
228  No options  No options
229  No first char  No first char
230  No need char  No need char
231    Subject length lower bound = 1
232  Starting byte set: \x09 \x0a \x0c \x0d \x20 a b  Starting byte set: \x09 \x0a \x0c \x0d \x20 a b
 Capturing subpattern count = 1  
  0:  
 No options  
  0:  
 No first char  
  0:  
 No need char  
  0:  
 Starting byte set: \x09 \x0a \x0c \x0d \x20 a b  
  0:  
233    
234  /(ab\2)/  /(ab\2)/
235  Failed: reference to non-existent subpattern at offset 6  Failed: reference to non-existent subpattern at offset 6
# Line 437  Max back reference = 2 Line 243  Max back reference = 2
243  No options  No options
244  First char = 'a'  First char = 'a'
245  Need char = 'c'  Need char = 'c'
 Capturing subpattern count = 3  
 No match  
 Max back reference = 2  
 No match  
 No options  
 No match  
 First char = 'a'  
 No match  
 Need char = 'c'  
 No match  
246      abcb      abcb
247   0: abcb   0: abcb
248   1: a   1: a
249   2: b   2: b
250   3: c   3: c
  0: abcb  
  0: abcb  
  1: a  
  2: b  
  3: c  
  1: a  
 No match  
  2: b  
 No match  
  3: c  
 No match  
251      \O0abcb      \O0abcb
252  Matched, but too many substrings  Matched, but too many substrings
 Matched, but too many substrings  
 No match  
253      \O3abcb      \O3abcb
254  Matched, but too many substrings  Matched, but too many substrings
255   0: abcb   0: abcb
 Matched, but too many substrings  
 No match  
  0: abcb  
  0: abcb  
  1: a  
  2: b  
  3: c  
256      \O6abcb      \O6abcb
257  Matched, but too many substrings  Matched, but too many substrings
258   0: abcb   0: abcb
259   1: a   1: a
 Matched, but too many substrings  
 No match  
  0: abcb  
  0: abcb  
  1: a  
  2: b  
  3: c  
  1: a  
 No match  
260      \O9abcb      \O9abcb
261  Matched, but too many substrings  Matched, but too many substrings
262   0: abcb   0: abcb
263   1: a   1: a
264   2: b   2: b
265  Matched, but too many substrings      \O12abcb
 No match  
  0: abcb  
266   0: abcb   0: abcb
267   1: a   1: a
268   2: b   2: b
269   3: c   3: c
  1: a  
 No match  
  2: b  
 No match  
     \O12abcb  
  0: abcb  
  1: a  
  2: b  
  3: c  
  0: abcb  
  0: abcb  
  1: a  
  2: b  
  3: c  
  1: a  
 No match  
  2: b  
 No match  
  3: c  
 No match  
270    
271  /(a)bc|(a)(b)\2/I  /(a)bc|(a)(b)\2/I
272  Capturing subpattern count = 3  Capturing subpattern count = 3
# Line 529  Max back reference = 2 Line 274  Max back reference = 2
274  No options  No options
275  First char = 'a'  First char = 'a'
276  No need char  No need char
 Capturing subpattern count = 3  
 No match  
 Max back reference = 2  
 No match  
 No options  
 No match  
 First char = 'a'  
 No match  
 No need char  
 No match  
277      abc      abc
278   0: abc   0: abc
279   1: a   1: a
  0: abc  
  0: abc  
  1: a  
  1: a  
 No match  
280      \O0abc      \O0abc
281  Matched, but too many substrings  Matched, but too many substrings
 Matched, but too many substrings  
 No match  
282      \O3abc      \O3abc
283  Matched, but too many substrings  Matched, but too many substrings
284   0: abc   0: abc
 Matched, but too many substrings  
 No match  
  0: abc  
  0: abc  
  1: a  
285      \O6abc      \O6abc
286   0: abc   0: abc
287   1: a   1: a
  0: abc  
  0: abc  
  1: a  
  1: a  
 No match  
288      aba      aba
289   0: aba   0: aba
290   1: <unset>   1: <unset>
291   2: a   2: a
292   3: b   3: b
  0: aba  
  0: aba  
  1: <unset>  
  2: a  
  3: b  
  1: <unset>  
 No match  
  2: a  
 No match  
  3: b  
 No match  
293      \O0aba      \O0aba
294  Matched, but too many substrings  Matched, but too many substrings
 Matched, but too many substrings  
 No match  
295      \O3aba      \O3aba
296  Matched, but too many substrings  Matched, but too many substrings
297   0: aba   0: aba
 Matched, but too many substrings  
 No match  
  0: aba  
  0: aba  
  1: <unset>  
  2: a  
  3: b  
298      \O6aba      \O6aba
299  Matched, but too many substrings  Matched, but too many substrings
300   0: aba   0: aba
301   1: <unset>   1: <unset>
 Matched, but too many substrings  
 No match  
  0: aba  
  0: aba  
  1: <unset>  
  2: a  
  3: b  
  1: <unset>  
 No match  
302      \O9aba      \O9aba
303  Matched, but too many substrings  Matched, but too many substrings
304   0: aba   0: aba
305   1: <unset>   1: <unset>
306   2: a   2: a
 Matched, but too many substrings  
 No match  
  0: aba  
  0: aba  
  1: <unset>  
  2: a  
  3: b  
  1: <unset>  
 No match  
  2: a  
 No match  
307      \O12aba      \O12aba
308   0: aba   0: aba
309   1: <unset>   1: <unset>
310   2: a   2: a
311   3: b   3: b
  0: aba  
  0: aba  
  1: <unset>  
  2: a  
  3: b  
  1: <unset>  
 No match  
  2: a  
 No match  
  3: b  
 No match  
312    
313  /abc$/IE  /abc$/IE
314  Capturing subpattern count = 0  Capturing subpattern count = 0
315  Options: dollar_endonly  Options: dollar_endonly
316  First char = 'a'  First char = 'a'
317  Need char = 'c'  Need char = 'c'
 Capturing subpattern count = 0  
 No match  
 Options: dollar_endonly  
 No match  
 First char = 'a'  
 No match  
 Need char = 'c'  
 No match  
318      abc      abc
319   0: abc   0: abc
  0: abc  
  0: abc  
320      *** Failers      *** Failers
321  No match  No match
 No match  
 No match  
322      abc\n      abc\n
323  No match  No match
 No match  
 No match  
324      abc\ndef      abc\ndef
325  No match  No match
 No match  
 No match  
326    
327  /(a)(b)(c)(d)(e)\6/  /(a)(b)(c)(d)(e)\6/
328  Failed: reference to non-existent subpattern at offset 17  Failed: reference to non-existent subpattern at offset 17
# Line 681  Capturing subpattern count = 0 Line 332  Capturing subpattern count = 0
332  No options  No options
333  First char = 't'  First char = 't'
334  Need char = 'x'  Need char = 'x'
 Capturing subpattern count = 0  
 No match  
 No options  
 No match  
 First char = 't'  
 No match  
 Need char = 'x'  
 No match  
335      the quick brown fox      the quick brown fox
336   0: the quick brown fox   0: the quick brown fox
  0: the quick brown fox  
  0: the quick brown fox  
337      this is a line with the quick brown fox      this is a line with the quick brown fox
338   0: the quick brown fox   0: the quick brown fox
  0: the quick brown fox  
  0: the quick brown fox  
339    
340  /the quick brown fox/IA  /the quick brown fox/IA
341  Capturing subpattern count = 0  Capturing subpattern count = 0
342  Options: anchored  Options: anchored
343  No first char  No first char
344  No need char  No need char
 Capturing subpattern count = 0  
 No match  
 Options: anchored  
 No match  
 No first char  
 No match  
 No need char  
 No match  
345      the quick brown fox      the quick brown fox
346   0: the quick brown fox   0: the quick brown fox
  0: the quick brown fox  
 No match  
347      *** Failers      *** Failers
348  No match  No match
 No match  
 No match  
349      this is a line with the quick brown fox      this is a line with the quick brown fox
350  No match  No match
 No match  
 No match  
351    
352  /ab(?z)cd/  /ab(?z)cd/
353  Failed: unrecognized character after (? at offset 4  Failed: unrecognized character after (? or (?- at offset 4
354    
355  /^abc|def/I  /^abc|def/I
356  Capturing subpattern count = 0  Capturing subpattern count = 0
357  No options  No options
358  No first char  No first char
359  No need char  No need char
 Capturing subpattern count = 0  
 No match  
 No options  
 No match  
 No first char  
 No match  
 No need char  
 No match  
360      abcdef      abcdef
361   0: abc   0: abc
  0: abc  
 No match  
362      abcdef\B      abcdef\B
363   0: def   0: def
  0: def  
  0: def  
364    
365  /.*((abc)$|(def))/I  /.*((abc)$|(def))/I
366  Capturing subpattern count = 3  Capturing subpattern count = 3
 Partial matching not supported  
 No options  
 First char at start or follows newline  
 No need char  
 Capturing subpattern count = 3  
 No match  
 Partial matching not supported  
 No match  
367  No options  No options
 No match  
368  First char at start or follows newline  First char at start or follows newline
 No match  
369  No need char  No need char
 No match  
370      defabc      defabc
371   0: defabc   0: defabc
372   1: abc   1: abc
373   2: abc   2: abc
  0: defabc  
  0: 0: defabc  
  1: abc  
  2: abc  
  1: abc  
  0: 1: abc  
  1: abc  
  2: abc  
  2: abc  
  0: 2: abc  
  1: abc  
  2: abc  
374      \Zdefabc      \Zdefabc
375   0: def   0: def
376   1: def   1: def
377   2: <unset>   2: <unset>
378   3: def   3: def
  0: def  
  0: 0: def  
  1: def  
  2: <unset>  
  3: def  
  1: def  
  0: 1: def  
  1: def  
  2: <unset>  
  3: def  
  2: <unset>  
 No match  
  3: def  
  0: 3: def  
  1: def  
  2: <unset>  
  3: def  
379    
380  /abc/IP  /abc/P
381      abc      abc
382   0: abc   0: abc
  0: abc  
  0: abc  
383      *** Failers      *** Failers
384  No match: POSIX code 17: match failed  No match: POSIX code 17: match failed
 No match: POSIX code 17: match failed  
 No match: POSIX code 17: match failed  
385    
386  /^abc|def/IP  /^abc|def/P
387      abcdef      abcdef
388   0: abc   0: abc
  0: abc  
 No match: POSIX code 17: match failed  
389      abcdef\B      abcdef\B
390   0: def   0: def
  0: def  
  0: def  
391    
392  /.*((abc)$|(def))/IP  /.*((abc)$|(def))/P
393      defabc      defabc
394   0: defabc   0: defabc
395   1: abc   1: abc
396   2: abc   2: abc
  0: defabc  
  0: 0: defabc  
  1: abc  
  2: abc  
  1: abc  
  0: 1: abc  
  1: abc  
  2: abc  
  2: abc  
  0: 2: abc  
  1: abc  
  2: abc  
397      \Zdefabc      \Zdefabc
398   0: def   0: def
399   1: def   1: def
400   3: def   3: def
  0: def  
  0: 0: def  
  1: def  
  3: def  
  1: def  
  0: 1: def  
  1: def  
  3: def  
  3: def  
  0: 3: def  
  1: def  
  3: def  
401    
402  /the quick brown fox/IP  /the quick brown fox/P
403      the quick brown fox      the quick brown fox
404   0: the quick brown fox   0: the quick brown fox
  0: the quick brown fox  
  0: the quick brown fox  
405      *** Failers      *** Failers
406  No match: POSIX code 17: match failed  No match: POSIX code 17: match failed
 No match: POSIX code 17: match failed  
 No match: POSIX code 17: match failed  
407      The Quick Brown Fox      The Quick Brown Fox
408  No match: POSIX code 17: match failed  No match: POSIX code 17: match failed
 No match: POSIX code 17: match failed  
 No match: POSIX code 17: match failed  
409    
410  /the quick brown fox/IPi  /the quick brown fox/Pi
411      the quick brown fox      the quick brown fox
412   0: the quick brown fox   0: the quick brown fox
  0: the quick brown fox  
  0: the quick brown fox  
413      The Quick Brown Fox      The Quick Brown Fox
414   0: The Quick Brown Fox   0: The Quick Brown Fox
  0: The Quick Brown Fox  
  0: The Quick Brown Fox  
415    
416  /abc.def/IP  /abc.def/P
417      *** Failers      *** Failers
418  No match: POSIX code 17: match failed  No match: POSIX code 17: match failed
 No match: POSIX code 17: match failed  
 No match: POSIX code 17: match failed  
419      abc\ndef      abc\ndef
420  No match: POSIX code 17: match failed  No match: POSIX code 17: match failed
 No match: POSIX code 17: match failed  
 No match: POSIX code 17: match failed  
421    
422  /abc$/IP  /abc$/P
423      abc      abc
424   0: abc   0: abc
  0: abc  
  0: abc  
425      abc\n      abc\n
426   0: abc   0: abc
  0: abc  
  0: abc  
427    
428  /(abc)\2/IP  /(abc)\2/P
429  Failed: POSIX code 15: bad back reference at offset 7  Failed: POSIX code 15: bad back reference at offset 7
430    
431  /(abc\1)/IP  /(abc\1)/P
432      abc      abc
433  No match: POSIX code 17: match failed  No match: POSIX code 17: match failed
 No match: POSIX code 17: match failed  
 No match: POSIX code 17: match failed  
434    
435  /)/  /)/
436  Failed: unmatched parentheses at offset 0  Failed: unmatched parentheses at offset 0
# Line 919  Failed: missing terminating ] for charac Line 440  Failed: missing terminating ] for charac
440    
441  /[^aeiou ]{3,}/I  /[^aeiou ]{3,}/I
442  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
443  No options  No options
444  No first char  No first char
445  No need char  No need char
 Capturing subpattern count = 0  
 No match  
 Partial matching not supported  
  0: tch  
 No options  
 No match  
 No first char  
  0: rst  
 No need char  
 No match  
446      co-processors, and for      co-processors, and for
447   0: -pr   0: -pr
  0: -pr  
  0: -pr  
448    
449  /<.*>/I  /<.*>/I
450  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
 No options  
 First char = '<'  
 Need char = '>'  
 Capturing subpattern count = 0  
 No match  
 Partial matching not supported  
 No match  
451  No options  No options
 No match  
452  First char = '<'  First char = '<'
 No match  
453  Need char = '>'  Need char = '>'
 No match  
454      abc<def>ghi<klm>nop      abc<def>ghi<klm>nop
455   0: <def>ghi<klm>   0: <def>ghi<klm>
  0: <def>ghi<klm>  
  0: <def>ghi<klm>  
456    
457  /<.*?>/I  /<.*?>/I
458  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
 No options  
 First char = '<'  
 Need char = '>'  
 Capturing subpattern count = 0  
 No match  
 Partial matching not supported  
 No match  
459  No options  No options
 No match  
460  First char = '<'  First char = '<'
 No match  
461  Need char = '>'  Need char = '>'
 No match  
462      abc<def>ghi<klm>nop      abc<def>ghi<klm>nop
463   0: <def>   0: <def>
  0: <def>  
  0: <def>  
464    
465  /<.*>/IU  /<.*>/IU
466  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
467  Options: ungreedy  Options: ungreedy
468  First char = '<'  First char = '<'
469  Need char = '>'  Need char = '>'
 Capturing subpattern count = 0  
 No match  
 Partial matching not supported  
 No match  
 Options: ungreedy  
 No match  
 First char = '<'  
 No match  
 Need char = '>'  
 No match  
470      abc<def>ghi<klm>nop      abc<def>ghi<klm>nop
471   0: <def>   0: <def>
  0: <def>  
  0: <def>  
472    
473  /(?U)<.*>/I  /(?U)<.*>/I
474  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
 Options: ungreedy  
 First char = '<'  
 Need char = '>'  
 Capturing subpattern count = 0  
 No match  
 Partial matching not supported  
 No match  
475  Options: ungreedy  Options: ungreedy
 No match  
476  First char = '<'  First char = '<'
 No match  
477  Need char = '>'  Need char = '>'
 No match  
478      abc<def>ghi<klm>nop      abc<def>ghi<klm>nop
479   0: <def>   0: <def>
  0: <def>  
  0: <def>  
480    
481  /<.*?>/IU  /<.*?>/IU
482  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
 Options: ungreedy  
 First char = '<'  
 Need char = '>'  
 Capturing subpattern count = 0  
 No match  
 Partial matching not supported  
 No match  
483  Options: ungreedy  Options: ungreedy
 No match  
484  First char = '<'  First char = '<'
 No match  
485  Need char = '>'  Need char = '>'
 No match  
486      abc<def>ghi<klm>nop      abc<def>ghi<klm>nop
487   0: <def>ghi<klm>   0: <def>ghi<klm>
  0: <def>ghi<klm>  
  0: <def>ghi<klm>  
488    
489  /={3,}/IU  /={3,}/IU
490  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
491  Options: ungreedy  Options: ungreedy
492  First char = '='  First char = '='
493  Need char = '='  Need char = '='
 Capturing subpattern count = 0  
 No match  
 Partial matching not supported  
 No match  
 Options: ungreedy  
 No match  
 First char = '='  
 No match  
 Need char = '='  
 No match  
494      abc========def      abc========def
495   0: ===   0: ===
  0: ===  
  0: ===  
496    
497  /(?U)={3,}?/I  /(?U)={3,}?/I
498  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
 Options: ungreedy  
 First char = '='  
 Need char = '='  
 Capturing subpattern count = 0  
 No match  
 Partial matching not supported  
 No match  
499  Options: ungreedy  Options: ungreedy
 No match  
500  First char = '='  First char = '='
 No match  
501  Need char = '='  Need char = '='
 No match  
502      abc========def      abc========def
503   0: ========   0: ========
  0: ========  
  0: ========  
504    
505  /(?<!bar|cattle)foo/I  /(?<!bar|cattle)foo/I
506  Capturing subpattern count = 0  Capturing subpattern count = 0
507  No options  No options
508  First char = 'f'  First char = 'f'
509  Need char = 'o'  Need char = 'o'
 Capturing subpattern count = 0  
 No match  
 No options  
 No match  
 First char = 'f'  
 No match  
 Need char = 'o'  
 No match  
510      foo      foo
511   0: foo   0: foo
  0: foo  
  0: foo  
512      catfoo      catfoo
513   0: foo   0: foo
  0: foo  
  0: foo  
514      *** Failers      *** Failers
515  No match  No match
 No match  
 No match  
516      the barfoo      the barfoo
517  No match  No match
 No match  
 No match  
518      and cattlefoo      and cattlefoo
519  No match  No match
 No match  
 No match  
520    
521  /(?<=a+)b/  /(?<=a+)b/
522  Failed: lookbehind assertion is not fixed length at offset 6  Failed: lookbehind assertion is not fixed length at offset 6
# Line 1133  Capturing subpattern count = 0 Line 532  Capturing subpattern count = 0
532  Options: caseless  Options: caseless
533  First char = 'a' (caseless)  First char = 'a' (caseless)
534  Need char = 'c' (caseless)  Need char = 'c' (caseless)
 Capturing subpattern count = 0  
 No match  
 Options: caseless  
 No match  
 First char = 'a' (caseless)  
 No match  
 Need char = 'c' (caseless)  
 No match  
535    
536  /(a|(?m)a)/I  /(a|(?m)a)/I
537  Capturing subpattern count = 1  Capturing subpattern count = 1
538  No options  No options
539  First char = 'a'  First char = 'a'
540  No need char  No need char
 Capturing subpattern count = 1  
  0: a  
  1: a  
 No options  
 No match  
 First char = 'a'  
  0: a  
  1: a  
 No need char  
  0: a  
  1: a  
541    
542  /(?i)^1234/I  /(?i)^1234/I
543  Capturing subpattern count = 0  Capturing subpattern count = 0
544  Options: anchored caseless  Options: anchored caseless
545  No first char  No first char
546  No need char  No need char
 Capturing subpattern count = 0  
 No match  
 Options: anchored caseless  
 No match  
 No first char  
 No match  
 No need char  
 No match  
547    
548  /(^b|(?i)^d)/I  /(^b|(?i)^d)/I
549  Capturing subpattern count = 1  Capturing subpattern count = 1
550  Options: anchored  Options: anchored
551  No first char  No first char
552  No need char  No need char
 Capturing subpattern count = 1  
 No match  
 Options: anchored  
 No match  
 No first char  
 No match  
 No need char  
 No match  
553    
554  /(?s).*/I  /(?s).*/I
555  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
 Options: anchored dotall  
 No first char  
 No need char  
 Capturing subpattern count = 0  
  0: Capturing subpattern count = 0  
 Partial matching not supported  
  0: Partial matching not supported  
556  Options: anchored dotall  Options: anchored dotall
  0: Options: anchored dotall  
557  No first char  No first char
  0: No first char  
558  No need char  No need char
  0: No need char  
559    
560  /[abcd]/IS  /[abcd]/IS
561  Capturing subpattern count = 0  Capturing subpattern count = 0
562  No options  No options
563  No first char  No first char
564  No need char  No need char
565    Subject length lower bound = 1
566  Starting byte set: a b c d  Starting byte set: a b c d
 Capturing subpattern count = 0  
  0: a  
 No options  
 No match  
 No first char  
  0: c  
 No need char  
  0: d  
 Starting byte set: a b c d  
  0: a  
567    
568  /(?i)[abcd]/IS  /(?i)[abcd]/IS
569  Capturing subpattern count = 0  Capturing subpattern count = 0
570  Options: caseless  Options: caseless
571  No first char  No first char
572  No need char  No need char
573    Subject length lower bound = 1
574  Starting byte set: A B C D a b c d  Starting byte set: A B C D a b c d
 Capturing subpattern count = 0  
  0: C  
 Options: caseless  
  0: c  
 No first char  
  0: c  
 No need char  
  0: d  
 Starting byte set: A B C D a b c d  
  0: a  
575    
576  /(?m)[xy]|(b|c)/IS  /(?m)[xy]|(b|c)/IS
577  Capturing subpattern count = 1  Capturing subpattern count = 1
578  Options: multiline  Options: multiline
579  No first char  No first char
580  No need char  No need char
581    Subject length lower bound = 1
582  Starting byte set: b c x y  Starting byte set: b c x y
 Capturing subpattern count = 1  
  0: b  
  1: b  
 Options: multiline  
 No match  
 No first char  
  0: c  
  1: c  
 No need char  
  0: c  
  1: c  
 Starting byte set: b c x y  
  0: b  
  1: b  
583    
584  /(^a|^b)/Im  /(^a|^b)/Im
585  Capturing subpattern count = 1  Capturing subpattern count = 1
586  Options: multiline  Options: multiline
587  First char at start or follows newline  First char at start or follows newline
588  No need char  No need char
 Capturing subpattern count = 1  
 No match  
 Options: multiline  
 No match  
 First char at start or follows newline  
 No match  
 No need char  
 No match  
589    
590  /(?i)(^a|^b)/Im  /(?i)(^a|^b)/Im
591  Capturing subpattern count = 1  Capturing subpattern count = 1
592  Options: caseless multiline  Options: caseless multiline
593  First char at start or follows newline  First char at start or follows newline
594  No need char  No need char
 Capturing subpattern count = 1  
 No match  
 Options: caseless multiline  
 No match  
 First char at start or follows newline  
 No match  
 No need char  
 No match  
595    
596  /(a)(?(1)a|b|c)/  /(a)(?(1)a|b|c)/
597  Failed: conditional group contains more than two branches at offset 13  Failed: conditional group contains more than two branches at offset 13
# Line 1311  Failed: syntax error in subpattern name Line 617  Failed: syntax error in subpattern name
617  /((?s)blah)\s+\1/I  /((?s)blah)\s+\1/I
618  Capturing subpattern count = 1  Capturing subpattern count = 1
619  Max back reference = 1  Max back reference = 1
 Partial matching not supported  
 No options  
 First char = 'b'  
 Need char = 'h'  
 Capturing subpattern count = 1  
 No match  
 Max back reference = 1  
 No match  
 Partial matching not supported  
 No match  
620  No options  No options
 No match  
621  First char = 'b'  First char = 'b'
 No match  
622  Need char = 'h'  Need char = 'h'
 No match  
623    
624  /((?i)blah)\s+\1/I  /((?i)blah)\s+\1/I
625  Capturing subpattern count = 1  Capturing subpattern count = 1
626  Max back reference = 1  Max back reference = 1
 Partial matching not supported  
 No options  
 First char = 'b' (caseless)  
 Need char = 'h' (caseless)  
 Capturing subpattern count = 1  
 No match  
 Max back reference = 1  
 No match  
 Partial matching not supported  
 No match  
627  No options  No options
 No match  
628  First char = 'b' (caseless)  First char = 'b' (caseless)
 No match  
629  Need char = 'h' (caseless)  Need char = 'h' (caseless)
 No match  
630    
631  /((?i)b)/IDZS  /((?i)b)/IDZS
632  ------------------------------------------------------------------  ------------------------------------------------------------------
633          Bra 0          Bra
634          Bra 1          CBra 1
      01 Opt  
      NC b  
         Ket  
      00 Opt  
         Ket  
         End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 1  
 No options  
 First char = 'b' (caseless)  
 No need char  
 Study returned NULL  
 ------------------------------------------------------------------  
 No match  
         Bra 0  
  0: B  
  1: B  
         Bra 1  
  0: B  
  1: B  
635       01 Opt       01 Opt
 No match  
636       NC b       NC b
  0: b  
  1: b  
637          Ket          Ket
 No match  
638       00 Opt       00 Opt
 No match  
639          Ket          Ket
 No match  
640          End          End
 No match  
641  ------------------------------------------------------------------  ------------------------------------------------------------------
 No match  
642  Capturing subpattern count = 1  Capturing subpattern count = 1
  0: b  
  1: b  
643  No options  No options
 No match  
644  First char = 'b' (caseless)  First char = 'b' (caseless)
  0: b  
  1: b  
645  No need char  No need char
646  No match  Subject length lower bound = 1
647  Study returned NULL  No set of starting bytes
 No match  
648    
649  /(a*b|(?i:c*(?-i)d))/IS  /(a*b|(?i:c*(?-i)d))/IS
650  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
 No options  
 No first char  
 No need char  
 Starting byte set: C a b c d  
 Capturing subpattern count = 1  
  0: b  
  1: b  
 Partial matching not supported  
  0: d  
  1: d  
651  No options  No options
 No match  
652  No first char  No first char
 No match  
653  No need char  No need char
654   0: d  Subject length lower bound = 1
  1: d  
655  Starting byte set: C a b c d  Starting byte set: C a b c d
  0: b  
  1: b  
656    
657  /a$/I  /a$/I
658  Capturing subpattern count = 0  Capturing subpattern count = 0
659  No options  No options
660  First char = 'a'  First char = 'a'
661  No need char  No need char
 Capturing subpattern count = 0  
 No match  
 No options  
 No match  
 First char = 'a'  
 No match  
 No need char  
 No match  
662      a      a
663   0: a   0: a
  0: a  
  0: a  
664      a\n      a\n
665   0: a   0: a
  0: a  
  0: a  
666      *** Failers      *** Failers
667  No match  No match
 No match  
 No match  
668      \Za      \Za
669  No match  No match
 No match  
 No match  
670      \Za\n      \Za\n
671  No match  No match
 No match  
 No match  
672    
673  /a$/Im  /a$/Im
674  Capturing subpattern count = 0  Capturing subpattern count = 0
675  Options: multiline  Options: multiline
676  First char = 'a'  First char = 'a'
677  No need char  No need char
 Capturing subpattern count = 0  
 No match  
 Options: multiline  
 No match  
 First char = 'a'  
 No match  
 No need char  
 No match  
678      a      a
679   0: a   0: a
  0: a  
  0: a  
680      a\n      a\n
681   0: a   0: a
  0: a  
  0: a  
682      \Za\n      \Za\n
683   0: a   0: a
  0: a  
  0: a  
684      *** Failers      *** Failers
685  No match  No match
 No match  
 No match  
686      \Za      \Za
687  No match  No match
 No match  
 No match  
688    
689  /\Aabc/Im  /\Aabc/Im
690  Capturing subpattern count = 0  Capturing subpattern count = 0
691  Options: anchored multiline  Options: anchored multiline
692  No first char  No first char
693  No need char  No need char
 Capturing subpattern count = 0  
 No match  
 Options: anchored multiline  
 No match  
 No first char  
 No match  
 No need char  
 No match  
694    
695  /^abc/Im  /^abc/Im
696  Capturing subpattern count = 0  Capturing subpattern count = 0
697  Options: multiline  Options: multiline
698  First char at start or follows newline  First char at start or follows newline
699  Need char = 'c'  Need char = 'c'
 Capturing subpattern count = 0  
 No match  
 Options: multiline  
 No match  
 First char at start or follows newline  
 No match  
 Need char = 'c'  
 No match  
700    
701  /^((a+)(?U)([ab]+)(?-U)([bc]+)(\w*))/I  /^((a+)(?U)([ab]+)(?-U)([bc]+)(\w*))/I
702  Capturing subpattern count = 5  Capturing subpattern count = 5
 Partial matching not supported  
 Options: anchored  
 No first char  
 No need char  
 Capturing subpattern count = 5  
 No match  
 Partial matching not supported  
 No match  
703  Options: anchored  Options: anchored
 No match  
704  No first char  No first char
 No match  
705  No need char  No need char
 No match  
706    aaaaabbbbbcccccdef    aaaaabbbbbcccccdef
707   0: aaaaabbbbbcccccdef   0: aaaaabbbbbcccccdef
708   1: aaaaabbbbbcccccdef   1: aaaaabbbbbcccccdef
# Line 1543  No match Line 710  No match
710   3: b   3: b
711   4: bbbbccccc   4: bbbbccccc
712   5: def   5: def
  0: aaaaabbbbbcccccdef  
 No match  
  1: aaaaabbbbbcccccdef  
 No match  
  2: aaaaa  
 No match  
  3: b  
 No match  
  4: bbbbccccc  
 No match  
  5: def  
 No match  
713    
714  /(?<=foo)[ab]/IS  /(?<=foo)[ab]/IS
715  Capturing subpattern count = 0  Capturing subpattern count = 0
716  No options  No options
717  No first char  No first char
718  No need char  No need char
719    Subject length lower bound = 1
720  Starting byte set: a b  Starting byte set: a b
 Capturing subpattern count = 0  
 No match  
 No options  
 No match  
 No first char  
 No match  
 No need char  
 No match  
 Starting byte set: a b  
 No match  
721    
722  /(?<!foo)(alpha|omega)/IS  /(?<!foo)(alpha|omega)/IS
723  Capturing subpattern count = 1  Capturing subpattern count = 1
724  No options  No options
725  No first char  No first char
726  Need char = 'a'  Need char = 'a'
727    Subject length lower bound = 5
728  Starting byte set: a o  Starting byte set: a o
 Capturing subpattern count = 1  
 No match  
 No options  
 No match  
 No first char  
 No match  
 Need char = 'a'  
 No match  
 Starting byte set: a o  
 No match  
729    
730  /(?!alphabet)[ab]/IS  /(?!alphabet)[ab]/IS
731  Capturing subpattern count = 0  Capturing subpattern count = 0
732  No options  No options
733  No first char  No first char
734  No need char  No need char
735    Subject length lower bound = 1
736  Starting byte set: a b  Starting byte set: a b
 Capturing subpattern count = 0  
  0: a  
 No options  
 No match  
 No first char  
  0: a  
 No need char  
  0: a  
 Starting byte set: a b  
  0: a  
737    
738  /(?<=foo\n)^bar/Im  /(?<=foo\n)^bar/Im
739  Capturing subpattern count = 0  Capturing subpattern count = 0
740    Contains explicit CR or LF match
741  Options: multiline  Options: multiline
742  No first char  No first char
743  Need char = 'r'  Need char = 'r'
 Capturing subpattern count = 0  
 No match  
 Options: multiline  
 No match  
 No first char  
 No match  
 Need char = 'r'  
 No match  
744      foo\nbarbar      foo\nbarbar
745   0: bar   0: bar
  0: bar  
 No match  
746      ***Failers      ***Failers
747  No match  No match
 No match  
 No match  
748      rhubarb      rhubarb
749  No match  No match
 No match  
 No match  
750      barbell      barbell
751  No match  No match
 No match  
 No match  
752      abc\nbarton      abc\nbarton
753  No match  No match
 No match  
 No match  
754    
755  /^(?<=foo\n)bar/Im  /^(?<=foo\n)bar/Im
756  Capturing subpattern count = 0  Capturing subpattern count = 0
757    Contains explicit CR or LF match
758  Options: multiline  Options: multiline
759  First char at start or follows newline  First char at start or follows newline
760  Need char = 'r'  Need char = 'r'
 Capturing subpattern count = 0  
 No match  
 Options: multiline  
 No match  
 First char at start or follows newline  
 No match  
 Need char = 'r'  
 No match  
761      foo\nbarbar      foo\nbarbar
762   0: bar   0: bar
  0: bar  
 No match  
763      ***Failers      ***Failers
764  No match  No match
 No match  
 No match  
765      rhubarb      rhubarb
766  No match  No match
 No match  
 No match  
767      barbell      barbell
768  No match  No match
 No match  
 No match  
769      abc\nbarton      abc\nbarton
770  No match  No match
 No match  
 No match  
771    
772  /(?>^abc)/Im  /(?>^abc)/Im
773  Capturing subpattern count = 0  Capturing subpattern count = 0
774  Options: multiline  Options: multiline
775  First char at start or follows newline  First char at start or follows newline
776  Need char = 'c'  Need char = 'c'
 Capturing subpattern count = 0  
 No match  
 Options: multiline  
 No match  
 First char at start or follows newline  
 No match  
 Need char = 'c'  
 No match  
777      abc      abc
778   0: abc   0: abc
  0: abc  
 No match  
779      def\nabc      def\nabc
780   0: abc   0: abc
  0: abc  
 No match  
781      *** Failers      *** Failers
782  No match  No match
 No match  
 No match  
783      defabc      defabc
784  No match  No match
 No match  
 No match  
785    
786  /(?<=ab(c+)d)ef/  /(?<=ab(c+)d)ef/
787  Failed: lookbehind assertion is not fixed length at offset 11  Failed: lookbehind assertion is not fixed length at offset 11
# Line 1721  Capturing subpattern count = 0 Line 799  Capturing subpattern count = 0
799  No options  No options
800  First char = '-'  First char = '-'
801  Need char = 't'  Need char = 't'
 Capturing subpattern count = 0  
 No match  
 No options  
 No match  
 First char = '-'  
 No match  
 Need char = 't'  
 No match  
802      the bullock-cart      the bullock-cart
803   0: -cart   0: -cart
  0: -cart  
 No match  
804      a donkey-cart race      a donkey-cart race
805   0: -cart   0: -cart
  0: -cart  
 No match  
806      *** Failers      *** Failers
807  No match  No match
 No match  
 No match  
808      cart      cart
809  No match  No match
 No match  
 No match  
810      horse-and-cart      horse-and-cart
811  No match  No match
 No match  
 No match  
812    
813  /(?<=ab(?i)x|y|z)/I  /(?<=ab(?i)x|y|z)/I
814  Capturing subpattern count = 0  Capturing subpattern count = 0
815  No options  No options
816  No first char  No first char
817  No need char  No need char
 Capturing subpattern count = 0  
 No match  
 No options  
 No match  
 No first char  
 No match  
 No need char  
 No match  
818    
819  /(?>.*)(?<=(abcd)|(xyz))/I  /(?>.*)(?<=(abcd)|(xyz))/I
820  Capturing subpattern count = 2  Capturing subpattern count = 2
 Partial matching not supported  
 No options  
 First char at start or follows newline  
 No need char  
 Capturing subpattern count = 2  
 No match  
 Partial matching not supported  
 No match  
821  No options  No options
 No match  
822  First char at start or follows newline  First char at start or follows newline
 No match  
823  No need char  No need char
 No match  
824      alphabetabcd      alphabetabcd
825   0: alphabetabcd   0: alphabetabcd
826   1: abcd   1: abcd
  0: alphabetabcd  
  0: 0: alphabetabcd  
  1: abcd  
  1: abcd  
  0: 1: abcd  
  1: abcd  
827      endingxyz      endingxyz
828   0: endingxyz   0: endingxyz
829   1: <unset>   1: <unset>
830   2: xyz   2: xyz
  0: endingxyz  
  0: 0: endingxyz  
  1: <unset>  
  2: xyz  
  1: <unset>  
 No match  
  2: xyz  
  0: 2: xyz  
  1: <unset>  
  2: xyz  
831    
832  /(?<=ab(?i)x(?-i)y|(?i)z|b)ZZ/I  /(?<=ab(?i)x(?-i)y|(?i)z|b)ZZ/I
833  Capturing subpattern count = 0  Capturing subpattern count = 0
834  No options  No options
835  First char = 'Z'  First char = 'Z'
836  Need char = 'Z'  Need char = 'Z'
 Capturing subpattern count = 0  
 No match  
 No options  
 No match  
 First char = 'Z'  
 No match  
 Need char = 'Z'  
 No match  
837      abxyZZ      abxyZZ
838   0: ZZ   0: ZZ
  0: ZZ  
 No match  
839      abXyZZ      abXyZZ
840   0: ZZ   0: ZZ
  0: ZZ  
 No match  
841      ZZZ      ZZZ
842   0: ZZ   0: ZZ
  0: ZZ  
 No match  
843      zZZ      zZZ
844   0: ZZ   0: ZZ
  0: ZZ  
 No match  
845      bZZ      bZZ
846   0: ZZ   0: ZZ
  0: ZZ  
 No match  
847      BZZ      BZZ
848   0: ZZ   0: ZZ
  0: ZZ  
 No match  
849      *** Failers      *** Failers
850  No match  No match
 No match  
 No match  
851      ZZ      ZZ
852  No match  No match
 No match  
 No match  
853      abXYZZ      abXYZZ
854  No match  No match
 No match  
 No match  
855      zzz      zzz
856  No match  No match
 No match  
 No match  
857      bzz      bzz
858  No match  No match
 No match  
 No match  
859    
860  /(?<!(foo)a)bar/I  /(?<!(foo)a)bar/I
861  Capturing subpattern count = 1  Capturing subpattern count = 1
862  No options  No options
863  First char = 'b'  First char = 'b'
864  Need char = 'r'  Need char = 'r'
 Capturing subpattern count = 1  
 No match  
 No options  
 No match  
 First char = 'b'  
 No match  
 Need char = 'r'  
 No match  
865      bar      bar
866   0: bar   0: bar
  0: bar  
  0: bar  
867      foobbar      foobbar
868   0: bar   0: bar
  0: bar  
  0: bar  
869      *** Failers      *** Failers
870  No match  No match
 No match  
 No match  
871      fooabar      fooabar
872  No match  No match
 No match  
 No match  
873    
874  /This one is here because Perl 5.005_02 doesn't fail it/I  /This one is here because Perl 5.005_02 doesn't fail it/I
875  Capturing subpattern count = 0  Capturing subpattern count = 0
876  No options  No options
877  First char = 'T'  First char = 'T'
878  Need char = 't'  Need char = 't'
 Capturing subpattern count = 0  
 No match  
 No options  
 No match  
 First char = 'T'  
 No match  
 Need char = 't'  
 No match  
879    
880  /^(a)?(?(1)a|b)+$/I  /^(a)?(?(1)a|b)+$/I
881  Capturing subpattern count = 1  Capturing subpattern count = 1
882  Options: anchored  Options: anchored
883  No first char  No first char
884  No need char  No need char
 Capturing subpattern count = 1  
 No match  
 Options: anchored  
 No match  
 No first char  
 No match  
 No need char  
 No match  
885      *** Failers      *** Failers
886  No match  No match
 No match  
 No match  
887      a      a
888  No match  No match
 No match  
 No match  
889    
890  /This one is here because I think Perl 5.005_02 gets the setting of $1 wrong/I  /This one is here because Perl behaves differently; see also the following/I
 Capturing subpattern count = 0  
 No options  
 First char = 'T'  
 Need char = 'g'  
891  Capturing subpattern count = 0  Capturing subpattern count = 0
 No match  
892  No options  No options
 No match  
893  First char = 'T'  First char = 'T'
 No match  
894  Need char = 'g'  Need char = 'g'
 No match  
895    
896  /^(a\1?){4}$/I  /^(a\1?){4}$/I
897  Capturing subpattern count = 1  Capturing subpattern count = 1
# Line 1948  Max back reference = 1 Line 899  Max back reference = 1
899  Options: anchored  Options: anchored
900  No first char  No first char
901  No need char  No need char
902  Capturing subpattern count = 1      aaaa
903  No match  No match
904  Max back reference = 1      aaaaaa
905  No match  No match
906  Options: anchored  
907    /Perl does not fail these two for the final subjects. Neither did PCRE until/
908    /release 8.01. The problem is in backtracking into a subpattern that contains/
909  No match  No match
910  No first char  /a recursive reference to itself. PCRE has now made these into atomic patterns./
911  No match  No match
912  No need char  
913    /^(xa|=?\1a){2}$/
914        xa=xaa
915     0: xa=xaa
916     1: =xaa
917        ** Failers
918  No match  No match
919      aaaaaa      xa=xaaa
  0: aaaaaa  
  1: aa  
  0: aaaaaa  
920  No match  No match
921   1: aa  
922    /^(xa|=?\1a)+$/
923        xa=xaa
924     0: xa=xaa
925     1: =xaa
926        ** Failers
927    No match
928        xa=xaaa
929  No match  No match
930    
931  /These are syntax tests from Perl 5.005/I  /These are syntax tests from Perl 5.005/I
# Line 1971  Capturing subpattern count = 0 Line 933  Capturing subpattern count = 0
933  No options  No options
934  First char = 'T'  First char = 'T'
935  Need char = '5'  Need char = '5'
 Capturing subpattern count = 0  
 No match  
 No options  
 No match  
 First char = 'T'  
 No match  
 Need char = '5'  
 No match  
936    
937  /a[b-a]/  /a[b-a]/
938  Failed: range out of order in character class at offset 4  Failed: range out of order in character class at offset 4
# Line 2050  Failed: missing ) at offset 4 Line 1004  Failed: missing ) at offset 4
1004  Failed: unrecognized character after (?< at offset 3  Failed: unrecognized character after (?< at offset 3
1005    
1006  /a(?{)b/  /a(?{)b/
1007  Failed: unrecognized character after (? at offset 3  Failed: unrecognized character after (? or (?- at offset 3
1008    
1009  /a(?{{})b/  /a(?{{})b/
1010  Failed: unrecognized character after (? at offset 3  Failed: unrecognized character after (? or (?- at offset 3
1011    
1012  /a(?{}})b/  /a(?{}})b/
1013  Failed: unrecognized character after (? at offset 3  Failed: unrecognized character after (? or (?- at offset 3
1014    
1015  /a(?{"{"})b/  /a(?{"{"})b/
1016  Failed: unrecognized character after (? at offset 3  Failed: unrecognized character after (? or (?- at offset 3
1017    
1018  /a(?{"{"}})b/  /a(?{"{"}})b/
1019  Failed: unrecognized character after (? at offset 3  Failed: unrecognized character after (? or (?- at offset 3
1020    
1021  /(?(1?)a|b)/  /(?(1?)a|b)/
1022  Failed: malformed number or name after (?( at offset 4  Failed: malformed number or name after (?( at offset 4
1023    
 /(?(1)a|b|c)/  
 Failed: conditional group contains more than two branches at offset 10  
   
1024  /[a[:xyz:/  /[a[:xyz:/
1025  Failed: missing terminating ] for character class at offset 8  Failed: missing terminating ] for character class at offset 8
1026    
# Line 2093  Capturing subpattern count = 2 Line 1044  Capturing subpattern count = 2
1044  No options  No options
1045  First char = 'a'  First char = 'a'
1046  Need char = 'd'  Need char = 'd'
 Capturing subpattern count = 2  
 No match  
 No options  
 No match  
 First char = 'a'  
 No match  
 Need char = 'd'  
 No match  
1047      abcd      abcd
1048   0: abcd   0: abcd
1049   1: a   1: a
1050   2: d   2: d
  0: abcd  
  0: abcd  
  1: a  
  2: d  
  1: a  
 No match  
  2: d  
 No match  
1051      abcd\C2      abcd\C2
1052   0: abcd   0: abcd
1053   1: a   1: a
1054   2: d   2: d
1055   2C d (1)   2C d (1)
  0: abcd  
  0: abcd  
  1: a  
  2: d  
  1: a  
 No match  
  2: d  
 No match  
  2C d (1)  
 No match  
1056      abcd\C5      abcd\C5
1057   0: abcd   0: abcd
1058   1: a   1: a
1059   2: d   2: d
1060  copy substring 5 failed -7  copy substring 5 failed -7
  0: abcd  
  0: abcd  
  1: a  
  2: d  
  1: a  
 No match  
  2: d  
 No match  
 copy substring 5 failed -7  
 No match  
1061    
1062  /(.{20})/I  /(.{20})/I
1063  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
 No options  
 No first char  
 No need char  
 Capturing subpattern count = 1  
  0: Capturing subpattern  
  1: Capturing subpattern  
 Partial matching not supported  
  0: Partial matching not  
  1: Partial matching not  
1064  No options  No options
 No match  
1065  No first char  No first char
 No match  
1066  No need char  No need char
 No match  
1067      abcdefghijklmnopqrstuvwxyz      abcdefghijklmnopqrstuvwxyz
1068   0: abcdefghijklmnopqrst   0: abcdefghijklmnopqrst
1069   1: abcdefghijklmnopqrst   1: abcdefghijklmnopqrst
  0: abcdefghijklmnopqrst  
  0: 0: abcdefghijklmnopq  
  1: 0: abcdefghijklmnopq  
  1: abcdefghijklmnopqrst  
  0: 1: abcdefghijklmnopq  
  1: 1: abcdefghijklmnopq  
1070      abcdefghijklmnopqrstuvwxyz\C1      abcdefghijklmnopqrstuvwxyz\C1
1071   0: abcdefghijklmnopqrst   0: abcdefghijklmnopqrst
1072   1: abcdefghijklmnopqrst   1: abcdefghijklmnopqrst
1073   1C abcdefghijklmnopqrst (20)   1C abcdefghijklmnopqrst (20)
  0: abcdefghijklmnopqrst  
  0: 0: abcdefghijklmnopq  
  1: 0: abcdefghijklmnopq  
  1: abcdefghijklmnopqrst  
  0: 1: abcdefghijklmnopq  
  1: 1: abcdefghijklmnopq  
  1C abcdefghijklmnopqrst (20)  
  0: 1C abcdefghijklmnopq  
  1: 1C abcdefghijklmnopq  
1074      abcdefghijklmnopqrstuvwxyz\G1      abcdefghijklmnopqrstuvwxyz\G1
1075   0: abcdefghijklmnopqrst   0: abcdefghijklmnopqrst
1076   1: abcdefghijklmnopqrst   1: abcdefghijklmnopqrst
1077   1G abcdefghijklmnopqrst (20)   1G abcdefghijklmnopqrst (20)
  0: abcdefghijklmnopqrst  
  0: 0: abcdefghijklmnopq  
  1: 0: abcdefghijklmnopq  
  1: abcdefghijklmnopqrst  
  0: 1: abcdefghijklmnopq  
  1: 1: abcdefghijklmnopq  
  1G abcdefghijklmnopqrst (20)  
  0: 1G abcdefghijklmnopq  
  1: 1G abcdefghijklmnopq  
1078    
1079  /(.{15})/I  /(.{15})/I
1080  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
 No options  
 No first char  
 No need char  
 Capturing subpattern count = 1  
  0: Capturing subpa  
  1: Capturing subpa  
 Partial matching not supported  
  0: Partial matchin  
  1: Partial matchin  
1081  No options  No options
 No match  
1082  No first char  No first char
 No match  
1083  No need char  No need char
 No match  
1084      abcdefghijklmnopqrstuvwxyz      abcdefghijklmnopqrstuvwxyz
1085   0: abcdefghijklmno   0: abcdefghijklmno
1086   1: abcdefghijklmno   1: abcdefghijklmno
  0: abcdefghijklmno  
  0: 0: abcdefghijkl  
  1: 0: abcdefghijkl  
  1: abcdefghijklmno  
  0: 1: abcdefghijkl  
  1: 1: abcdefghijkl  
1087      abcdefghijklmnopqrstuvwxyz\C1\G1      abcdefghijklmnopqrstuvwxyz\C1\G1
1088   0: abcdefghijklmno   0: abcdefghijklmno
1089   1: abcdefghijklmno   1: abcdefghijklmno
1090   1C abcdefghijklmno (15)   1C abcdefghijklmno (15)
1091   1G abcdefghijklmno (15)   1G abcdefghijklmno (15)
  0: abcdefghijklmno  
  0: 0: abcdefghijkl  
  1: 0: abcdefghijkl  
  1: abcdefghijklmno  
  0: 1: abcdefghijkl  
  1: 1: abcdefghijkl  
  1C abcdefghijklmno (15)  
  0: 1C abcdefghijkl  
  1: 1C abcdefghijkl  
  1G abcdefghijklmno (15)  
  0: 1G abcdefghijkl  
  1: 1G abcdefghijkl  
1092    
1093  /(.{16})/I  /(.{16})/I
1094  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
 No options  
 No first char  
 No need char  
 Capturing subpattern count = 1  
  0: Capturing subpat  
  1: Capturing subpat  
 Partial matching not supported  
  0: Partial matching  
  1: Partial matching  
1095  No options  No options
 No match  
1096  No first char  No first char
 No match  
1097  No need char  No need char
 No match  
1098      abcdefghijklmnopqrstuvwxyz      abcdefghijklmnopqrstuvwxyz
1099   0: abcdefghijklmnop   0: abcdefghijklmnop
1100   1: abcdefghijklmnop   1: abcdefghijklmnop
  0: abcdefghijklmnop  
  0: 0: abcdefghijklm  
  1: 0: abcdefghijklm  
  1: abcdefghijklmnop  
  0: 1: abcdefghijklm  
  1: 1: abcdefghijklm  
1101      abcdefghijklmnopqrstuvwxyz\C1\G1\L      abcdefghijklmnopqrstuvwxyz\C1\G1\L
1102   0: abcdefghijklmnop   0: abcdefghijklmnop
1103   1: abcdefghijklmnop   1: abcdefghijklmnop
# Line 2277  No match Line 1105  No match
1105   1G abcdefghijklmnop (16)   1G abcdefghijklmnop (16)
1106   0L abcdefghijklmnop   0L abcdefghijklmnop
1107   1L abcdefghijklmnop   1L abcdefghijklmnop
  0: abcdefghijklmnop  
  0: 0: abcdefghijklm  
  1: 0: abcdefghijklm  
  1: abcdefghijklmnop  
  0: 1: abcdefghijklm  
  1: 1: abcdefghijklm  
  1C abcdefghijklmnop (16)  
  0: 1C abcdefghijklm  
  1: 1C abcdefghijklm  
  1G abcdefghijklmnop (16)  
  0: 1G abcdefghijklm  
  1: 1G abcdefghijklm  
  0L abcdefghijklmnop  
  0: 0L abcdefghijklm  
  1: 0L abcdefghijklm  
  1L abcdefghijklmnop  
  0: 1L abcdefghijklm  
  1: 1L abcdefghijklm  
1108    
1109  /^(a|(bc))de(f)/I  /^(a|(bc))de(f)/I
1110  Capturing subpattern count = 3  Capturing subpattern count = 3
1111  Options: anchored  Options: anchored
1112  No first char  No first char
1113  No need char  No need char
 Capturing subpattern count = 3  
 No match  
 Options: anchored  
 No match  
 No first char  
 No match  
 No need char  
 No match  
1114      adef\G1\G2\G3\G4\L      adef\G1\G2\G3\G4\L
1115   0: adef   0: adef
1116   1: a   1: a
# Line 2322  get substring 4 failed -7 Line 1124  get substring 4 failed -7
1124   1L a   1L a
1125   2L   2L
1126   3L f   3L f
  0: adef  
 No match  
  1: a  
 No match  
  2: <unset>  
 No match  
  3: f  
 No match  
  1G a (1)  
 No match  
  2G  (0)  
 No match  
  3G f (1)  
 No match  
 get substring 4 failed -7  
 No match  
  0L adef  
 No match  
  1L a  
 No match  
  2L  
 No match  
  3L f  
 No match  
1127      bcdef\G1\G2\G3\G4\L      bcdef\G1\G2\G3\G4\L
1128   0: bcdef   0: bcdef
1129   1: bc   1: bc
# Line 2359  get substring 4 failed -7 Line 1137  get substring 4 failed -7
1137   1L bc   1L bc
1138   2L bc   2L bc
1139   3L f   3L f
  0: bcdef  
 No match  
  1: bc  
 No match  
  2: bc  
 No match  
  3: f  
 No match  
  1G bc (2)  
 No match  
  2G bc (2)  
 No match  
  3G f (1)  
 No match  
 get substring 4 failed -7  
 No match  
  0L bcdef  
 No match  
  1L bc  
 No match  
  2L bc  
 No match  
  3L f  
 No match  
1140      adefghijk\C0      adefghijk\C0
1141   0: adef   0: adef
1142   1: a   1: a
1143   2: <unset>   2: <unset>
1144   3: f   3: f
1145   0C adef (4)   0C adef (4)
  0: adef  
 No match  
  1: a  
 No match  
  2: <unset>  
 No match  
  3: f  
 No match  
  0C adef (4)  
 No match  
1146    
1147  /^abc\00def/I  /^abc\00def/I
1148  Capturing subpattern count = 0  Capturing subpattern count = 0
1149  Options: anchored  Options: anchored
1150  No first char  No first char
1151  No need char  No need char
 Capturing subpattern count = 0  
 No match  
 Options: anchored  
 No match  
 No first char  
 No match  
 No need char  
 No match  
1152      abc\00def\L\C0      abc\00def\L\C0
1153   0: abc\x00def   0: abc\x00def
1154   0C abc (7)   0C abc (7)
1155   0L abc   0L abc
  0: abc\x00def  
 No match  
  0C abc (7)  
 No match  
  0L abc  
 No match  
1156    
1157  /word ((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+  /word ((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+
1158  )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+  )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+
1159  )?)?)?)?)?)?)?)?)?otherword/I  )?)?)?)?)?)?)?)?)?otherword/I
1160  Capturing subpattern count = 8  Capturing subpattern count = 8
1161  Partial matching not supported  Contains explicit CR or LF match
 No options  
 First char = 'w'  
 Need char = 'd'  
 Capturing subpattern count = 8  
 No match  
 Partial matching not supported  
 No match  
1162  No options  No options
 No match  
1163  First char = 'w'  First char = 'w'
 No match  
1164  Need char = 'd'  Need char = 'd'
 No match  
1165    
1166  /.*X/IDZ  /.*X/IDZ
1167  ------------------------------------------------------------------  ------------------------------------------------------------------
1168          Bra 0          Bra
         Any*  
         X  
         Ket  
         End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Partial matching not supported  
 No options  
 First char at start or follows newline  
 Need char = 'X'  
 ------------------------------------------------------------------  
 No match  
         Bra 0  
 No match  
1169          Any*          Any*
 No match  
1170          X          X
  0: X  
1171          Ket          Ket
 No match  
1172          End          End
 No match  
1173  ------------------------------------------------------------------  ------------------------------------------------------------------
 No match  
1174  Capturing subpattern count = 0  Capturing subpattern count = 0
 No match  
 Partial matching not supported  
 No match  
1175  No options  No options
 No match  
1176  First char at start or follows newline  First char at start or follows newline
 No match  
1177  Need char = 'X'  Need char = 'X'
  0: Need char = 'X  
1178    
1179  /.*X/IDZs  /.*X/IDZs
1180  ------------------------------------------------------------------  ------------------------------------------------------------------
1181          Bra 0          Bra
1182          Any*          AllAny*
         X  
         Ket  
         End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Partial matching not supported  
 Options: anchored dotall  
 No first char  
 Need char = 'X'  
 ------------------------------------------------------------------  
 No match  
         Bra 0  
 No match  
         Any*  
 No match  
1183          X          X
  0: X  
1184          Ket          Ket
 No match  
1185          End          End
 No match  
1186  ------------------------------------------------------------------  ------------------------------------------------------------------
 No match  
1187  Capturing subpattern count = 0  Capturing subpattern count = 0
 No match  
 Partial matching not supported  
 No match  
1188  Options: anchored dotall  Options: anchored dotall
 No match  
1189  No first char  No first char
 No match  
1190  Need char = 'X'  Need char = 'X'
  0: Need char = 'X  
1191    
1192  /(.*X|^B)/IDZ  /(.*X|^B)/IDZ
1193  ------------------------------------------------------------------  ------------------------------------------------------------------
1194          Bra 0          Bra
1195          Bra 1          CBra 1
1196          Any*          Any*
1197          X          X
1198          Alt          Alt
# Line 2533  Need char = 'X' Line 1203  Need char = 'X'
1203          End          End
1204  ------------------------------------------------------------------  ------------------------------------------------------------------
1205  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
1206  No options  No options
1207  First char at start or follows newline  First char at start or follows newline
1208  No need char  No need char
1209    
1210    /(.*X|^B)/IDZs
1211  ------------------------------------------------------------------  ------------------------------------------------------------------
1212  No match          Bra
1213          Bra 0          CBra 1
1214   0: B          AllAny*
  1: B  
         Bra 1  
  0: B  
  1: B  
         Any*  
 No match  
1215          X          X
  0: X  
  1: X  
1216          Alt          Alt
 No match  
1217          ^          ^
 No match  
1218          B          B
  0: B  
  1: B  
1219          Ket          Ket
 No match  
1220          Ket          Ket
 No match  
1221          End          End
 No match  
1222  ------------------------------------------------------------------  ------------------------------------------------------------------
 No match  
1223  Capturing subpattern count = 1  Capturing subpattern count = 1
1224  No match  Options: anchored dotall
1225  Partial matching not supported  No first char
 No match  
 No options  
 No match  
 First char at start or follows newline  
 No match  
1226  No need char  No need char
 No match  
1227    
1228  /(.*X|^B)/IDZs  /(?s)(.*X|^B)/IDZ
1229  ------------------------------------------------------------------  ------------------------------------------------------------------
1230          Bra 0          Bra
1231          Bra 1          CBra 1
1232          Any*          AllAny*
1233          X          X
1234          Alt          Alt
1235          ^          ^
# Line 2590  No match Line 1239  No match
1239          End          End
1240  ------------------------------------------------------------------  ------------------------------------------------------------------
1241  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
1242  Options: anchored dotall  Options: anchored dotall
1243  No first char  No first char
1244  No need char  No need char
 ------------------------------------------------------------------  
 No match  
         Bra 0  
  0: B  
  1: B  
         Bra 1  
  0: B  
  1: B  
         Any*  
 No match  
         X  
  0: X  
  1: X  
         Alt  
 No match  
         ^  
 No match  
         B  
  0: B  
  1: B  
         Ket  
 No match  
         Ket  
 No match  
         End  
 No match  
 ------------------------------------------------------------------  
 No match  
 Capturing subpattern count = 1  
 No match  
 Partial matching not supported  
 No match  
 Options: anchored dotall  
 No match  
 No first char  
 No match  
 No need char  
 No match  
   
 /(?s)(.*X|^B)/IDZ  
 ------------------------------------------------------------------  
         Bra 0  
         Bra 1  
         Any*  
         X  
         Alt  
         ^  
         B  
         Ket  
         Ket  
         End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 1  
 Partial matching not supported  
 Options: anchored dotall  
 No first char  
 No need char  
 ------------------------------------------------------------------  
 No match  
         Bra 0  
  0: B  
  1: B  
         Bra 1  
  0: B  
  1: B  
         Any*  
 No match  
         X  
  0: X  
  1: X  
         Alt  
 No match  
         ^  
 No match  
         B  
  0: B  
  1: B  
         Ket  
 No match  
         Ket  
 No match  
         End  
 No match  
 ------------------------------------------------------------------  
 No match  
 Capturing subpattern count = 1  
 No match  
 Partial matching not supported  
 No match  
 Options: anchored dotall  
 No match  
 No first char  
 No match  
 No need char  
 No match  
1245    
1246  /(?s:.*X|^B)/IDZ  /(?s:.*X|^B)/IDZ
1247  ------------------------------------------------------------------  ------------------------------------------------------------------
1248          Bra 0          Bra
1249          Bra 0          Bra
      04 Opt  
         Any*  
         X  
         Alt  
      04 Opt  
         ^  
         B  
         Ket  
      00 Opt  
         Ket  
         End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Partial matching not supported  
 No options  
 First char at start or follows newline  
 No need char  
 ------------------------------------------------------------------  
 No match  
         Bra 0  
  0: B  
         Bra 0  
  0: B  
1250       04 Opt       04 Opt
1251  No match          AllAny*
         Any*  
 No match  
1252          X          X
  0: X  
1253          Alt          Alt
 No match  
1254       04 Opt       04 Opt
 No match  
1255          ^          ^
 No match  
1256          B          B
  0: B  
1257          Ket          Ket
 No match  
1258       00 Opt       00 Opt
 No match  
1259          Ket          Ket
 No match  
1260          End          End
 No match  
1261  ------------------------------------------------------------------  ------------------------------------------------------------------
 No match  
1262  Capturing subpattern count = 0  Capturing subpattern count = 0
1263  No match  Options: anchored
1264  Partial matching not supported  No first char
 No match  
 No options  
 No match  
 First char at start or follows newline  
 No match  
1265  No need char  No need char
 No match  
1266    
1267  /\Biss\B/I+  /\Biss\B/I+
1268  Capturing subpattern count = 0  Capturing subpattern count = 0
1269  No options  No options
1270  First char = 'i'  First char = 'i'
1271  Need char = 's'  Need char = 's'
 Capturing subpattern count = 0  
 No match  
 No options  
 No match  
 First char = 'i'  
 No match  
 Need char = 's'  
 No match  
1272      Mississippi      Mississippi
1273   0: iss   0: iss
1274   0+ issippi   0+ issippi
  0: iss  
 No match  
  0+ issippi  
 No match  
1275    
1276  /\Biss\B/I+P  /\Biss\B/I+P
1277      Mississippi      Mississippi
1278   0: iss   0: iss
1279   0+ issippi   0+ issippi
  0: iss  
 No match: POSIX code 17: match failed  
  0+ issippi  
 No match: POSIX code 17: match failed  
1280    
1281  /iss/IG+  /iss/IG+
1282  Capturing subpattern count = 0  Capturing subpattern count = 0
1283  No options  No options
1284  First char = 'i'  First char = 'i'
1285  Need char = 's'  Need char = 's'
 Capturing subpattern count = 0  
 No match  
 No options  
 No match  
 First char = 'i'  
 No match  
 Need char = 's'  
 No match  
1286      Mississippi      Mississippi
1287   0: iss   0: iss
1288   0+ issippi   0+ issippi
1289   0: iss   0: iss
1290   0+ ippi   0+ ippi
  0: iss  
  0: iss  
  0+  
  0+ issippi  
  0: iss  
  0+ ippi  
  0: iss  
  0: iss  
  0+  
  0+ ippi  
 No match  
1291    
1292  /\Biss\B/IG+  /\Biss\B/IG+
1293  Capturing subpattern count = 0  Capturing subpattern count = 0
1294  No options  No options
1295  First char = 'i'  First char = 'i'
1296  Need char = 's'  Need char = 's'
 Capturing subpattern count = 0  
 No match  
 No options  
 No match  
 First char = 'i'  
 No match  
 Need char = 's'  
 No match  
1297      Mississippi      Mississippi
1298   0: iss   0: iss
1299   0+ issippi   0+ issippi
  0: iss  
 No match  
  0+ issippi  
 No match  
1300    
1301  /\Biss\B/Ig+  /\Biss\B/Ig+
1302  Capturing subpattern count = 0  Capturing subpattern count = 0
1303  No options  No options
1304  First char = 'i'  First char = 'i'
1305  Need char = 's'  Need char = 's'
 Capturing subpattern count = 0  
 No match  
 No options  
 No match  
 First char = 'i'  
 No match  
 Need char = 's'  
 No match  
1306      Mississippi      Mississippi
1307   0: iss   0: iss
1308   0+ issippi   0+ issippi
1309   0: iss   0: iss
1310   0+ ippi   0+ ippi
  0: iss  
 No match  
  0+ issippi  
 No match  
  0: iss  
 No match  
  0+ ippi  
 No match  
1311      *** Failers      *** Failers
1312  No match  No match
 No match  
 No match  
1313      Mississippi\A      Mississippi\A
1314  No match  No match
 No match  
 No match  
1315    
1316  /(?<=[Ms])iss/Ig+  /(?<=[Ms])iss/Ig+
1317  Capturing subpattern count = 0  Capturing subpattern count = 0
1318  No options  No options
1319  First char = 'i'  First char = 'i'
1320  Need char = 's'  Need char = 's'
 Capturing subpattern count = 0  
 No match  
 No options  
 No match  
 First char = 'i'  
 No match  
 Need char = 's'  
 No match  
1321      Mississippi      Mississippi
1322   0: iss   0: iss
1323   0+ issippi   0+ issippi
1324   0: iss   0: iss
1325   0+ ippi   0+ ippi
  0: iss  
 No match  
  0+ issippi  
 No match  
  0: iss  
 No match  
  0+ ippi  
 No match  
1326    
1327  /(?<=[Ms])iss/IG+  /(?<=[Ms])iss/IG+
1328  Capturing subpattern count = 0  Capturing subpattern count = 0
1329  No options  No options
1330  First char = 'i'  First char = 'i'
1331  Need char = 's'  Need char = 's'
 Capturing subpattern count = 0  
 No match  
 No options  
 No match  
 First char = 'i'  
 No match  
 Need char = 's'  
 No match  
1332      Mississippi      Mississippi
1333   0: iss   0: iss
1334   0+ issippi   0+ issippi
  0: iss  
 No match  
  0+ issippi  
 No match  
1335    
1336  /^iss/Ig+  /^iss/Ig+
1337  Capturing subpattern count = 0  Capturing subpattern count = 0
1338  Options: anchored  Options: anchored
1339  No first char  No first char
1340  No need char  No need char
 Capturing subpattern count = 0  
 No match  
 Options: anchored  
 No match  
 No first char  
 No match  
 No need char  
 No match  
1341      ississippi      ississippi
1342   0: iss   0: iss
1343   0+ issippi   0+ issippi
  0: iss  
 No match  
  0+ issippi  
 No match  
1344    
1345  /.*iss/Ig+  /.*iss/Ig+
1346  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
 No options  
 First char at start or follows newline  
 Need char = 's'  
 Capturing subpattern count = 0  
 No match  
 Partial matching not supported  
 No match  
1347  No options  No options
 No match  
1348  First char at start or follows newline  First char at start or follows newline
 No match  
1349  Need char = 's'  Need char = 's'
 No match  
1350      abciss\nxyzisspqr      abciss\nxyzisspqr
1351   0: abciss   0: abciss
1352   0+ \x0axyzisspqr   0+ \x0axyzisspqr
1353   0: xyziss   0: xyziss
1354   0+ pqr   0+ pqr
  0: abciss  
  0: 0: abciss  
  0+  
  0+ \x0axyzisspqr  
  0: xyziss  
  0+ pqr  
  0: xyziss  
  0: 0: xyziss  
  0+  
  0+ pqr  
 No match  
1355    
1356  /.i./I+g  /.i./I+g
1357  Capturing subpattern count = 0  Capturing subpattern count = 0
1358  No options  No options
1359  No first char  No first char
1360  Need char = 'i'  Need char = 'i'
 Capturing subpattern count = 0  
  0: rin  
  0+ g subpattern count = 0  
 No options  
  0: tio  
  0+ ns  
 No first char  
  0: fir  
  0+ st char  
 Need char = 'i'  
  0: 'i'  
  0+  
1361      Mississippi      Mississippi
1362   0: Mis   0: Mis
1363   0+ sissippi   0+ sissippi
# Line 2994  Need char = 'i' Line 1365  Need char = 'i'
1365   0+ sippi   0+ sippi
1366   0: sip   0: sip
1367   0+ pi   0+ pi
  0: Mis  
  0: Mis  
  0+  
  0+ sissippi  
  0: sis  
  0+ sippi  
  0: sip  
  0+ pi  
  0: sis  
  0: sis  
  0+  
  0+ sippi  
  0: sip  
  0+ pi  
  0: sip  
  0: sip  
  0+  
  0+ pi  
 No match  
1368      Mississippi\A      Mississippi\A
1369   0: Mis   0: Mis
1370   0+ sissippi   0+ sissippi
# Line 3020  No match Line 1372  No match
1372   0+ sippi   0+ sippi
1373   0: sip   0: sip
1374   0+ pi   0+ pi
  0: Mis  
  0: Mis  
  0+  
  0+ sissippi  
  0: sis  
  0+ sippi  
  0: sip  
  0+ pi  
  0: sis  
  0: sis  
  0+  
  0+ sippi  
  0: sip  
  0+ pi  
  0: sip  
  0: sip  
  0+  
  0+ pi  
 No match  
1375      Missouri river      Missouri river
1376   0: Mis   0: Mis
1377   0+ souri river   0+ souri river
# Line 3046  No match Line 1379  No match
1379   0+ river   0+ river
1380   0: riv   0: riv
1381   0+ er   0+ er
  0: Mis  
  0: Mis  
  0+  
  0+ souri river  
  0: ri  
  0+ river  
  0: riv  
  0+ er  
  0: ri  
 No match  
  0+ river  
  0: riv  
  0+ er  
  0: riv  
  0: riv  
  0+  
  0+ er  
 No match  
1382      Missouri river\A      Missouri river\A
1383   0: Mis   0: Mis
1384   0+ souri river   0+ souri river
  0: Mis  
  0: Mis  
  0+  
  0+ souri river  
  0: ri  
  0+ river  
  0: riv  
  0+ er  
1385    
1386  /^.is/I+g  /^.is/I+g
1387  Capturing subpattern count = 0  Capturing subpattern count = 0
1388  Options: anchored  Options: anchored
1389  No first char  No first char
1390  No need char  No need char
 Capturing subpattern count = 0  
 No match  
 Options: anchored  
 No match  
 No first char  
 No match  
 No need char  
 No match  
1391      Mississippi      Mississippi
1392   0: Mis   0: Mis
1393   0+ sissippi   0+ sissippi
  0: Mis  
 No match  
  0+ sissippi  
 No match  
1394    
1395  /^ab\n/Ig+  /^ab\n/Ig+
1396  Capturing subpattern count = 0  Capturing subpattern count = 0
1397    Contains explicit CR or LF match
1398  Options: anchored  Options: anchored
1399  No first char  No first char
1400  No need char  No need char
 Capturing subpattern count = 0  
 No match  
 Options: anchored  
 No match  
 No first char  
 No match  
 No need char  
 No match  
1401      ab\nab\ncd      ab\nab\ncd
1402   0: ab\x0a   0: ab\x0a
1403   0+ ab\x0acd   0+ ab\x0acd
  0: ab\x0a  
 No match  
  0+ ab\x0acd  
 No match  
1404    
1405  /^ab\n/Img+  /^ab\n/Img+
1406  Capturing subpattern count = 0  Capturing subpattern count = 0
1407    Contains explicit CR or LF match
1408  Options: multiline  Options: multiline
1409  First char at start or follows newline  First char at start or follows newline
1410  Need char = 10  Need char = 10
 Capturing subpattern count = 0  
 No match  
 Options: multiline  
 No match  
 First char at start or follows newline  
 No match  
 Need char = 10  
 No match  
1411      ab\nab\ncd      ab\nab\ncd
1412   0: ab\x0a   0: ab\x0a
1413   0+ ab\x0acd   0+ ab\x0acd
1414   0: ab\x0a   0: ab\x0a
1415   0+ cd   0+ cd
  0: ab\x0a  
 No match  
  0+ ab\x0acd  
 No match  
  0: ab\x0a  
 No match  
  0+ cd  
 No match  
1416    
1417  /abc/I  /abc/I
1418  Capturing subpattern count = 0  Capturing subpattern count = 0
1419  No options  No options
1420  First char = 'a'  First char = 'a'
1421  Need char = 'c'  Need char = 'c'
 Capturing subpattern count = 0  
 No match  
 No options  
 No match  
 First char = 'a'  
 No match  
 Need char = 'c'  
 No match  
1422    
1423  /abc|bac/I  /abc|bac/I
1424  Capturing subpattern count = 0  Capturing subpattern count = 0
1425  No options  No options
1426  No first char  No first char
1427  Need char = 'c'  Need char = 'c'
 Capturing subpattern count = 0  
 No match  
 No options  
 No match  
 No first char  
 No match  
 Need char = 'c'  
 No match  
1428    
1429  /(abc|bac)/I  /(abc|bac)/I
1430  Capturing subpattern count = 1  Capturing subpattern count = 1
1431  No options  No options
1432  No first char  No first char
1433  Need char = 'c'  Need char = 'c'
 Capturing subpattern count = 1  
 No match  
 No options  
 No match  
 No first char  
 No match  
 Need char = 'c'  
 No match  
1434    
1435  /(abc|(c|dc))/I  /(abc|(c|dc))/I
1436  Capturing subpattern count = 2  Capturing subpattern count = 2
1437  No options  No options
1438  No first char  No first char
1439  Need char = 'c'  Need char = 'c'
 Capturing subpattern count = 2  
  0: c  
  1: c  
  2: c  
 No options  
 No match  
 No first char  
  0: c  
  1: c  
  2: c  
 Need char = 'c'  
  0: c  
  1: c  
  2: c  
1440    
1441  /(abc|(d|de)c)/I  /(abc|(d|de)c)/I
1442  Capturing subpattern count = 2  Capturing subpattern count = 2
1443  No options  No options
1444  No first char  No first char
1445  Need char = 'c'  Need char = 'c'
 Capturing subpattern count = 2  
 No match  
 No options  
 No match  
 No first char  
 No match  
 Need char = 'c'  
 No match  
1446    
1447  /a*/I  /a*/I
1448  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1449  No options  No options
1450  No first char  No first char
1451  No need char  No need char
 Capturing subpattern count = 0  
  0:  
 Partial matching not supported  
  0:  
 No options  
  0:  
 No first char  
  0:  
 No need char  
  0:  
1452    
1453  /a+/I  /a+/I
1454  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
 No options  
 First char = 'a'  
 No need char  
 Capturing subpattern count = 0  
  0: a  
 Partial matching not supported  
  0: a  
1455  No options  No options
 No match  
1456  First char = 'a'  First char = 'a'
  0: a  
1457  No need char  No need char
  0: a  
1458    
1459  /(baa|a+)/I  /(baa|a+)/I
1460  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
 No options  
 No first char  
 Need char = 'a'  
 Capturing subpattern count = 1  
  0: a  
  1: a  
 Partial matching not supported  
  0: a  
  1: a  
1461  No options  No options
 No match  
1462  No first char  No first char
  0: a  
  1: a  
1463  Need char = 'a'  Need char = 'a'
  0: a  
  1: a  
1464    
1465  /a{0,3}/I  /a{0,3}/I
1466  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
 No options  
 No first char  
 No need char  
 Capturing subpattern count = 0  
  0:  
 Partial matching not supported  
  0:  
1467  No options  No options
  0:  
1468  No first char  No first char
  0:  
1469  No need char  No need char
  0:  
1470    
1471  /baa{3,}/I  /baa{3,}/I
1472  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1473  No options  No options
1474  First char = 'b'  First char = 'b'
1475  Need char = 'a'  Need char = 'a'
 Capturing subpattern count = 0  
 No match  
 Partial matching not supported  
 No match  
 No options  
 No match  
 First char = 'b'  
 No match  
 Need char = 'a'  
 No match  
1476    
1477  /"([^\\"]+|\\.)*"/I  /"([^\\"]+|\\.)*"/I
1478  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
 No options  
 First char = '"'  
 Need char = '"'  
 Capturing subpattern count = 1  
 No match  
 Partial matching not supported  
 No match  
1479  No options  No options
 No match  
1480  First char = '"'  First char = '"'
 No match  
1481  Need char = '"'  Need char = '"'
 No match  
1482    
1483  /(abc|ab[cd])/I  /(abc|ab[cd])/I
1484  Capturing subpattern count = 1  Capturing subpattern count = 1
1485  No options  No options
1486  First char = 'a'  First char = 'a'
1487  No need char  No need char
 Capturing subpattern count = 1  
 No match  
 No options  
 No match  
 First char = 'a'  
 No match  
 No need char  
 No match  
1488    
1489  /(a|.)/I  /(a|.)/I
1490  Capturing subpattern count = 1  Capturing subpattern count = 1
1491  No options  No options
1492  No first char  No first char
1493  No need char  No need char
 Capturing subpattern count = 1  
  0: C  
  1: C  
 No options  
  0: N  
  1: N  
 No first char  
  0: N  
  1: N  
 No need char  
  0: N  
  1: N  
1494    
1495  /a|ba|\w/I  /a|ba|\w/I
1496  Capturing subpattern count = 0  Capturing subpattern count = 0
1497  No options  No options
1498  No first char  No first char
1499  No need char  No need char
 Capturing subpattern count = 0  
  0: C  
 No options  
  0: N  
 No first char  
  0: N  
 No need char  
  0: N  
1500    
1501  /abc(?=pqr)/I  /abc(?=pqr)/I
1502  Capturing subpattern count = 0  Capturing subpattern count = 0
1503  No options  No options
1504  First char = 'a'  First char = 'a'
1505  Need char = 'r'  Need char = 'r'
 Capturing subpattern count = 0  
 No match  
 No options  
 No match  
 First char = 'a'  
 No match  
 Need char = 'r'  
 No match  
1506    
1507  /...(?<=abc)/I  /...(?<=abc)/I
1508  Capturing subpattern count = 0  Capturing subpattern count = 0
1509  No options  No options
1510  No first char  No first char
1511  No need char  No need char
 Capturing subpattern count = 0  
 No match  
 No options  
 No match  
 No first char  
 No match  
 No need char  
 No match  
1512    
1513  /abc(?!pqr)/I  /abc(?!pqr)/I
1514  Capturing subpattern count = 0  Capturing subpattern count = 0
1515  No options  No options
1516  First char = 'a'  First char = 'a'
1517  Need char = 'c'  Need char = 'c'
 Capturing subpattern count = 0  
 No match  
 No options  
 No match  
 First char = 'a'  
 No match  
 Need char = 'c'  
 No match  
1518    
1519  /ab./I  /ab./I
1520  Capturing subpattern count = 0  Capturing subpattern count = 0
1521  No options  No options
1522  First char = 'a'  First char = 'a'
1523  Need char = 'b'  Need char = 'b'
1524    
1525    /ab[xyz]/I
1526  Capturing subpattern count = 0  Capturing subpattern count = 0
 No match  
1527  No options  No options
 No match  
 First char = 'a'  
 No match  
 Need char = 'b'  
 No match  
   
 /ab[xyz]/I  
 Capturing subpattern count = 0  
 No options  
 First char = 'a'  
 Need char = 'b'  
 Capturing subpattern count = 0  
 No match  
 No options  
 No match  
1528  First char = 'a'  First char = 'a'
 No match  
1529  Need char = 'b'  Need char = 'b'
 No match  
1530    
1531  /abc*/I  /abc*/I
1532  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
 No options  
 First char = 'a'  
 Need char = 'b'  
 Capturing subpattern count = 0  
 No match  
 Partial matching not supported  
 No match  
1533  No options  No options
 No match  
1534  First char = 'a'  First char = 'a'
 No match  
1535  Need char = 'b'  Need char = 'b'
 No match  
1536    
1537  /ab.c*/I  /ab.c*/I
1538  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
 No options  
 First char = 'a'  
 Need char = 'b'  
 Capturing subpattern count = 0  
 No match  
 Partial matching not supported  
 No match  
1539  No options  No options
 No match  
1540  First char = 'a'  First char = 'a'
 No match  
1541  Need char = 'b'  Need char = 'b'
 No match  
1542    
1543  /a.c*/I  /a.c*/I
1544  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
 No options  
 First char = 'a'  
 No need char  
 Capturing subpattern count = 0  
  0: ap  
 Partial matching not supported  
  0: ar  
1545  No options  No options
 No match  
1546  First char = 'a'  First char = 'a'
  0: ar  
1547  No need char  No need char
  0: ar  
1548    
1549  /.c*/I  /.c*/I
1550  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1551  No options  No options
1552  No first char  No first char
1553  No need char  No need char
 Capturing subpattern count = 0  
  0: C  
 Partial matching not supported  
  0: P  
 No options  
  0: N  
 No first char  
  0: N  
 No need char  
  0: N  
1554    
1555  /ac*/I  /ac*/I
1556  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
 No options  
 First char = 'a'  
 No need char  
 Capturing subpattern count = 0  
  0: a  
 Partial matching not supported  
  0: a  
1557  No options  No options
 No match  
1558  First char = 'a'  First char = 'a'
  0: a  
1559  No need char  No need char
  0: a  
1560    
1561  /(a.c*|b.c*)/I  /(a.c*|b.c*)/I
1562  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
 No options  
 No first char  
 No need char  
 Capturing subpattern count = 1  
  0: ap  
  1: ap  
 Partial matching not supported  
  0: ar  
  1: ar  
1563  No options  No options
 No match  
1564  No first char  No first char
  0: ar  
  1: ar  
1565  No need char  No need char
  0: ar  
  1: ar  
1566    
1567  /a.c*|aba/I  /a.c*|aba/I
1568  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
 No options  
 First char = 'a'  
 No need char  
 Capturing subpattern count = 0  
  0: ap  
 Partial matching not supported  
  0: ar  
1569  No options  No options
 No match  
1570  First char = 'a'  First char = 'a'
  0: ar  
1571  No need char  No need char
  0: ar  
1572    
1573  /.+a/I  /.+a/I
1574  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
1575  No options  No options
1576  No first char  No first char
1577  Need char = 'a'  Need char = 'a'
 Capturing subpattern count = 0  
  0: Capturing subpa  
 Partial matching not supported  
  0: Partial ma  
 No options  
 No match  
 No first char  
  0: No first cha  
 Need char = 'a'  
  0: Need char = 'a  
1578    
1579  /(?=abcda)a.*/I  /(?=abcda)a.*/I
1580  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
 No options  
 First char = 'a'  
 Need char = 'a'  
 Capturing subpattern count = 0  
 No match  
 Partial matching not supported  
 No match  
1581  No options  No options
 No match  
1582  First char = 'a'  First char = 'a'
 No match  
1583  Need char = 'a'  Need char = 'a'
 No match  
1584    
1585  /(?=a)a.*/I  /(?=a)a.*/I
1586  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
 No options  
 First char = 'a'  
 No need char  
 Capturing subpattern count = 0  
  0: apturing subpattern count = 0  
 Partial matching not supported  
  0: artial matching not supported  
1587  No options  No options
 No match  
1588  First char = 'a'  First char = 'a'
  0: ar = 'a'  
1589  No need char  No need char
  0: ar  
1590    
1591  /a(b)*/I  /a(b)*/I
1592  Capturing subpattern count = 1  Capturing subpattern count = 1
1593  No options  No options
1594  First char = 'a'  First char = 'a'
1595  No need char  No need char
 Capturing subpattern count = 1  
  0: a  
 No options  
 No match  
 First char = 'a'  
  0: a  
 No need char  
  0: a  
1596    
1597  /a\d*/I  /a\d*/I
1598  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
 No options  
 First char = 'a'  
 No need char  
 Capturing subpattern count = 0  
  0: a  
 Partial matching not supported  
  0: a  
1599  No options  No options
 No match  
1600  First char = 'a'  First char = 'a'
  0: a  
1601  No need char  No need char
  0: a  
1602    
1603  /ab\d*/I  /ab\d*/I
1604  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
 No options  
 First char = 'a'  
 Need char = 'b'  
 Capturing subpattern count = 0  
 No match  
 Partial matching not supported  
 No match  
1605  No options  No options
 No match  
1606  First char = 'a'  First char = 'a'
 No match  
1607  Need char = 'b'  Need char = 'b'
 No match  
1608    
1609  /a(\d)*/I  /a(\d)*/I
1610  Capturing subpattern count = 1  Capturing subpattern count = 1
1611  No options  No options
1612  First char = 'a'  First char = 'a'
1613  No need char  No need char
 Capturing subpattern count = 1  
  0: a  
 No options  
 No match  
 First char = 'a'  
  0: a  
 No need char  
  0: a  
1614    
1615  /abcde{0,0}/I  /abcde{0,0}/I
1616  Capturing subpattern count = 0  Capturing subpattern count = 0
1617  No options  No options
1618  First char = 'a'  First char = 'a'
1619  Need char = 'd'  Need char = 'd'
 Capturing subpattern count = 0  
 No match  
 No options  
 No match  
 First char = 'a'  
 No match  
 Need char = 'd'  
 No match  
1620    
1621  /ab\d+/I  /ab\d+/I
1622  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
 No options  
 First char = 'a'  
 Need char = 'b'  
 Capturing subpattern count = 0  
 No match  
 Partial matching not supported  
 No match  
1623  No options  No options
 No match  
1624  First char = 'a'  First char = 'a'
 No match  
1625  Need char = 'b'  Need char = 'b'
 No match  
1626    
1627  /a(?(1)b)/I  /a(?(1)b)(.)/I
1628  Capturing subpattern count = 0  Capturing subpattern count = 1
 No options  
 First char = 'a'  
 No need char  
 Capturing subpattern count = 0  
  0: a  
1629  No options  No options
 No match  
1630  First char = 'a'  First char = 'a'
  0: a  
1631  No need char  No need char
  0: a  
1632    
1633  /a(?(1)bag|big)/I  /a(?(1)bag|big)(.)/I
1634  Capturing subpattern count = 0  Capturing subpattern count = 1
 No options  
 First char = 'a'  
 Need char = 'g'  
 Capturing subpattern count = 0  
 No match  
1635  No options  No options
 No match  
1636  First char = 'a'  First char = 'a'
 No match  
1637  Need char = 'g'  Need char = 'g'
 No match  
1638    
1639  /a(?(1)bag|big)*/I  /a(?(1)bag|big)*(.)/I
1640  Capturing subpattern count = 0  Capturing subpattern count = 1
 No options  
 First char = 'a'  
 No need char  
 Capturing subpattern count = 0  
  0: a  
1641  No options  No options
 No match  
1642  First char = 'a'  First char = 'a'
  0: a  
1643  No need char  No need char
  0: a  
1644    
1645  /a(?(1)bag|big)+/I  /a(?(1)bag|big)+(.)/I
1646  Capturing subpattern count = 0  Capturing subpattern count = 1
 No options  
 First char = 'a'  
 Need char = 'g'  
 Capturing subpattern count = 0  
 No match  
1647  No options  No options
 No match  
1648  First char = 'a'  First char = 'a'
 No match  
1649  Need char = 'g'  Need char = 'g'
 No match  
1650    
1651  /a(?(1)b..|b..)/I  /a(?(1)b..|b..)(.)/I
1652  Capturing subpattern count = 0  Capturing subpattern count = 1
 No options  
 First char = 'a'  
 Need char = 'b'  
 Capturing subpattern count = 0  
 No match  
1653  No options  No options
 No match  
1654  First char = 'a'  First char = 'a'
 No match  
1655  Need char = 'b'  Need char = 'b'
 No match  
1656    
1657  /ab\d{0}e/I  /ab\d{0}e/I
1658  Capturing subpattern count = 0  Capturing subpattern count = 0
1659  No options  No options
1660  First char = 'a'  First char = 'a'
1661  Need char = 'e'  Need char = 'e'
 Capturing subpattern count = 0  
 No match  
 No options  
 No match  
 First char = 'a'  
 No match  
 Need char = 'e'  
 No match  
1662    
1663  /a?b?/I  /a?b?/I
1664  Capturing subpattern count = 0  Capturing subpattern count = 0
1665  No options  No options
1666  No first char  No first char
1667  No need char  No need char
 Capturing subpattern count = 0  
  0:  
 No options  
  0:  
 No first char  
  0:  
 No need char  
  0:  
1668      a      a
1669   0: a   0: a
  0: a  
  0:  
1670      b      b
1671   0: b   0: b
  0: b  
  0:  
1672      ab      ab
1673   0: ab   0: ab
  0: ab  
  0:  
1674      \      \
1675   0:   0:
  0:  
  0:  
1676      *** Failers      *** Failers
1677   0:   0:
  0:  
  0:  
1678      \N      \N
1679  No match  No match
 No match  
  0:  
1680    
1681  /|-/I  /|-/I
1682  Capturing subpattern count = 0  Capturing subpattern count = 0
1683  No options  No options
1684  No first char  No first char
1685  No need char  No need char
 Capturing subpattern count = 0  
  0:  
 No options  
  0:  
 No first char  
  0:  
 No need char  
  0:  
1686      abcd      abcd
1687   0:   0:
  0:  
  0:  
1688      -abc      -abc
1689   0:   0:
  0:  
  0:  
1690      \Nab-c      \Nab-c
1691   0: -   0: -
  0: -  
  0:  
1692      *** Failers      *** Failers
1693   0:   0:
  0:  
  0:  
1694      \Nabc      \Nabc
1695  No match  No match
 No match  
  0:  
1696    
1697  /a*(b+)(z)(z)/IP  /a*(b+)(z)(z)/P
1698      aaaabbbbzzzz      aaaabbbbzzzz
1699   0: aaaabbbbzz   0: aaaabbbbzz
1700   1: bbbb   1: bbbb
1701   2: z   2: z
1702   3: z   3: z
  0: aaaabbbbzz  
  0: aaaabbbbzz  
  1: bbbb  
  2: z  
  3: z  
  1: bbbb  
 No match: POSIX code 17: match failed  
  2: z  
 No match: POSIX code 17: match failed  
  3: z  
 No match: POSIX code 17: match failed  
1703      aaaabbbbzzzz\O0      aaaabbbbzzzz\O0
1704      aaaabbbbzzzz\O1      aaaabbbbzzzz\O1
1705   0: aaaabbbbzz   0: aaaabbbbzz
  0: aaaabbbbzz  
  0: aaaabbbbzz  
  1: bbbb  
  2: z  
  3: z  
1706      aaaabbbbzzzz\O2      aaaabbbbzzzz\O2
1707   0: aaaabbbbzz   0: aaaabbbbzz
1708   1: bbbb   1: bbbb
1709   0: aaaabbbbzz      aaaabbbbzzzz\O3
1710   0: aaaabbbbzz   0: aaaabbbbzz
1711   1: bbbb   1: bbbb
1712   2: z   2: z
1713   3: z      aaaabbbbzzzz\O4
  1: bbbb  
 No match: POSIX code 17: match failed  
     aaaabbbbzzzz\O3  
1714   0: aaaabbbbzz   0: aaaabbbbzz
1715   1: bbbb   1: bbbb
1716   2: z   2: z
1717   0: aaaabbbbzz   3: z
1718        aaaabbbbzzzz\O5
1719   0: aaaabbbbzz   0: aaaabbbbzz
1720   1: bbbb   1: bbbb
1721   2: z   2: z
1722   3: z   3: z
  1: bbbb  
 No match: POSIX code 17: match failed  
  2: z  
 No match: POSIX code 17: match failed  
     aaaabbbbzzzz\O4  
  0: aaaabbbbzz  
  1: bbbb  
  2: z  
  3: z  
  0: aaaabbbbzz  
  0: aaaabbbbzz  
  1: bbbb  
  2: z  
  3: z  
  1: bbbb  
 No match: POSIX code 17: match failed  
  2: z  
 No match: POSIX code 17: match failed  
  3: z  
 No match: POSIX code 17: match failed  
     aaaabbbbzzzz\O5  
  0: aaaabbbbzz  
  1: bbbb  
  2: z  
  3: z  
  0: aaaabbbbzz  
  0: aaaabbbbzz  
  1: bbbb  
  2: z  
  3: z  
  1: bbbb  
 No match: POSIX code 17: match failed  
  2: z  
 No match: POSIX code 17: match failed  
  3: z  
 No match: POSIX code 17: match failed  
1723    
1724  /^.?abcd/IS  /^.?abcd/IS
1725  Capturing subpattern count = 0  Capturing subpattern count = 0
1726  Options: anchored  Options: anchored
1727  No first char  No first char
1728  Need char = 'd'  Need char = 'd'
1729  Study returned NULL  Subject length lower bound = 4
1730  Capturing subpattern count = 0  No set of starting bytes
 No match  
 Options: anchored  
 No match  
 No first char  
 No match  
 Need char = 'd'  
 No match  
 Study returned NULL  
 No match  
1731    
1732  /\(             # ( at start  /\(             # ( at start
1733    (?:           # Non-capturing bracket    (?:           # Non-capturing bracket
# Line 3973  No match Line 1738  No match
1738    \)            # Closing )    \)            # Closing )
1739    /Ix    /Ix
1740  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
 Options: extended  
 First char = '('  
 Need char = ')'  
 Capturing subpattern count = 0  
 No match  
 Partial matching not supported  
 No match  
1741  Options: extended  Options: extended
 No match  
1742  First char = '('  First char = '('
 No match  
1743  Need char = ')'  Need char = ')'
 No match  
1744      (abcd)      (abcd)
1745   0: (abcd)   0: (abcd)
  0: (abcd)  
  0: (abcd)  
1746      (abcd)xyz      (abcd)xyz
1747   0: (abcd)   0: (abcd)
  0: (abcd)  
  0: (abcd)  
1748      xyz(abcd)      xyz(abcd)
1749   0: (abcd)   0: (abcd)
  0: (abcd)  
  0: (abcd)  
1750      (ab(xy)cd)pqr      (ab(xy)cd)pqr
1751   0: (ab(xy)cd)   0: (ab(xy)cd)
  0: (ab(xy)cd)  
  0: (ab(xy)cd)  
1752      (ab(xycd)pqr      (ab(xycd)pqr
1753   0: (xycd)   0: (xycd)
  0: (xycd)  
  0: (xycd)  
1754      () abc ()      () abc ()
1755   0: ()   0: ()
  0: ()  
  0: ()  
1756      12(abcde(fsh)xyz(foo(bar))lmno)89      12(abcde(fsh)xyz(foo(bar))lmno)89
1757   0: (abcde(fsh)xyz(foo(bar))lmno)   0: (abcde(fsh)xyz(foo(bar))lmno)
  0: (abcde(fsh)xyz(foo(bar))lmno)  
  0: (abcde(fsh)xyz(foo(bar))lmno)  
1758      *** Failers      *** Failers
1759  No match  No match
 No match  
 No match  
1760      abcd      abcd
1761  No match  No match
 No match  
 No match  
1762      abcd)      abcd)
1763  No match  No match
 No match  
 No match  
1764      (abcd      (abcd
1765  No match  No match
 No match  
 No match  
1766    
1767  /\(  ( (?>[^()]+) | (?R) )* \) /Ixg  /\(  ( (?>[^()]+) | (?R) )* \) /Ixg
1768  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
 Options: extended  
 First char = '('  
 Need char = ')'  
 Capturing subpattern count = 1  
 No match  
 Partial matching not supported  
 No match  
1769  Options: extended  Options: extended
 No match  
1770  First char = '('  First char = '('
 No match  
1771  Need char = ')'  Need char = ')'
 No match  
1772      (ab(xy)cd)pqr      (ab(xy)cd)pqr
1773   0: (ab(xy)cd)   0: (ab(xy)cd)
1774   1: cd   1: cd
  0: (ab(xy)cd)  
  0: (ab(xy)cd)  
  1: cd  
  1: cd  
 No match  
1775      1(abcd)(x(y)z)pqr      1(abcd)(x(y)z)pqr
1776   0: (abcd)   0: (abcd)
1777   1: abcd   1: abcd
1778   0: (x(y)z)   0: (x(y)z)
1779   1: z   1: z
  0: (abcd)  
  0: (abcd)  
  1: abcd  
  1: abcd  
 No match  
  0: (x(y)z)  
  0: (x(y)z)  
  1: z  
  1: z  
 No match  
1780    
1781  /\(  (?: (?>[^()]+) | (?R) ) \) /Ix  /\(  (?: (?>[^()]+) | (?R) ) \) /Ix
1782  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
 Options: extended  
 First char = '('  
 Need char = ')'  
 Capturing subpattern count = 0  
 No match  
 Partial matching not supported  
 No match  
1783  Options: extended  Options: extended
 No match  
1784  First char = '('  First char = '('
 No match  
1785  Need char = ')'  Need char = ')'
 No match  
1786      (abcd)      (abcd)
1787   0: (abcd)   0: (abcd)
  0: (abcd)  
  0: (abcd)  
1788      (ab(xy)cd)      (ab(xy)cd)
1789   0: (xy)   0: (xy)
  0: (xy)  
  0: (xy)  
1790      (a(b(c)d)e)      (a(b(c)d)e)
1791   0: (c)   0: (c)
  0: (c)  
  0: (c)  
1792      ((ab))      ((ab))
1793   0: ((ab))   0: ((ab))
  0: ((ab))  
  0: ((ab))  
1794      *** Failers      *** Failers
1795  No match  No match
 No match  
 No match  
1796      ()      ()
1797  No match  No match
 No match  
 No match  
1798    
1799  /\(  (?: (?>[^()]+) | (?R) )? \) /Ix  /\(  (?: (?>[^()]+) | (?R) )? \) /Ix
1800  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
 Options: extended  
 First char = '('  
 Need char = ')'  
 Capturing subpattern count = 0  
 No match  
 Partial matching not supported  
 No match  
1801  Options: extended  Options: extended
 No match  
1802  First char = '('  First char = '('
 No match  
1803  Need char = ')'  Need char = ')'
 No match  
1804      ()      ()
1805   0: ()   0: ()
  0: ()  
  0: ()  
1806      12(abcde(fsh)xyz(foo(bar))lmno)89      12(abcde(fsh)xyz(foo(bar))lmno)89
1807   0: (fsh)   0: (fsh)
  0: (fsh)  
  0: (fsh)  
1808    
1809  /\(  ( (?>[^()]+) | (?R) )* \) /Ix  /\(  ( (?>[^()]+) | (?R) )* \) /Ix
1810  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
 Options: extended  
 First char = '('  
 Need char = ')'  
 Capturing subpattern count = 1  
 No match  
 Partial matching not supported  
 No match  
1811  Options: extended  Options: extended
 No match  
1812  First char = '('  First char = '('
 No match  
1813  Need char = ')'  Need char = ')'
 No match  
1814      (ab(xy)cd)      (ab(xy)cd)
1815   0: (ab(xy)cd)   0: (ab(xy)cd)
1816   1: cd   1: cd
  0: (ab(xy)cd)  
  0: (ab(xy)cd)  
  1: cd  
  1: cd  
 No match  
1817    
1818  /\( ( ( (?>[^()]+) | (?R) )* ) \) /Ix  /\( ( ( (?>[^()]+) | (?R) )* ) \) /Ix
1819  Capturing subpattern count = 2  Capturing subpattern count = 2
 Partial matching not supported  
 Options: extended  
 First char = '('  
 Need char = ')'  
 Capturing subpattern count = 2  
 No match  
 Partial matching not supported  
 No match  
1820  Options: extended  Options: extended
 No match  
1821  First char = '('  First char = '('
 No match  
1822  Need char = ')'  Need char = ')'
 No match  
1823      (ab(xy)cd)      (ab(xy)cd)
1824   0: (ab(xy)cd)   0: (ab(xy)cd)
1825   1: ab(xy)cd   1: ab(xy)cd
1826   2: cd   2: cd
  0: (ab(xy)cd)  
  0: (ab(xy)cd)  
  1: ab(xy)cd  
  2: cd  
  1: ab(xy)cd  
  0: (xy)  
  1: xy  
  2: xy  
  2: cd  
 No match  
1827    
1828  /\( (123)? ( ( (?>[^()]+) | (?R) )* ) \) /Ix  /\( (123)? ( ( (?>[^()]+) | (?R) )* ) \) /Ix
1829  Capturing subpattern count = 3  Capturing subpattern count = 3
 Partial matching not supported  
 Options: extended  
 First char = '('  
 Need char = ')'  
 Capturing subpattern count = 3  
 No match  
 Partial matching not supported  
 No match  
1830  Options: extended  Options: extended
 No match  
1831  First char = '('  First char = '('
 No match  
1832  Need char = ')'  Need char = ')'
 No match  
1833      (ab(xy)cd)      (ab(xy)cd)
1834   0: (ab(xy)cd)   0: (ab(xy)cd)
1835   1: <unset>   1: <unset>
1836   2: ab(xy)cd   2: ab(xy)cd
1837   3: cd   3: cd
  0: (ab(xy)cd)  
  0: (ab(xy)cd)  
  1: <unset>  
  2: ab(xy)cd  
  3: cd  
  1: <unset>  
 No match  
  2: ab(xy)cd  
  0: (xy)  
  1: <unset>  
  2: xy  
  3: xy  
  3: cd  
 No match  
1838      (123ab(xy)cd)      (123ab(xy)cd)
1839   0: (123ab(xy)cd)   0: (123ab(xy)cd)
1840   1: 123   1: 123
1841   2: ab(xy)cd   2: ab(xy)cd
1842   3: cd   3: cd
  0: (123ab(xy)cd)  
  0: (123ab(xy)cd)  
  1: 123  
  2: ab(xy)cd  
  3: cd  
  1: 123  
 No match  
  2: ab(xy)cd  
  0: (xy)  
  1: <unset>  
  2: xy  
  3: xy  
  3: cd  
 No match  
1843    
1844  /\( ( (123)? ( (?>[^()]+) | (?R) )* ) \) /Ix  /\( ( (123)? ( (?>[^()]+) | (?R) )* ) \) /Ix
1845  Capturing subpattern count = 3  Capturing subpattern count = 3
 Partial matching not supported  
 Options: extended  
 First char = '('  
 Need char = ')'  
 Capturing subpattern count = 3  
 No match  
 Partial matching not supported  
 No match  
1846  Options: extended  Options: extended
 No match  
1847  First char = '('  First char = '('
 No match  
1848  Need char = ')'  Need char = ')'
 No match  
1849      (ab(xy)cd)      (ab(xy)cd)
1850   0: (ab(xy)cd)   0: (ab(xy)cd)
1851   1: ab(xy)cd   1: ab(xy)cd
1852   2: <unset>   2: <unset>
1853   3: cd   3: cd
  0: (ab(xy)cd)  
  0: (ab(xy)cd)  
  1: ab(xy)cd  
  2: <unset>  
  3: cd  
  1: ab(xy)cd  
  0: (xy)  
  1: xy  
  2: <unset>  
  3: xy  
  2: <unset>  
 No match  
  3: cd  
 No match  
1854      (123ab(xy)cd)      (123ab(xy)cd)
1855   0: (123ab(xy)cd)   0: (123ab(xy)cd)
1856   1: 123ab(xy)cd   1: 123ab(xy)cd
1857   2: 123   2: 123
1858   3: cd   3: cd
  0: (123ab(xy)cd)  
  0: (123ab(xy)cd)  
  1: 123ab(xy)cd  
  2: 123  
  3: cd  
  1: 123ab(xy)cd  
  0: (xy)  
  1: xy  
  2: <unset>  
  3: xy  
  2: 123  
 No match  
  3: cd  
 No match  
1859    
1860  /\( (((((((((( ( (?>[^()]+) | (?R) )* )))))))))) \) /Ix  /\( (((((((((( ( (?>[^()]+) | (?R) )* )))))))))) \) /Ix
1861  Capturing subpattern count = 11  Capturing subpattern count = 11
 Partial matching not supported  
 Options: extended  
 First char = '('  
 Need char = ')'  
 Capturing subpattern count = 11  
 No match  
 Partial matching not supported  
 No match  
1862  Options: extended  Options: extended
 No match  
1863  First char = '('  First char = '('
 No match  
1864  Need char = ')'  Need char = ')'
 No match  
1865      (ab(xy)cd)      (ab(xy)cd)
1866   0: (ab(xy)cd)   0: (ab(xy)cd)
1867   1: ab(xy)cd   1: ab(xy)cd
# Line 4333  No match Line 1875  No match
1875   9: ab(xy)cd   9: ab(xy)cd
1876  10: ab(xy)cd  10: ab(xy)cd
1877  11: cd  11: cd
  0: (ab(xy)cd)  
  0: (ab(xy)cd)  
  1: ab(xy)cd  
  2: ab(xy)cd  
  3: ab(xy)cd  
  4: ab(xy)cd  
  5: ab(xy)cd  
  6: ab(xy)cd  
  7: ab(xy)cd  
  8: ab(xy)cd  
  9: ab(xy)cd  
 10: ab(xy)cd  
 11: cd  
  1: ab(xy)cd  
  0: (xy)  
  1: xy  
  2: xy  
  3: xy  
  4: xy  
  5: xy  
  6: xy  
  7: xy  
  8: xy  
  9: xy  
 10: xy  
 11: xy  
  2: ab(xy)cd  
  0: (xy)  
  1: xy  
  2: xy  
  3: xy  
  4: xy  
  5: xy  
  6: xy  
  7: xy  
  8: xy  
  9: xy  
 10: xy  
 11: xy  
  3: ab(xy)cd  
  0: (xy)  
  1: xy  
  2: xy  
  3: xy  
  4: xy  
  5: xy  
  6: xy  
  7: xy  
  8: xy  
  9: xy  
 10: xy  
 11: xy  
  4: ab(xy)cd  
  0: (xy)  
  1: xy  
  2: xy  
  3: xy  
  4: xy  
  5: xy  
  6: xy  
  7: xy  
  8: xy  
  9: xy  
 10: xy  
 11: xy  
  5: ab(xy)cd  
  0: (xy)  
  1: xy  
  2: xy  
  3: xy  
  4: xy  
  5: xy  
  6: xy  
  7: xy  
  8: xy  
  9: xy  
 10: xy  
 11: xy  
  6: ab(xy)cd  
  0: (xy)  
  1: xy  
  2: xy  
  3: xy  
  4: xy  
  5: xy  
  6: xy  
  7: xy  
  8: xy  
  9: xy  
 10: xy  
 11: xy  
  7: ab(xy)cd  
  0: (xy)  
  1: xy  
  2: xy  
  3: xy  
  4: xy  
  5: xy  
  6: xy  
  7: xy  
  8: xy  
  9: xy  
 10: xy  
 11: xy  
  8: ab(xy)cd  
  0: (xy)  
  1: xy  
  2: xy  
  3: xy  
  4: xy  
  5: xy  
  6: xy  
  7: xy  
  8: xy  
  9: xy  
 10: xy  
 11: xy  
  9: ab(xy)cd  
  0: (xy)  
  1: xy  
  2: xy  
  3: xy  
  4: xy  
  5: xy  
  6: xy  
  7: xy  
  8: xy  
  9: xy  
 10: xy  
 11: xy  
 10: ab(xy)cd  
  0: (xy)  
  1: xy  
  2: xy  
  3: xy  
  4: xy  
  5: xy  
  6: xy  
  7: xy  
  8: xy  
  9: xy  
 10: xy  
 11: xy  
 11: cd  
 No match  
1878    
1879  /\( ( ( (?>[^()<>]+) | ((?>[^()]+)) | (?R) )* ) \) /Ix  /\( ( ( (?>[^()<>]+) | ((?>[^()]+)) | (?R) )* ) \) /Ix
1880  Capturing subpattern count = 3  Capturing subpattern count = 3
 Partial matching not supported  
 Options: extended  
 First char = '('  
 Need char = ')'  
 Capturing subpattern count = 3  
 No match  
 Partial matching not supported  
 No match  
1881  Options: extended  Options: extended
 No match  
1882  First char = '('  First char = '('
 No match  
1883  Need char = ')'  Need char = ')'
 No match  
1884      (abcd(xyz<p>qrs)123)      (abcd(xyz<p>qrs)123)
1885   0: (abcd(xyz<p>qrs)123)   0: (abcd(xyz<p>qrs)123)
1886   1: abcd(xyz<p>qrs)123   1: abcd(xyz<p>qrs)123
1887   2: 123   2: 123
  3: <unset>  
  0: (abcd(xyz<p>qrs)123)  
  0: (abcd(xyz<p>qrs)123)  
  1: abcd(xyz<p>qrs)123  
  2: 123  
  3: <unset>  
  1: abcd(xyz<p>qrs)123  
  0: (xyz<p>qrs)  
  1: xyz<p>qrs  
  2: <p>qrs  
  3: <p>qrs  
  2: 123  
 No match  
  3: <unset>  
 No match  
1888    
1889  /\( ( ( (?>[^()]+) | ((?R)) )* ) \) /Ix  /\( ( ( (?>[^()]+) | ((?R)) )* ) \) /Ix
1890  Capturing subpattern count = 3  Capturing subpattern count = 3
 Partial matching not supported  
 Options: extended  
 First char = '('  
 Need char = ')'  
 Capturing subpattern count = 3  
 No match  
 Partial matching not supported  
 No match  
1891  Options: extended  Options: extended
 No match  
1892  First char = '('  First char = '('
 No match  
1893  Need char = ')'  Need char = ')'
 No match  
1894      (ab(cd)ef)      (ab(cd)ef)
1895   0: (ab(cd)ef)   0: (ab(cd)ef)
1896   1: ab(cd)ef   1: ab(cd)ef
1897   2: ef   2: ef
1898   3: (cd)   3: (cd)
  0: (ab(cd)ef)  
  0: (ab(cd)ef)  
  1: ab(cd)ef  
  2: ef  
  3: (cd)  
  1: ab(cd)ef  
  0: (cd)  
  1: cd  
  2: cd  
  2: ef  
 No match  
  3: (cd)  
  0: (cd)  
  1: cd  
  2: cd  
1899      (ab(cd(ef)gh)ij)      (ab(cd(ef)gh)ij)
1900   0: (ab(cd(ef)gh)ij)   0: (ab(cd(ef)gh)ij)
1901   1: ab(cd(ef)gh)ij   1: ab(cd(ef)gh)ij
1902   2: ij   2: ij
1903   3: (cd(ef)gh)   3: (cd(ef)gh)
  0: (ab(cd(ef)gh)ij)  
  0: (ab(cd(ef)gh)ij)  
  1: ab(cd(ef)gh)ij  
  2: ij  
  3: (cd(ef)gh)  
  1: ab(cd(ef)gh)ij  
  0: (cd(ef)gh)  
  1: cd(ef)gh  
  2: gh  
  3: (ef)  
  2: ij  
 No match  
  3: (cd(ef)gh)  
  0: (cd(ef)gh)  
  1: cd(ef)gh  
  2: gh  
  3: (ef)  
1904    
1905  /^[[:alnum:]]/DZ  /^[[:alnum:]]/DZ
1906  ------------------------------------------------------------------  ------------------------------------------------------------------
1907          Bra 0          Bra
1908          ^          ^
1909          [0-9A-Za-z]          [0-9A-Za-z]
1910          Ket          Ket
# Line 4586  Capturing subpattern count = 0 Line 1914  Capturing subpattern count = 0
1914  Options: anchored  Options: anchored
1915  No first char  No first char
1916  No need char  No need char
1917    
1918    /^[[:^alnum:]]/DZ
1919  ------------------------------------------------------------------  ------------------------------------------------------------------
1920  No match          Bra
         Bra 0  
  0: B  
1921          ^          ^
1922  No match          [\x00-/:-@[-`{-\xff] (neg)
         [0-9A-Za-z]  
 No match  
1923          Ket          Ket
  0: K  
1924          End          End
  0: E  
1925  ------------------------------------------------------------------  ------------------------------------------------------------------
 No match  
1926  Capturing subpattern count = 0  Capturing subpattern count = 0
  0: C  
1927  Options: anchored  Options: anchored
  0: O  
1928  No first char  No first char
  0: N  
1929  No need char  No need char
  0: N  
1930    
1931  /^[[:^alnum:]]/DZ  /^[[:alpha:]]/DZ
1932  ------------------------------------------------------------------  ------------------------------------------------------------------
1933          Bra 0          Bra
1934          ^          ^
1935          [\x00-/:-@[-`{-\xff]          [A-Za-z]
1936          Ket          Ket
1937          End          End
1938  ------------------------------------------------------------------  ------------------------------------------------------------------
# Line 4621  Capturing subpattern count = 0 Line 1940  Capturing subpattern count = 0
1940  Options: anchored  Options: anchored
1941  No first char  No first char
1942  No need char  No need char
1943    
1944    /^[[:^alpha:]]/DZ
1945  ------------------------------------------------------------------  ------------------------------------------------------------------
1946   0: -          Bra
         Bra 0  
 No match  
1947          ^          ^
1948   0: ^          [\x00-@[-`{-\xff] (neg)
         [\x00-/:-@[-`{-\xff]  
  0: [  
1949          Ket          Ket
 No match  
1950          End          End
 No match  
1951  ------------------------------------------------------------------  ------------------------------------------------------------------
  0: -  
1952  Capturing subpattern count = 0  Capturing subpattern count = 0
 No match  
1953  Options: anchored  Options: anchored
 No match  
1954  No first char  No first char
 No match  
1955  No need char  No need char
 No match  
1956    
1957  /^[[:alpha:]]/DZ  /[_[:alpha:]]/IS
1958    Capturing subpattern count = 0
1959    No options
1960    No first char
1961    No need char
1962    Subject length lower bound = 1
1963    Starting byte set: A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
1964      _ 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
1965    
1966    /^[[:ascii:]]/DZ
1967  ------------------------------------------------------------------  ------------------------------------------------------------------
1968          Bra 0          Bra
1969          ^          ^
1970          [A-Za-z]          [\x00-\x7f]
1971          Ket          Ket
1972          End          End
1973  ------------------------------------------------------------------  ------------------------------------------------------------------
# Line 4656  Capturing subpattern count = 0 Line 1975  Capturing subpattern count = 0
1975  Options: anchored  Options: anchored
1976  No first char  No first char
1977  No need char  No need char
1978    
1979    /^[[:^ascii:]]/DZ
1980  ------------------------------------------------------------------  ------------------------------------------------------------------
1981  No match          Bra
         Bra 0  
  0: B  
1982          ^          ^
1983  No match          [\x80-\xff] (neg)
         [A-Za-z]  
 No match  
1984          Ket          Ket
  0: K  
1985          End          End
  0: E  
1986  ------------------------------------------------------------------  ------------------------------------------------------------------
 No match  
1987  Capturing subpattern count = 0  Capturing subpattern count = 0
  0: C  
1988  Options: anchored  Options: anchored
  0: O  
1989  No first char  No first char
  0: N  
1990  No need char  No need char
  0: N  
1991    
1992  /^[[:^alpha:]]/DZ  /^[[:blank:]]/DZ
1993  ------------------------------------------------------------------  ------------------------------------------------------------------
1994          Bra 0          Bra
1995          ^          ^
1996          [\x00-@[-`{-\xff]          [\x09 ]
1997          Ket          Ket
1998          End          End
1999  ------------------------------------------------------------------  ------------------------------------------------------------------
# Line 4691  Capturing subpattern count = 0 Line 2001  Capturing subpattern count = 0
2001  Options: anchored  Options: anchored
2002  No first char  No first char
2003  No need char  No need char
2004    
2005    /^[[:^blank:]]/DZ
2006  ------------------------------------------------------------------  ------------------------------------------------------------------
2007   0: -          Bra
         Bra 0  
 No match  
2008          ^          ^
2009   0: ^          [\x00-\x08\x0a-\x1f!-\xff] (neg)
         [\x00-@[-`{-\xff]  
  0: [  
2010          Ket          Ket
 No match  
2011          End          End
 No match  
2012  ------------------------------------------------------------------  ------------------------------------------------------------------
  0: -  
2013  Capturing subpattern count = 0  Capturing subpattern count = 0
 No match  
2014  Options: anchored  Options: anchored
 No match  
2015  No first char  No first char
 No match  
2016  No need char  No need char
 No match  
2017    
2018  /[_[:alpha:]]/IS  /[\n\x0b\x0c\x0d[:blank:]]/IS
 Capturing subpattern count = 0  
 No options  
 No first char  
 No need char  
 Starting byte set: A B C D E F G H I J K L M N O P Q R S T U V W X Y Z  
   _ 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  
2019  Capturing subpattern count = 0  Capturing subpattern count = 0
2020   0: C  Contains explicit CR or LF match
2021  No options  No options
  0: N  
2022  No first char  No first char
  0: N  
2023  No need char  No need char
2024   0: N  Subject length lower bound = 1
2025  Starting byte set: A B C D E F G H I J K L M N O P Q R S T U V W X Y Z  Starting byte set: \x09 \x0a \x0b \x0c \x0d \x20
  0: S  
   _ 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  
  0: _  
2026    
2027  /^[[:ascii:]]/DZ  /^[[:cntrl:]]/DZ
2028  ------------------------------------------------------------------  ------------------------------------------------------------------
2029          Bra 0          Bra
2030          ^          ^
2031          [\x00-\x7f]          [\x00-\x1f\x7f]
2032          Ket          Ket
2033          End          End
2034  ------------------------------------------------------------------  ------------------------------------------------------------------
# Line 4746  Capturing subpattern count = 0 Line 2036  Capturing subpattern count = 0
2036  Options: anchored  Options: anchored
2037  No first char  No first char
2038  No need char  No need char
2039    
2040    /^[[:digit:]]/DZ
2041  ------------------------------------------------------------------  ------------------------------------------------------------------
2042   0: -          Bra
         Bra 0  
  0: B  
2043          ^          ^
2044   0: ^          [0-9]
         [\x00-\x7f]  
  0: [  
2045          Ket          Ket
  0: K  
2046          End          End
  0: E  
2047  ------------------------------------------------------------------  ------------------------------------------------------------------
  0: -  
2048  Capturing subpattern count = 0  Capturing subpattern count = 0
  0: C  
2049  Options: anchored  Options: anchored
  0: O  
2050  No first char  No first char
  0: N  
2051  No need char  No need char
  0: N  
2052    
2053  /^[[:^ascii:]]/DZ  /^[[:graph:]]/DZ
2054  ------------------------------------------------------------------  ------------------------------------------------------------------
2055          Bra 0          Bra
2056          ^          ^
2057          [\x80-\xff]          [!-~]
2058          Ket          Ket
2059          End          End
2060  ------------------------------------------------------------------  ------------------------------------------------------------------
# Line 4781  Capturing subpattern count = 0 Line 2062  Capturing subpattern count = 0
2062  Options: anchored  Options: anchored
2063  No first char  No first char
2064  No need char  No need char
2065    
2066    /^[[:lower:]]/DZ
2067  ------------------------------------------------------------------  ------------------------------------------------------------------
2068  No match          Bra
         Bra 0  
 No match  
2069          ^          ^
2070  No match          [a-z]
         [\x80-\xff]  
 No match  
2071          Ket          Ket
 No match  
2072          End          End
 No match  
2073  ------------------------------------------------------------------  ------------------------------------------------------------------
 No match  
2074  Capturing subpattern count = 0  Capturing subpattern count = 0
 No match  
2075  Options: anchored  Options: anchored
 No match  
2076  No first char  No first char
 No match  
2077  No need char  No need char
 No match  
2078    
2079  /^[[:blank:]]/DZ  /^[[:print:]]/DZ
2080  ------------------------------------------------------------------  ------------------------------------------------------------------
2081          Bra 0          Bra
2082          ^          ^
2083          [\x09 ]          [ -~]
2084          Ket          Ket
2085          End          End
2086  ------------------------------------------------------------------  ------------------------------------------------------------------
# Line 4816  Capturing subpattern count = 0 Line 2088  Capturing subpattern count = 0
2088  Options: anchored  Options: anchored
2089  No first char  No first char
2090  No need char  No need char
2091    
2092    /^[[:punct:]]/DZ
2093  ------------------------------------------------------------------  ------------------------------------------------------------------
2094  No match          Bra
         Bra 0  
 No match  
2095          ^          ^
2096  No match          [!-/:-@[-`{-~]
         [\x09 ]  
 No match  
2097          Ket          Ket
 No match  
2098          End          End
 No match  
2099  ------------------------------------------------------------------  ------------------------------------------------------------------
 No match  
2100  Capturing subpattern count = 0  Capturing subpattern count = 0
 No match  
2101  Options: anchored  Options: anchored
 No match  
2102  No first char  No first char
 No match  
2103  No need char  No need char
 No match  
2104    
2105  /^[[:^blank:]]/DZ  /^[[:space:]]/DZ
2106  ------------------------------------------------------------------  ------------------------------------------------------------------
2107          Bra 0          Bra
2108          ^          ^
2109          [\x00-\x08\x0a-\x1f!-\xff]          [\x09-\x0d ]
2110          Ket          Ket
2111          End          End
2112  ------------------------------------------------------------------  ------------------------------------------------------------------
# Line 4851  Capturing subpattern count = 0 Line 2114  Capturing subpattern count = 0
2114  Options: anchored  Options: anchored
2115  No first char  No first char
2116  No need char  No need char
2117    
2118    /^[[:upper:]]/DZ
2119  ------------------------------------------------------------------  ------------------------------------------------------------------
2120   0: -          Bra
         Bra 0  
  0: B  
2121          ^          ^
2122   0: ^          [A-Z]
         [\x00-\x08\x0a-\x1f!-\xff]  
  0: [  
2123          Ket          Ket
  0: K  
2124          End          End
  0: E  
2125  ------------------------------------------------------------------  ------------------------------------------------------------------
  0: -  
2126  Capturing subpattern count = 0  Capturing subpattern count = 0
  0: C  
2127  Options: anchored  Options: anchored
  0: O  
 No first char  
  0: N  
 No need char  
  0: N  
   
 /[\n\x0b\x0c\x0d[:blank:]]/IS  
 Capturing subpattern count = 0  
 No options  
 No first char  
 No need char  
 Starting byte set: \x09 \x0a \x0b \x0c \x0d \x20  
 Capturing subpattern count = 0  
  0:  
 No options  
  0:  
2128  No first char  No first char
  0:  
2129  No need char  No need char
  0:  
 Starting byte set: \x09 \x0a \x0b \x0c \x0d \x20  
  0:  
2130    
2131  /^[[:cntrl:]]/DZ  /^[[:xdigit:]]/DZ
2132  ------------------------------------------------------------------  ------------------------------------------------------------------
2133          Bra 0          Bra
2134          ^          ^
2135          [\x00-\x1f\x7f]          [0-9A-Fa-f]
2136          Ket          Ket
2137          End          End
2138  ------------------------------------------------------------------  ------------------------------------------------------------------
# Line 4903  Capturing subpattern count = 0 Line 2140  Capturing subpattern count = 0
2140  Options: anchored  Options: anchored
2141  No first char  No first char
2142  No need char  No need char
2143    
2144    /^[[:word:]]/DZ
2145  ------------------------------------------------------------------  ------------------------------------------------------------------
2146  No match          Bra
         Bra 0  
 No match  
2147          ^          ^
2148  No match          [0-9A-Z_a-z]
         [\x00-\x1f\x7f]  
 No match  
2149          Ket          Ket
 No match  
2150          End          End
 No match  
2151  ------------------------------------------------------------------  ------------------------------------------------------------------
 No match  
2152  Capturing subpattern count = 0  Capturing subpattern count = 0
 No match  
2153  Options: anchored  Options: anchored
 No match  
2154  No first char  No first char
 No match  
2155  No need char  No need char
 No match  
2156    
2157  /^[[:digit:]]/DZ  /^[[:^cntrl:]]/DZ
2158  ------------------------------------------------------------------  ------------------------------------------------------------------
2159          Bra 0          Bra
2160          ^          ^
2161          [0-9]          [ -~\x80-\xff] (neg)
2162          Ket          Ket
2163          End          End
2164  ------------------------------------------------------------------  ------------------------------------------------------------------
# Line 4938  Capturing subpattern count = 0 Line 2166  Capturing subpattern count = 0
2166  Options: anchored  Options: anchored
2167  No first char  No first char
2168  No need char  No need char
2169    
2170    /^[12[:^digit:]]/DZ
2171  ------------------------------------------------------------------  ------------------------------------------------------------------
2172  No match          Bra
         Bra 0  
 No match  
2173          ^          ^
2174  No match          [\x00-/12:-\xff] (neg)
         [0-9]  
 No match  
2175          Ket          Ket
 No match  
2176          End          End
 No match  
2177  ------------------------------------------------------------------  ------------------------------------------------------------------
 No match  
2178  Capturing subpattern count = 0  Capturing subpattern count = 0
 No match  
2179  Options: anchored  Options: anchored
 No match  
2180  No first char  No first char
 No match  
2181  No need char  No need char
 No match  
2182    
2183  /^[[:graph:]]/DZ  /^[[:^blank:]]/DZ
2184  ------------------------------------------------------------------  ------------------------------------------------------------------
2185          Bra 0          Bra
2186          ^          ^
2187          [!-~]          [\x00-\x08\x0a-\x1f!-\xff] (neg)
2188          Ket          Ket
2189          End          End
2190  ------------------------------------------------------------------  ------------------------------------------------------------------
# Line 4973  Capturing subpattern count = 0 Line 2192  Capturing subpattern count = 0
2192  Options: anchored  Options: anchored
2193  No first char  No first char
2194  No need char  No need char
2195    
2196    /[01[:alpha:]%]/DZ
2197  ------------------------------------------------------------------  ------------------------------------------------------------------
2198   0: -          Bra
2199          Bra 0          [%01A-Za-z]
  0: B  
         ^  
  0: ^  
         [!-~]  
  0: [  
2200          Ket          Ket
  0: K  
2201          End          End
  0: E  
2202  ------------------------------------------------------------------  ------------------------------------------------------------------
  0: -  
2203  Capturing subpattern count = 0  Capturing subpattern count = 0
2204   0: C  No options
 Options: anchored  
  0: O  
2205  No first char  No first char
  0: N  
2206  No need char  No need char
  0: N  
2207    
2208  /^[[:lower:]]/DZ  /[[.ch.]]/I
2209  ------------------------------------------------------------------  Failed: POSIX collating elements are not supported at offset 1
         Bra 0  
         ^  
         [a-z]  
         Ket  
         End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Options: anchored  
 No first char  
 No need char  
 ------------------------------------------------------------------  
 No match  
         Bra 0  
 No match  
         ^  
 No match  
         [a-z]  
 No match  
         Ket  
 No match  
         End  
 No match  
 ------------------------------------------------------------------  
 No match  
 Capturing subpattern count = 0  
 No match  
 Options: anchored  
 No match  
 No first char  
 No match  
 No need char  
 No match  
2210    
2211  /^[[:print:]]/DZ  /[[=ch=]]/I
2212  ------------------------------------------------------------------  Failed: POSIX collating elements are not supported at offset 1
         Bra 0  
         ^  
         [ -~]  
         Ket  
         End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Options: anchored  
 No first char  
 No need char  
 ------------------------------------------------------------------  
  0: -  
         Bra 0  
  0: B  
         ^  
  0: ^  
         [ -~]  
  0: [  
         Ket  
  0: K  
         End  
  0: E  
 ------------------------------------------------------------------  
  0: -  
 Capturing subpattern count = 0  
  0: C  
 Options: anchored  
  0: O  
 No first char  
  0: N  
 No need char  
  0: N  
2213    
2214  /^[[:punct:]]/DZ  /[[:rhubarb:]]/I
2215  ------------------------------------------------------------------  Failed: unknown POSIX class name at offset 3
         Bra 0  
         ^  
         [!-/:-@[-`{-~]  
         Ket  
         End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Options: anchored  
 No first char  
 No need char  
 ------------------------------------------------------------------  
  0: -  
         Bra 0  
 No match  
         ^  
  0: ^  
         [!-/:-@[-`{-~]  
  0: [  
         Ket  
 No match  
         End  
 No match  
 ------------------------------------------------------------------  
  0: -  
 Capturing subpattern count = 0  
 No match  
 Options: anchored  
 No match  
 No first char  
 No match  
 No need char  
 No match  
2216    
2217  /^[[:space:]]/DZ  /[[:upper:]]/Ii
 ------------------------------------------------------------------  
         Bra 0  
         ^  
         [\x09-\x0d ]  
         Ket  
         End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Options: anchored  
 No first char  
 No need char  
 ------------------------------------------------------------------  
 No match  
         Bra 0  
 No match  
         ^  
 No match  
         [\x09-\x0d ]  
 No match  
         Ket  
 No match  
         End  
 No match  
 ------------------------------------------------------------------  
 No match  
2218  Capturing subpattern count = 0  Capturing subpattern count = 0
2219  No match  Options: caseless
 Options: anchored  
 No match  
2220  No first char  No first char
 No match  
2221  No need char  No need char
2222  No match      A
2223     0: A
2224        a
2225     0: a
2226    
2227  /^[[:upper:]]/DZ  /[[:lower:]]/Ii
 ------------------------------------------------------------------  
         Bra 0  
         ^  
         [A-Z]  
         Ket  
         End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Options: anchored  
 No first char  
 No need char  
 ------------------------------------------------------------------  
 No match  
         Bra 0  
  0: B  
         ^  
 No match  
         [A-Z]  
 No match  
         Ket  
  0: K  
         End  
  0: E  
 ------------------------------------------------------------------  
 No match  
2228  Capturing subpattern count = 0  Capturing subpattern count = 0
2229   0: C  Options: caseless
 Options: anchored  
  0: O  
2230  No first char  No first char
  0: N  
2231  No need char  No need char
2232   0: N      A
2233     0: A
2234        a
2235     0: a
2236    
2237  /^[[:xdigit:]]/DZ  /((?-i)[[:lower:]])[[:lower:]]/Ii
2238  ------------------------------------------------------------------  Capturing subpattern count = 1
2239          Bra 0  Options: caseless
         ^  
         [0-9A-Fa-f]  
         Ket  
         End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Options: anchored  
2240  No first char  No first char
2241  No need char  No need char
2242  ------------------------------------------------------------------      ab
2243  No match   0: ab
2244          Bra 0   1: a
2245   0: B      aB
2246          ^   0: aB
2247  No match   1: a
2248          [0-9A-Fa-f]      *** Failers
2249  No match   0: ai
2250          Ket   1: a
2251  No match      Ab
         End  
  0: E  
 ------------------------------------------------------------------  
 No match  
 Capturing subpattern count = 0  
  0: C  
 Options: anchored  
 No match  
 No first char  
2252  No match  No match
2253  No need char      AB
2254  No match  No match
2255    
2256  /^[[:word:]]/DZ  /[\200-\110]/I
2257  ------------------------------------------------------------------  Failed: range out of order in character class at offset 9
         Bra 0  
         ^  
         [0-9A-Z_a-z]  
         Ket  
         End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Options: anchored  
 No first char  
 No need char  
 ------------------------------------------------------------------  
 No match  
         Bra 0  
  0: B  
         ^  
 No match  
         [0-9A-Z_a-z]  
 No match  
         Ket  
  0: K  
         End  
  0: E  
 ------------------------------------------------------------------  
 No match  
 Capturing subpattern count = 0  
  0: C  
 Options: anchored  
  0: O  
 No first char  
  0: N  
 No need char  
  0: N  
2258    
2259  /^[[:^cntrl:]]/DZ  /^(?(0)f|b)oo/I
2260  ------------------------------------------------------------------  Failed: invalid condition (?(0) at offset 6
2261          Bra 0  
2262          ^  /This one's here because of the large output vector needed/I
         [ -~\x80-\xff]  
         Ket  
         End  
 ------------------------------------------------------------------  
2263  Capturing subpattern count = 0  Capturing subpattern count = 0
2264  Options: anchored  No options
2265    First char = 'T'
2266    Need char = 'd'
2267    
2268    /(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\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
2269    Capturing subpattern count = 271
2270    Max back reference = 270
2271    No options
2272  No first char  No first char
2273  No need char  No need char
 ------------------------------------------------------------------  
  0: -  
         Bra 0  
  0: B  
         ^  
  0: ^  
         [ -~\x80-\xff]  
  0: [  
         Ket  
  0: K  
         End  
  0: E  
 ------------------------------------------------------------------  
  0: -  
 Capturing subpattern count = 0  
  0: C  
 Options: anchored  
  0: O  
 No first char  
  0: N  
 No need char  
  0: N  
   
 /^[12[:^digit:]]/DZ  
 ------------------------------------------------------------------  
         Bra 0  
         ^  
         [\x00-/12:-\xff]  
         Ket  
         End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Options: anchored  
 No first char  
 No need char  
 ------------------------------------------------------------------  
  0: -  
         Bra 0  
  0: B  
         ^  
  0: ^  
         [\x00-/12:-\xff]  
  0: [  
         Ket  
  0: K  
         End  
  0: E  
 ------------------------------------------------------------------  
  0: -  
 Capturing subpattern count = 0  
  0: C  
 Options: anchored  
  0: O  
 No first char  
  0: N  
 No need char  
  0: N  
   
 /^[[:^blank:]]/DZ  
 ------------------------------------------------------------------  
         Bra 0  
         ^  
         [\x00-\x08\x0a-\x1f!-\xff]  
         Ket  
         End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Options: anchored  
 No first char  
 No need char  
 ------------------------------------------------------------------  
  0: -  
         Bra 0  
  0: B  
         ^  
  0: ^  
         [\x00-\x08\x0a-\x1f!-\xff]  
  0: [  
         Ket  
  0: K  
         End  
  0: E  
 ------------------------------------------------------------------  
  0: -  
 Capturing subpattern count = 0  
  0: C  
 Options: anchored  
  0: O  
 No first char  
  0: N  
 No need char  
  0: N  
   
 /[01[:alpha:]%]/DZ  
 ------------------------------------------------------------------  
         Bra 0  
         [%01A-Za-z]  
         Ket  
         End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 No options  
 No first char  
 No need char  
 ------------------------------------------------------------------  
 No match  
         Bra 0  
  0: B  
         [%01A-Za-z]  
  0: %  
         Ket  
  0: K  
         End  
  0: E  
 ------------------------------------------------------------------  
 No match  
 Capturing subpattern count = 0  
  0: C  
 No options  
  0: N  
 No first char  
  0: N  
 No need char  
  0: N  
   
 /[[.ch.]]/I  
 Failed: POSIX collating elements are not supported at offset 1  
   
 /[[=ch=]]/I  
 Failed: POSIX collating elements are not supported at offset 1  
   
 /[[:rhubarb:]]/I  
 Failed: unknown POSIX class name at offset 3  
   
 /[[:upper:]]/Ii  
 Capturing subpattern count = 0  
 Options: caseless  
 No first char  
 No need char  
 Capturing subpattern count = 0  
  0: C  
 Options: caseless  
  0: O  
 No first char  
  0: N  
 No need char  
  0: N  
     A  
  0: A  
  0: A  
  0: A  
     a  
  0: a  
  0: a  
  0: a  
   
 /[[:lower:]]/Ii  
 Capturing subpattern count = 0  
 Options: caseless  
 No first char  
 No need char  
 Capturing subpattern count = 0  
  0: C  
 Options: caseless  
  0: O  
 No first char  
  0: N  
 No need char  
  0: N  
     A  
  0: A  
  0: A  
  0: A  
     a  
  0: a  
  0: a  
  0: a  
   
 /((?-i)[[:lower:]])[[:lower:]]/Ii  
 Capturing subpattern count = 1  
 Options: caseless  
 No first char  
 No need char  
 Capturing subpattern count = 1  
  0: ap  
  1: a  
 Options: caseless  
  0: pt  
  1: p  
 No first char  
  0: fi  
  1: f  
 No need char  
  0: ne  
  1: n  
     ab  
  0: ab  
  1: a  
  0: ab  
  0: ab  
  1: a  
  1: a  
 No match  
     aB  
  0: aB  
  1: a  
  0: aB  
  0: aB  
  1: a  
  1: a  
 No match  
     *** Failers  
  0: ai  
  1: a  
  0: ai  
  0: ai  
  1: a  
  1: a  
 No match  
     Ab  
 No match  
 No match  
  0: ma  
  1: m  
     AB  
 No match  
 No match  
  0: ma  
  1: m  
   
 /[\200-\110]/I  
 Failed: range out of order in character class at offset 9  
   
 /^(?(0)f|b)oo/I  
 Failed: invalid condition (?(0) at offset 6  
   
 /This one's here because of the large output vector needed/I  
 Capturing subpattern count = 0  
 No options  
 First char = 'T'  
 Need char = 'd'  
 Capturing subpattern count = 0  
 No match  
 No options  
 No match  
 First char = 'T'  
 No match  
 Need char = 'd'  
 No match  
   
 /(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(