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

Diff of /code/trunk/testdata/testoutput5

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

revision 87 by nigel, Sat Feb 24 21:41:21 2007 UTC revision 569 by ph10, Sun Nov 7 16:14:50 2010 UTC
# Line 1  Line 1 
1  /\x{100}/8DM  /-- This set of tests checks the API, internals, and non-Perl stuff for UTF-8
2  Memory allocation (code space): 10      support, excluding Unicode properties. --/
3    
4    /\x{100}/8DZ
5  ------------------------------------------------------------------  ------------------------------------------------------------------
6    0   6 Bra 0          Bra
7    3     \x{100}          \x{100}
8    6   6 Ket          Ket
9    9     End          End
10  ------------------------------------------------------------------  ------------------------------------------------------------------
11  Capturing subpattern count = 0  Capturing subpattern count = 0
12  Options: utf8  Options: utf8
13  First char = 196  First char = 196
14  Need char = 128  Need char = 128
15    
16  /\x{1000}/8DM  /\x{1000}/8DZ
 Memory allocation (code space): 11  
17  ------------------------------------------------------------------  ------------------------------------------------------------------
18    0   7 Bra 0          Bra
19    3     \x{1000}          \x{1000}
20    7   7 Ket          Ket
21   10     End          End
22  ------------------------------------------------------------------  ------------------------------------------------------------------
23  Capturing subpattern count = 0  Capturing subpattern count = 0
24  Options: utf8  Options: utf8
25  First char = 225  First char = 225
26  Need char = 128  Need char = 128
27    
28  /\x{10000}/8DM  /\x{10000}/8DZ
 Memory allocation (code space): 12  
29  ------------------------------------------------------------------  ------------------------------------------------------------------
30    0   8 Bra 0          Bra
31    3     \x{10000}          \x{10000}
32    8   8 Ket          Ket
33   11     End          End
34  ------------------------------------------------------------------  ------------------------------------------------------------------
35  Capturing subpattern count = 0  Capturing subpattern count = 0
36  Options: utf8  Options: utf8
37  First char = 240  First char = 240
38  Need char = 128  Need char = 128
39    
40  /\x{100000}/8DM  /\x{100000}/8DZ
 Memory allocation (code space): 12  
41  ------------------------------------------------------------------  ------------------------------------------------------------------
42    0   8 Bra 0          Bra
43    3     \x{100000}          \x{100000}
44    8   8 Ket          Ket
45   11     End          End
46  ------------------------------------------------------------------  ------------------------------------------------------------------
47  Capturing subpattern count = 0  Capturing subpattern count = 0
48  Options: utf8  Options: utf8
49  First char = 244  First char = 244
50  Need char = 128  Need char = 128
51    
52  /\x{1000000}/8DM  /\x{1000000}/8DZ
 Memory allocation (code space): 13  
53  ------------------------------------------------------------------  ------------------------------------------------------------------
54    0   9 Bra 0          Bra
55    3     \x{1000000}          \x{1000000}
56    9   9 Ket          Ket
57   12     End          End
58  ------------------------------------------------------------------  ------------------------------------------------------------------
59  Capturing subpattern count = 0  Capturing subpattern count = 0
60  Options: utf8  Options: utf8
61  First char = 249  First char = 249
62  Need char = 128  Need char = 128
63    
64  /\x{4000000}/8DM  /\x{4000000}/8DZ
 Memory allocation (code space): 14  
65  ------------------------------------------------------------------  ------------------------------------------------------------------
66    0  10 Bra 0          Bra
67    3     \x{4000000}          \x{4000000}
68   10  10 Ket          Ket
69   13     End          End
70  ------------------------------------------------------------------  ------------------------------------------------------------------
71  Capturing subpattern count = 0  Capturing subpattern count = 0
72  Options: utf8  Options: utf8
73  First char = 252  First char = 252
74  Need char = 128  Need char = 128
75    
76  /\x{7fffFFFF}/8DM  /\x{7fffFFFF}/8DZ
 Memory allocation (code space): 14  
77  ------------------------------------------------------------------  ------------------------------------------------------------------
78    0  10 Bra 0          Bra
79    3     \x{7fffffff}          \x{7fffffff}
80   10  10 Ket          Ket
81   13     End          End
82  ------------------------------------------------------------------  ------------------------------------------------------------------
83  Capturing subpattern count = 0  Capturing subpattern count = 0
84  Options: utf8  Options: utf8
85  First char = 253  First char = 253
86  Need char = 191  Need char = 191
87    
88  /[\x{ff}]/8DM  /[\x{ff}]/8DZ
 Memory allocation (code space): 10  
89  ------------------------------------------------------------------  ------------------------------------------------------------------
90    0   6 Bra 0          Bra
91    3     \x{ff}          \x{ff}
92    6   6 Ket          Ket
93    9     End          End
94  ------------------------------------------------------------------  ------------------------------------------------------------------
95  Capturing subpattern count = 0  Capturing subpattern count = 0
96  Options: utf8  Options: utf8
97  First char = 195  First char = 195
98  Need char = 191  Need char = 191
99    
100  /[\x{100}]/8DM  /[\x{100}]/8DZ
 Memory allocation (code space): 47  
101  ------------------------------------------------------------------  ------------------------------------------------------------------
102    0  11 Bra 0          Bra
103    3     [\x{100}]          [\x{100}]
104   11  11 Ket          Ket
105   14     End          End
106  ------------------------------------------------------------------  ------------------------------------------------------------------
107  Capturing subpattern count = 0  Capturing subpattern count = 0
108  Options: utf8  Options: utf8
# Line 125  Failed: character value in \x{...} seque Line 119  Failed: character value in \x{...} seque
119      \x{100}a\x{1234}bcd      \x{100}a\x{1234}bcd
120   0: \x{100}a\x{1234}   0: \x{100}a\x{1234}
121    
122  /\x80/8D  /\x80/8DZ
123  ------------------------------------------------------------------  ------------------------------------------------------------------
124    0   6 Bra 0          Bra
125    3     \x{80}          \x{80}
126    6   6 Ket          Ket
127    9     End          End
128  ------------------------------------------------------------------  ------------------------------------------------------------------
129  Capturing subpattern count = 0  Capturing subpattern count = 0
130  Options: utf8  Options: utf8
131  First char = 194  First char = 194
132  Need char = 128  Need char = 128
133    
134  /\xff/8D  /\xff/8DZ
135  ------------------------------------------------------------------  ------------------------------------------------------------------
136    0   6 Bra 0          Bra
137    3     \x{ff}          \x{ff}
138    6   6 Ket          Ket
139    9     End          End
140  ------------------------------------------------------------------  ------------------------------------------------------------------
141  Capturing subpattern count = 0  Capturing subpattern count = 0
142  Options: utf8  Options: utf8
143  First char = 195  First char = 195
144  Need char = 191  Need char = 191
145    
146  /\x{0041}\x{2262}\x{0391}\x{002e}/D8  /\x{0041}\x{2262}\x{0391}\x{002e}/DZ8
147  ------------------------------------------------------------------  ------------------------------------------------------------------
148    0  14 Bra 0          Bra
149    3     A\x{2262}\x{391}.          A\x{2262}\x{391}.
150   14  14 Ket          Ket
151   17     End          End
152  ------------------------------------------------------------------  ------------------------------------------------------------------
153  Capturing subpattern count = 0  Capturing subpattern count = 0
154  Options: utf8  Options: utf8
# Line 163  Need char = '.' Line 157  Need char = '.'
157      \x{0041}\x{2262}\x{0391}\x{002e}      \x{0041}\x{2262}\x{0391}\x{002e}
158   0: A\x{2262}\x{391}.   0: A\x{2262}\x{391}.
159    
160  /\x{D55c}\x{ad6d}\x{C5B4}/D8  /\x{D55c}\x{ad6d}\x{C5B4}/DZ8
161  ------------------------------------------------------------------  ------------------------------------------------------------------
162    0  15 Bra 0          Bra
163    3     \x{d55c}\x{ad6d}\x{c5b4}          \x{d55c}\x{ad6d}\x{c5b4}
164   15  15 Ket          Ket
165   18     End          End
166  ------------------------------------------------------------------  ------------------------------------------------------------------
167  Capturing subpattern count = 0  Capturing subpattern count = 0
168  Options: utf8  Options: utf8
# Line 177  Need char = 180 Line 171  Need char = 180
171      \x{D55c}\x{ad6d}\x{C5B4}      \x{D55c}\x{ad6d}\x{C5B4}
172   0: \x{d55c}\x{ad6d}\x{c5b4}   0: \x{d55c}\x{ad6d}\x{c5b4}
173    
174  /\x{65e5}\x{672c}\x{8a9e}/D8  /\x{65e5}\x{672c}\x{8a9e}/DZ8
175  ------------------------------------------------------------------  ------------------------------------------------------------------
176    0  15 Bra 0          Bra
177    3     \x{65e5}\x{672c}\x{8a9e}          \x{65e5}\x{672c}\x{8a9e}
178   15  15 Ket          Ket
179   18     End          End
180  ------------------------------------------------------------------  ------------------------------------------------------------------
181  Capturing subpattern count = 0  Capturing subpattern count = 0
182  Options: utf8  Options: utf8
# Line 191  Need char = 158 Line 185  Need char = 158
185      \x{65e5}\x{672c}\x{8a9e}      \x{65e5}\x{672c}\x{8a9e}
186   0: \x{65e5}\x{672c}\x{8a9e}   0: \x{65e5}\x{672c}\x{8a9e}
187    
188  /\x{80}/D8  /\x{80}/DZ8
189  ------------------------------------------------------------------  ------------------------------------------------------------------
190    0   6 Bra 0          Bra
191    3     \x{80}          \x{80}
192    6   6 Ket          Ket
193    9     End          End
194  ------------------------------------------------------------------  ------------------------------------------------------------------
195  Capturing subpattern count = 0  Capturing subpattern count = 0
196  Options: utf8  Options: utf8
197  First char = 194  First char = 194
198  Need char = 128  Need char = 128
199    
200  /\x{084}/D8  /\x{084}/DZ8
201  ------------------------------------------------------------------  ------------------------------------------------------------------
202    0   6 Bra 0          Bra
203    3     \x{84}          \x{84}
204    6   6 Ket          Ket
205    9     End          End
206  ------------------------------------------------------------------  ------------------------------------------------------------------
207  Capturing subpattern count = 0  Capturing subpattern count = 0
208  Options: utf8  Options: utf8
209  First char = 194  First char = 194
210  Need char = 132  Need char = 132
211    
212  /\x{104}/D8  /\x{104}/DZ8
213  ------------------------------------------------------------------  ------------------------------------------------------------------
214    0   6 Bra 0          Bra
215    3     \x{104}          \x{104}
216    6   6 Ket          Ket
217    9     End          End
218  ------------------------------------------------------------------  ------------------------------------------------------------------
219  Capturing subpattern count = 0  Capturing subpattern count = 0
220  Options: utf8  Options: utf8
221  First char = 196  First char = 196
222  Need char = 132  Need char = 132
223    
224  /\x{861}/D8  /\x{861}/DZ8
225  ------------------------------------------------------------------  ------------------------------------------------------------------
226    0   7 Bra 0          Bra
227    3     \x{861}          \x{861}
228    7   7 Ket          Ket
229   10     End          End
230  ------------------------------------------------------------------  ------------------------------------------------------------------
231  Capturing subpattern count = 0  Capturing subpattern count = 0
232  Options: utf8  Options: utf8
233  First char = 224  First char = 224
234  Need char = 161  Need char = 161
235    
236  /\x{212ab}/D8  /\x{212ab}/DZ8
237  ------------------------------------------------------------------  ------------------------------------------------------------------
238    0   8 Bra 0          Bra
239    3     \x{212ab}          \x{212ab}
240    8   8 Ket          Ket
241   11     End          End
242  ------------------------------------------------------------------  ------------------------------------------------------------------
243  Capturing subpattern count = 0  Capturing subpattern count = 0
244  Options: utf8  Options: utf8
245  First char = 240  First char = 240
246  Need char = 171  Need char = 171
247    
248  /.{3,5}X/D8  /.{3,5}X/DZ8
249  ------------------------------------------------------------------  ------------------------------------------------------------------
250    0  13 Bra 0          Bra
251    3     Any{3}          Any{3}
252    7     Any{0,2}          Any{0,2}
253   11     X          X
254   13  13 Ket          Ket
255   16     End          End
256  ------------------------------------------------------------------  ------------------------------------------------------------------
257  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
258  Options: utf8  Options: utf8
259  No first char  No first char
260  Need char = 'X'  Need char = 'X'
# Line 269  Need char = 'X' Line 262  Need char = 'X'
262   0: \x{212ab}\x{212ab}\x{212ab}\x{861}X   0: \x{212ab}\x{212ab}\x{212ab}\x{861}X
263    
264    
265  /.{3,5}?/D8  /.{3,5}?/DZ8
266  ------------------------------------------------------------------  ------------------------------------------------------------------
267    0  11 Bra 0          Bra
268    3     Any{3}          Any{3}
269    7     Any{0,2}?          Any{0,2}?
270   11  11 Ket          Ket
271   14     End          End
272  ------------------------------------------------------------------  ------------------------------------------------------------------
273  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
274  Options: utf8  Options: utf8
275  No first char  No first char
276  No need char  No need char
277      \x{212ab}\x{212ab}\x{212ab}\x{861}      \x{212ab}\x{212ab}\x{212ab}\x{861}
278   0: \x{212ab}\x{212ab}\x{212ab}   0: \x{212ab}\x{212ab}\x{212ab}
279    
 /-- These tests are here rather than in testinput4 because Perl 5.6 has --/  
 /-- some problems with UTF-8 support, in the area of \x{..} where the   --/  
 No match  
 /-- value is < 255. It grumbles about invalid UTF-8 strings.            --/  
 No match  
   
 /^[a\x{c0}]b/8  
     \x{c0}b  
  0: \x{c0}b  
   
 /^([a\x{c0}]*?)aa/8  
     a\x{c0}aaaa/  
  0: a\x{c0}aa  
  1: a\x{c0}  
   
 /^([a\x{c0}]*?)aa/8  
     a\x{c0}aaaa/  
  0: a\x{c0}aa  
  1: a\x{c0}  
     a\x{c0}a\x{c0}aaa/  
  0: a\x{c0}a\x{c0}aa  
  1: a\x{c0}a\x{c0}  
   
 /^([a\x{c0}]*)aa/8  
     a\x{c0}aaaa/  
  0: a\x{c0}aaaa  
  1: a\x{c0}aa  
     a\x{c0}a\x{c0}aaa/  
  0: a\x{c0}a\x{c0}aaa  
  1: a\x{c0}a\x{c0}a  
   
 /^([a\x{c0}]*)a\x{c0}/8  
     a\x{c0}aaaa/  
  0: a\x{c0}  
  1:  
     a\x{c0}a\x{c0}aaa/  
  0: a\x{c0}a\x{c0}  
  1: a\x{c0}  
   
 /-- --/  
   
280  /(?<=\C)X/8  /(?<=\C)X/8
281  Failed: \C not allowed in lookbehind assertion at offset 6  Failed: \C not allowed in lookbehind assertion at offset 6
282    
283  /-- This one is here not because it's different to Perl, but because the --/  /-- This one is here not because it's different to Perl, but because the way
284  /-- way the captured single-byte is displayed. (In Perl it becomes a --/  the captured single-byte is displayed. (In Perl it becomes a character, and you
285  No match  can't tell the difference.) --/
 /-- character, and you can't tell the difference.) --/  
 No match  
286    
287  /X(\C)(.*)/8  /X(\C)(.*)/8
288      X\x{1234}      X\x{1234}
# Line 344  No match Line 293  No match
293   0: X\x{0a}abc   0: X\x{0a}abc
294   1: \x{0a}   1: \x{0a}
295   2: abc   2: abc
296    
297    /-- This one is here because Perl gives out a grumbly error message (quite
298    correctly, but that messes up comparisons). --/
299    
300    /a\Cb/8
301        *** Failers
302    No match
303        a\x{100}b
304    No match
305    
306  /^[ab]/8D  /^[ab]/8DZ
307  ------------------------------------------------------------------  ------------------------------------------------------------------
308    0  37 Bra 0          Bra
309    3     ^          ^
310    4     [ab]          [ab]
311   37  37 Ket          Ket
312   40     End          End
313  ------------------------------------------------------------------  ------------------------------------------------------------------
314  Capturing subpattern count = 0  Capturing subpattern count = 0
315  Options: anchored utf8  Options: anchored utf8
# Line 368  No match Line 326  No match
326      \x{100}      \x{100}
327  No match  No match
328    
329  /^[^ab]/8D  /^[^ab]/8DZ
330  ------------------------------------------------------------------  ------------------------------------------------------------------
331    0  37 Bra 0          Bra
332    3     ^          ^
333    4     [\x00-`c-\xff] (neg)          [\x00-`c-\xff] (neg)
334   37  37 Ket          Ket
335   40     End          End
336  ------------------------------------------------------------------  ------------------------------------------------------------------
337  Capturing subpattern count = 0  Capturing subpattern count = 0
338  Options: anchored utf8  Options: anchored utf8
# Line 391  No need char Line 349  No need char
349      aaa      aaa
350  No match  No match
351    
352  /[^ab\xC0-\xF0]/8SD  /[^ab\xC0-\xF0]/8SDZ
353  ------------------------------------------------------------------  ------------------------------------------------------------------
354    0  36 Bra 0          Bra
355    3     [\x00-`c-\xbf\xf1-\xff] (neg)          [\x00-`c-\xbf\xf1-\xff] (neg)
356   36  36 Ket          Ket
357   39     End          End
358  ------------------------------------------------------------------  ------------------------------------------------------------------
359  Capturing subpattern count = 0  Capturing subpattern count = 0
360  Options: utf8  Options: utf8
361  No first char  No first char
362  No need char  No need char
363    Subject length lower bound = 1
364  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
365    \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
366    \x1a \x1b \x1c \x1d \x1e \x1f \x20 ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4    \x1a \x1b \x1c \x1d \x1e \x1f \x20 ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4
# Line 427  No match Line 386  No match
386      \x{f0}      \x{f0}
387  No match  No match
388    
389  /Ā{3,4}/8SD  /Ā{3,4}/8SDZ
390  ------------------------------------------------------------------  ------------------------------------------------------------------
391    0  13 Bra 0          Bra
392    3     \x{100}{3}          \x{100}{3}
393    8     \x{100}{,1}          \x{100}?
394   13  13 Ket          Ket
395   16     End          End
396  ------------------------------------------------------------------  ------------------------------------------------------------------
397  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
398  Options: utf8  Options: utf8
399  First char = 196  First char = 196
400  Need char = 128  Need char = 128
401  Study returned NULL  Subject length lower bound = 3
402    No set of starting bytes
403    \x{100}\x{100}\x{100}\x{100\x{100}    \x{100}\x{100}\x{100}\x{100\x{100}
404   0: \x{100}\x{100}\x{100}   0: \x{100}\x{100}\x{100}
405    
406  /(\x{100}+|x)/8SD  /(\x{100}+|x)/8SDZ
407  ------------------------------------------------------------------  ------------------------------------------------------------------
408    0  17 Bra 0          Bra
409    3   6 Bra 1          CBra 1
410    6     \x{100}+          \x{100}+
411    9   5 Alt          Alt
412   12     x          x
413   14  11 Ket          Ket
414   17  17 Ket          Ket
415   20     End          End
416  ------------------------------------------------------------------  ------------------------------------------------------------------
417  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
418  Options: utf8  Options: utf8
419  No first char  No first char
420  No need char  No need char
421    Subject length lower bound = 1
422  Starting byte set: x \xc4  Starting byte set: x \xc4
423    
424  /(\x{100}*a|x)/8SD  /(\x{100}*a|x)/8SDZ
425  ------------------------------------------------------------------  ------------------------------------------------------------------
426    0  19 Bra 0          Bra
427    3   8 Bra 1          CBra 1
428    6     \x{100}*          \x{100}*+
429    9     a          a
430   11   5 Alt          Alt
431   14     x          x
432   16  13 Ket          Ket
433   19  19 Ket          Ket
434   22     End          End
435  ------------------------------------------------------------------  ------------------------------------------------------------------
436  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
437  Options: utf8  Options: utf8
438  No first char  No first char
439  No need char  No need char
440    Subject length lower bound = 1
441  Starting byte set: a x \xc4  Starting byte set: a x \xc4
442    
443  /(\x{100}{0,2}a|x)/8SD  /(\x{100}{0,2}a|x)/8SDZ
444  ------------------------------------------------------------------  ------------------------------------------------------------------
445    0  21 Bra 0          Bra
446    3  10 Bra 1          CBra 1
447    6     \x{100}{,2}          \x{100}{0,2}
448   11     a          a
449   13   5 Alt          Alt
450   16     x          x
451   18  15 Ket          Ket
452   21  21 Ket          Ket
453   24     End          End
454  ------------------------------------------------------------------  ------------------------------------------------------------------
455  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
456  Options: utf8  Options: utf8
457  No first char  No first char
458  No need char  No need char
459    Subject length lower bound = 1
460  Starting byte set: a x \xc4  Starting byte set: a x \xc4
461    
462  /(\x{100}{1,2}a|x)/8SD  /(\x{100}{1,2}a|x)/8SDZ
463  ------------------------------------------------------------------  ------------------------------------------------------------------
464    0  24 Bra 0          Bra
465    3  13 Bra 1          CBra 1
466    6     \x{100}          \x{100}
467    9     \x{100}{,1}          \x{100}{0,1}
468   14     a          a
469   16   5 Alt          Alt
470   19     x          x
471   21  18 Ket          Ket
472   24  24 Ket          Ket
473   27     End          End
474  ------------------------------------------------------------------  ------------------------------------------------------------------
475  Capturing subpattern count = 1  Capturing subpattern count = 1
 Partial matching not supported  
476  Options: utf8  Options: utf8
477  No first char  No first char
478  No need char  No need char
479    Subject length lower bound = 1
480  Starting byte set: x \xc4  Starting byte set: x \xc4
481    
482  /\x{100}*(\d+|"(?1)")/8  /\x{100}*(\d+|"(?1)")/8
# Line 544  No match Line 503  No match
503      \x{100}\x{100}abcd      \x{100}\x{100}abcd
504  No match  No match
505    
506  /\x{100}/8D  /\x{100}/8DZ
507  ------------------------------------------------------------------  ------------------------------------------------------------------
508    0   6 Bra 0          Bra
509    3     \x{100}          \x{100}
510    6   6 Ket          Ket
511    9     End          End
512  ------------------------------------------------------------------  ------------------------------------------------------------------
513  Capturing subpattern count = 0  Capturing subpattern count = 0
514  Options: utf8  Options: utf8
515  First char = 196  First char = 196
516  Need char = 128  Need char = 128
517    
518  /\x{100}*/8D  /\x{100}*/8DZ
519  ------------------------------------------------------------------  ------------------------------------------------------------------
520    0   6 Bra 0          Bra
521    3     \x{100}*          \x{100}*
522    6   6 Ket          Ket
523    9     End          End
524  ------------------------------------------------------------------  ------------------------------------------------------------------
525  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
526  Options: utf8  Options: utf8
527  No first char  No first char
528  No need char  No need char
529    
530  /a\x{100}*/8D  /a\x{100}*/8DZ
531  ------------------------------------------------------------------  ------------------------------------------------------------------
532    0   8 Bra 0          Bra
533    3     a          a
534    5     \x{100}*          \x{100}*
535    8   8 Ket          Ket
536   11     End          End
537  ------------------------------------------------------------------  ------------------------------------------------------------------
538  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
539  Options: utf8  Options: utf8
540  First char = 'a'  First char = 'a'
541  No need char  No need char
542    
543  /ab\x{100}*/8D  /ab\x{100}*/8DZ
544  ------------------------------------------------------------------  ------------------------------------------------------------------
545    0  10 Bra 0          Bra
546    3     ab          ab
547    7     \x{100}*          \x{100}*
548   10  10 Ket          Ket
549   13     End          End
550  ------------------------------------------------------------------  ------------------------------------------------------------------
551  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
552  Options: utf8  Options: utf8
553  First char = 'a'  First char = 'a'
554  Need char = 'b'  Need char = 'b'
555    
556  /a\x{100}\x{101}*/8D  /a\x{100}\x{101}*/8DZ
557  ------------------------------------------------------------------  ------------------------------------------------------------------
558    0  11 Bra 0          Bra
559    3     a\x{100}          a\x{100}
560    8     \x{101}*          \x{101}*
561   11  11 Ket          Ket
562   14     End          End
563  ------------------------------------------------------------------  ------------------------------------------------------------------
564  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
565  Options: utf8  Options: utf8
566  First char = 'a'  First char = 'a'
567  Need char = 128  Need char = 128
568    
569  /a\x{100}\x{101}+/8D  /a\x{100}\x{101}+/8DZ
570  ------------------------------------------------------------------  ------------------------------------------------------------------
571    0  11 Bra 0          Bra
572    3     a\x{100}          a\x{100}
573    8     \x{101}+          \x{101}+
574   11  11 Ket          Ket
575   14     End          End
576  ------------------------------------------------------------------  ------------------------------------------------------------------
577  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
578  Options: utf8  Options: utf8
579  First char = 'a'  First char = 'a'
580  Need char = 129  Need char = 129
581    
582  /\x{100}*A/8D  /\x{100}*A/8DZ
583  ------------------------------------------------------------------  ------------------------------------------------------------------
584    0   8 Bra 0          Bra
585    3     \x{100}*          \x{100}*+
586    6     A          A
587    8   8 Ket          Ket
588   11     End          End
589  ------------------------------------------------------------------  ------------------------------------------------------------------
590  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
591  Options: utf8  Options: utf8
592  No first char  No first char
593  Need char = 'A'  Need char = 'A'
594      A      A
595   0: A   0: A
596    
597  /\x{100}*\d(?R)/8D  /\x{100}*\d(?R)/8DZ
598  ------------------------------------------------------------------  ------------------------------------------------------------------
599    0  16 Bra 0          Bra
600    3     \x{100}*          \x{100}*+
601    6     \d          \d
602    7   6 Once          Once
603   10   0 Recurse          Recurse
604   13   6 Ket          Ket
605   16  16 Ket          Ket
606   19     End          End
607  ------------------------------------------------------------------  ------------------------------------------------------------------
608  Capturing subpattern count = 0  Capturing subpattern count = 0
 Partial matching not supported  
609  Options: utf8  Options: utf8
610  No first char  No first char
611  No need char  No need char
612    
613  /[^\x{c4}]/D  /[^\x{c4}]/DZ
614  ------------------------------------------------------------------  ------------------------------------------------------------------
615    0   5 Bra 0          Bra
616    3     [^\xc4]          [^\xc4]
617    5   5 Ket          Ket
618    8     End          End
619  ------------------------------------------------------------------  ------------------------------------------------------------------
620  Capturing subpattern count = 0  Capturing subpattern count = 0
621  No options  No options
622  No first char  No first char
623  No need char  No need char
624    
625  /[^\x{c4}]/8D  /[^\x{c4}]/8DZ
626  ------------------------------------------------------------------  ------------------------------------------------------------------
627    0  36 Bra 0          Bra
628    3     [\x00-\xc3\xc5-\xff] (neg)          [\x00-\xc3\xc5-\xff] (neg)
629   36  36 Ket          Ket
630   39     End          End
631  ------------------------------------------------------------------  ------------------------------------------------------------------
632  Capturing subpattern count = 0  Capturing subpattern count = 0
633  Options: utf8  Options: utf8
634  No first char  No first char
635  No need char  No need char
636    
637  /[\x{100}]/8DM  /[\x{100}]/8DZ
 Memory allocation (code space): 47  
638  ------------------------------------------------------------------  ------------------------------------------------------------------
639    0  11 Bra 0          Bra
640    3     [\x{100}]          [\x{100}]
641   11  11 Ket          Ket
642   14     End          End
643  ------------------------------------------------------------------  ------------------------------------------------------------------
644  Capturing subpattern count = 0  Capturing subpattern count = 0
645  Options: utf8  Options: utf8
# Line 703  No need char Line 654  No need char
654      *** Failers      *** Failers
655  No match  No match
656    
657  /[Z\x{100}]/8DM  /[Z\x{100}]/8DZ
 Memory allocation (code space): 47  
658  ------------------------------------------------------------------  ------------------------------------------------------------------
659    0  43 Bra 0          Bra
660    3     [Z\x{100}]          [Z\x{100}]
661   43  43 Ket          Ket
662   46     End          End
663  ------------------------------------------------------------------  ------------------------------------------------------------------
664  Capturing subpattern count = 0  Capturing subpattern count = 0
665  Options: utf8  Options: utf8
# Line 739  No match Line 689  No match
689      \x{ff}      \x{ff}
690  No match  No match
691    
692  /[z-\x{100}]/8D  /[z-\x{100}]/8DZ
693  ------------------------------------------------------------------  ------------------------------------------------------------------
694    0  12 Bra 0          Bra
695    3     [z-\x{100}]          [z-\x{100}]
696   12  12 Ket          Ket
697   15     End          End
698  ------------------------------------------------------------------  ------------------------------------------------------------------
699  Capturing subpattern count = 0  Capturing subpattern count = 0
700  Options: utf8  Options: utf8
701  No first char  No first char
702  No need char  No need char
703    
704  /[z\Qa-d]Ā\E]/8D  /[z\Qa-d]Ā\E]/8DZ
705  ------------------------------------------------------------------  ------------------------------------------------------------------
706    0  43 Bra 0          Bra
707    3     [\-\]adz\x{100}]          [\-\]adz\x{100}]
708   43  43 Ket          Ket
709   46     End          End
710  ------------------------------------------------------------------  ------------------------------------------------------------------
711  Capturing subpattern count = 0  Capturing subpattern count = 0
712  Options: utf8  Options: utf8
# Line 767  No need char Line 717  No need char
717      Ā      Ā
718   0: \x{100}   0: \x{100}
719    
720  /[\xFF]/D  /[\xFF]/DZ
721  ------------------------------------------------------------------  ------------------------------------------------------------------
722    0   5 Bra 0          Bra
723    3     \xff          \xff
724    5   5 Ket          Ket
725    8     End          End
726  ------------------------------------------------------------------  ------------------------------------------------------------------
727  Capturing subpattern count = 0  Capturing subpattern count = 0
728  No options  No options
# Line 781  No need char Line 731  No need char
731      >\xff<      >\xff<
732   0: \xff   0: \xff
733    
734  /[\xff]/D8  /[\xff]/DZ8
735  ------------------------------------------------------------------  ------------------------------------------------------------------
736    0   6 Bra 0          Bra
737    3     \x{ff}          \x{ff}
738    6   6 Ket          Ket
739    9     End          End
740  ------------------------------------------------------------------  ------------------------------------------------------------------
741  Capturing subpattern count = 0  Capturing subpattern count = 0
742  Options: utf8  Options: utf8
# Line 795  Need char = 191 Line 745  Need char = 191
745      >\x{ff}<      >\x{ff}<
746   0: \x{ff}   0: \x{ff}
747    
748  /[^\xFF]/D  /[^\xFF]/DZ
749  ------------------------------------------------------------------  ------------------------------------------------------------------
750    0   5 Bra 0          Bra
751    3     [^\xff]          [^\xff]
752    5   5 Ket          Ket
753    8     End          End
754  ------------------------------------------------------------------  ------------------------------------------------------------------
755  Capturing subpattern count = 0  Capturing subpattern count = 0
756  No options  No options
757  No first char  No first char
758  No need char  No need char
759    
760  /[^\xff]/8D  /[^\xff]/8DZ
761  ------------------------------------------------------------------  ------------------------------------------------------------------
762    0  36 Bra 0          Bra
763    3     [\x00-\xfe] (neg)          [\x00-\xfe] (neg)
764   36  36 Ket          Ket
765   39     End          End
766  ------------------------------------------------------------------  ------------------------------------------------------------------
767  Capturing subpattern count = 0  Capturing subpattern count = 0
768  Options: utf8  Options: utf8
# Line 847  No need char Line 797  No need char
797  Failed: invalid UTF-8 string at offset 2  Failed: invalid UTF-8 string at offset 2
798    
799  //8  //8
800  Failed: invalid UTF-8 string at offset 0  Failed: invalid UTF-8 string at offset 1
801    
802  /xxx/8  /xxx/8
803  Failed: invalid UTF-8 string at offset 1  Failed: invalid UTF-8 string at offset 1
804    
805  /xxx/8?D  /xxx/8?DZ
806  ------------------------------------------------------------------  ------------------------------------------------------------------
807    0  15 Bra 0          Bra
808    3     \X{c0}\X{c0}\X{c0}xxx          \X{c0}\X{c0}\X{c0}xxx
809   15  15 Ket          Ket
810   18     End          End
811  ------------------------------------------------------------------  ------------------------------------------------------------------
812  Capturing subpattern count = 0  Capturing subpattern count = 0
813  Options: utf8 no_utf8_check  Options: utf8 no_utf8_check
# Line 873  Error -10 Line 823  Error -10
823  Error -10  Error -10
824      \?      \?
825  No match  No match
826        \xe1\x88
827    Error -10
828        \P\xe1\x88
829    Error -10
830        \P\P\xe1\x88
831    Error -25
832    
833  /anything/8  /anything/8
834      \xc0\x80      \xc0\x80
# Line 902  No match Line 858  No match
858      \xf1\x8f\x80\x80      \xf1\x8f\x80\x80
859  No match  No match
860      \xf8\x88\x80\x80\x80      \xf8\x88\x80\x80\x80
861  No match  Error -10
862      \xf9\x87\x80\x80\x80      \xf9\x87\x80\x80\x80
863  No match  Error -10
864      \xfc\x84\x80\x80\x80\x80      \xfc\x84\x80\x80\x80\x80
865  No match  Error -10
866      \xfd\x83\x80\x80\x80\x80      \xfd\x83\x80\x80\x80\x80
867    Error -10
868        \?\xf8\x88\x80\x80\x80
869    No match
870        \?\xf9\x87\x80\x80\x80
871    No match
872        \?\xfc\x84\x80\x80\x80\x80
873    No match
874        \?\xfd\x83\x80\x80\x80\x80
875  No match  No match
876    
877  /\x{100}abc(xyz(?1))/8D  /\x{100}abc(xyz(?1))/8DZ
878  ------------------------------------------------------------------  ------------------------------------------------------------------
879    0  33 Bra 0          Bra
880    3     \x{100}abc          \x{100}abc
881   12  18 Bra 1          CBra 1
882   15     xyz          xyz
883   21   6 Once          Once
884   24  12 Recurse          Recurse
885   27   6 Ket          Ket
886   30  18 Ket          Ket
887   33  33 Ket          Ket
888   36     End          End
889  ------------------------------------------------------------------  ------------------------------------------------------------------
890  Capturing subpattern count = 1  Capturing subpattern count = 1
891  Options: utf8  Options: utf8
892  First char = 196  First char = 196
893  Need char = 'z'  Need char = 'z'
894    
895  /[^\x{100}]abc(xyz(?1))/8D  /[^\x{100}]abc(xyz(?1))/8DZ
896  ------------------------------------------------------------------  ------------------------------------------------------------------
897    0  38 Bra 0          Bra
898    3     [^\x{100}]          [^\x{100}]
899   11     abc          abc
900   17  18 Bra 1          CBra 1
901   20     xyz          xyz
902   26   6 Once          Once
903   29  17 Recurse          Recurse
904   32   6 Ket          Ket
905   35  18 Ket          Ket
906   38  38 Ket          Ket
907   41     End          End
908  ------------------------------------------------------------------  ------------------------------------------------------------------
909  Capturing subpattern count = 1  Capturing subpattern count = 1
910  Options: utf8  Options: utf8
911  No first char  No first char
912  Need char = 'z'  Need char = 'z'
913    
914  /[ab\x{100}]abc(xyz(?1))/8D  /[ab\x{100}]abc(xyz(?1))/8DZ
915  ------------------------------------------------------------------  ------------------------------------------------------------------
916    0  70 Bra 0          Bra
917    3     [ab\x{100}]          [ab\x{100}]
918   43     abc          abc
919   49  18 Bra 1          CBra 1
920   52     xyz          xyz
921   58   6 Once          Once
922   61  49 Recurse          Recurse
923   64   6 Ket          Ket
924   67  18 Ket          Ket
925   70  70 Ket          Ket
926   73     End          End
927  ------------------------------------------------------------------  ------------------------------------------------------------------
928  Capturing subpattern count = 1  Capturing subpattern count = 1
929  Options: utf8  Options: utf8
930  No first char  No first char
931  Need char = 'z'  Need char = 'z'
932    
933  /(\x{100}(b(?2)c))?/D8  /(\x{100}(b(?2)c))?/DZ8
934  ------------------------------------------------------------------  ------------------------------------------------------------------
935    0  32 Bra 0          Bra
936    3     Brazero          Brazero
937    4  25 Bra 1          CBra 1
938    7     \x{100}          \x{100}
939   10  16 Bra 2          CBra 2
940   13     b          b
941   15   6 Once          Once
942   18  10 Recurse          Recurse
943   21   6 Ket          Ket
944   24     c          c
945   26  16 Ket          Ket
946   29  25 Ket          Ket
947   32  32 Ket          Ket
948   35     End          End
949  ------------------------------------------------------------------  ------------------------------------------------------------------
950  Capturing subpattern count = 2  Capturing subpattern count = 2
951  Options: utf8  Options: utf8
952  No first char  No first char
953  No need char  No need char
954    
955  /(\x{100}(b(?2)c)){0,2}/D8  /(\x{100}(b(?2)c)){0,2}/DZ8
956  ------------------------------------------------------------------  ------------------------------------------------------------------
957    0  67 Bra 0          Bra
958    3     Brazero          Brazero
959    4  60 Bra 0          Bra
960    7  25 Bra 1          CBra 1
961   10     \x{100}          \x{100}
962   13  16 Bra 2          CBra 2
963   16     b          b
964   18   6 Once          Once
965   21  13 Recurse          Recurse
966   24   6 Ket          Ket
967   27     c          c
968   29  16 Ket          Ket
969   32  25 Ket          Ket
970   35     Brazero          Brazero
971   36  25 Bra 1          CBra 1
972   39     \x{100}          \x{100}
973   42  16 Bra 2          CBra 2
974   45     b          b
975   47   6 Once          Once
976   50  13 Recurse          Recurse
977   53   6 Ket          Ket
978   56     c          c
979   58  16 Ket          Ket
980   61  25 Ket          Ket
981   64  60 Ket          Ket
982   67  67 Ket          Ket
983   70     End          End
984  ------------------------------------------------------------------  ------------------------------------------------------------------
985  Capturing subpattern count = 2  Capturing subpattern count = 2
986  Options: utf8  Options: utf8
987  No first char  No first char
988  No need char  No need char
989    
990  /(\x{100}(b(?1)c))?/D8  /(\x{100}(b(?1)c))?/DZ8
991  ------------------------------------------------------------------  ------------------------------------------------------------------
992    0  32 Bra 0          Bra
993    3     Brazero          Brazero
994    4  25 Bra 1          CBra 1
995    7     \x{100}          \x{100}
996   10  16 Bra 2          CBra 2
997   13     b          b
998   15   6 Once          Once
999   18   4 Recurse          Recurse
1000   21   6 Ket          Ket
1001   24     c          c
1002   26  16 Ket          Ket
1003   29  25 Ket          Ket
1004   32  32 Ket          Ket
1005   35     End          End
1006  ------------------------------------------------------------------  ------------------------------------------------------------------
1007  Capturing subpattern count = 2  Capturing subpattern count = 2
1008  Options: utf8  Options: utf8
1009  No first char  No first char
1010  No need char  No need char
1011    
1012  /(\x{100}(b(?1)c)){0,2}/D8  /(\x{100}(b(?1)c)){0,2}/DZ8
1013  ------------------------------------------------------------------  ------------------------------------------------------------------
1014    0  67 Bra 0          Bra
1015    3     Brazero          Brazero
1016    4  60 Bra 0          Bra
1017    7  25 Bra 1          CBra 1
1018   10     \x{100}          \x{100}
1019   13  16 Bra 2          CBra 2
1020   16     b          b
1021   18   6 Once          Once
1022   21   7 Recurse          Recurse
1023   24   6 Ket          Ket
1024   27     c          c
1025   29  16 Ket          Ket
1026   32  25 Ket          Ket
1027   35     Brazero          Brazero
1028   36  25 Bra 1          CBra 1
1029   39     \x{100}          \x{100}
1030   42  16 Bra 2          CBra 2
1031   45     b          b
1032   47   6 Once          Once
1033   50   7 Recurse          Recurse
1034   53   6 Ket          Ket
1035   56     c          c
1036   58  16 Ket          Ket
1037   61  25 Ket          Ket
1038   64  60 Ket          Ket
1039   67  67 Ket          Ket
1040   70     End          End
1041  ------------------------------------------------------------------  ------------------------------------------------------------------
1042  Capturing subpattern count = 2  Capturing subpattern count = 2
1043  Options: utf8  Options: utf8
# Line 1094  No need char Line 1058  No need char
1058      a\x{1234}b      a\x{1234}b
1059   0: a\x{1234}b   0: a\x{1234}b
1060    
1061  /^\ሴ/8D  /^\ሴ/8DZ
1062  ------------------------------------------------------------------  ------------------------------------------------------------------
1063    0   8 Bra 0          Bra
1064    3     ^          ^
1065    4     \x{1234}          \x{1234}
1066    8   8 Ket          Ket
1067   11     End          End
1068  ------------------------------------------------------------------  ------------------------------------------------------------------
1069  Capturing subpattern count = 0  Capturing subpattern count = 0
1070  Options: anchored utf8  Options: anchored utf8
1071  No first char  No first char
1072  No need char  No need char
1073    
1074  / End of testinput5 /  /\777/I
1075    Failed: octal value is greater than \377 (not in UTF-8 mode) at offset 3
1076    
1077    /\777/8I
1078    Capturing subpattern count = 0
1079    Options: utf8
1080    First char = 199
1081    Need char = 191
1082      \x{1ff}
1083     0: \x{1ff}
1084      \777
1085     0: \x{1ff}
1086    
1087    /\x{100}*\d/8DZ
1088    ------------------------------------------------------------------
1089            Bra
1090            \x{100}*+
1091            \d
1092            Ket
1093            End
1094    ------------------------------------------------------------------
1095    Capturing subpattern count = 0
1096    Options: utf8
1097    No first char
1098    No need char
1099    
1100    /\x{100}*\s/8DZ
1101    ------------------------------------------------------------------
1102            Bra
1103            \x{100}*+
1104            \s
1105            Ket
1106            End
1107    ------------------------------------------------------------------
1108    Capturing subpattern count = 0
1109    Options: utf8
1110    No first char
1111    No need char
1112    
1113    /\x{100}*\w/8DZ
1114    ------------------------------------------------------------------
1115            Bra
1116            \x{100}*+
1117            \w
1118            Ket
1119            End
1120    ------------------------------------------------------------------
1121    Capturing subpattern count = 0
1122    Options: utf8
1123    No first char
1124    No need char
1125    
1126    /\x{100}*\D/8DZ
1127    ------------------------------------------------------------------
1128            Bra
1129            \x{100}*
1130            \D
1131            Ket
1132            End
1133    ------------------------------------------------------------------
1134    Capturing subpattern count = 0
1135    Options: utf8
1136    No first char
1137    No need char
1138    
1139    /\x{100}*\S/8DZ
1140    ------------------------------------------------------------------
1141            Bra
1142            \x{100}*
1143            \S
1144            Ket
1145            End
1146    ------------------------------------------------------------------
1147    Capturing subpattern count = 0
1148    Options: utf8
1149    No first char
1150    No need char
1151    
1152    /\x{100}*\W/8DZ
1153    ------------------------------------------------------------------
1154            Bra
1155            \x{100}*
1156            \W
1157            Ket
1158            End
1159    ------------------------------------------------------------------
1160    Capturing subpattern count = 0
1161    Options: utf8
1162    No first char
1163    No need char
1164    
1165    /\x{100}+\x{200}/8DZ
1166    ------------------------------------------------------------------
1167            Bra
1168            \x{100}++
1169            \x{200}
1170            Ket
1171            End
1172    ------------------------------------------------------------------
1173    Capturing subpattern count = 0
1174    Options: utf8
1175    First char = 196
1176    Need char = 128
1177    
1178    /\x{100}+X/8DZ
1179    ------------------------------------------------------------------
1180            Bra
1181            \x{100}++
1182            X
1183            Ket
1184            End
1185    ------------------------------------------------------------------
1186    Capturing subpattern count = 0
1187    Options: utf8
1188    First char = 196
1189    Need char = 'X'
1190    
1191    /X+\x{200}/8DZ
1192    ------------------------------------------------------------------
1193            Bra
1194            X++
1195            \x{200}
1196            Ket
1197            End
1198    ------------------------------------------------------------------
1199    Capturing subpattern count = 0
1200    Options: utf8
1201    First char = 'X'
1202    Need char = 128
1203    
1204    /()()()()()()()()()()
1205     ()()()()()()()()()()
1206     ()()()()()()()()()()
1207     ()()()()()()()()()()
1208     A (x) (?41) B/8x
1209        AxxB
1210    Matched, but too many substrings
1211     0: AxxB
1212     1:
1213     2:
1214     3:
1215     4:
1216     5:
1217     6:
1218     7:
1219     8:
1220     9:
1221    10:
1222    11:
1223    12:
1224    13:
1225    14:
1226    
1227    /^[\x{100}\E-\Q\E\x{150}]/BZ8
1228    ------------------------------------------------------------------
1229            Bra
1230            ^
1231            [\x{100}-\x{150}]
1232            Ket
1233            End
1234    ------------------------------------------------------------------
1235    
1236    /^[\QĀ\E-\QŐ\E]/BZ8
1237    ------------------------------------------------------------------
1238            Bra
1239            ^
1240            [\x{100}-\x{150}]
1241            Ket
1242            End
1243    ------------------------------------------------------------------
1244    
1245    /^[\QĀ\E-\QŐ\E/BZ8
1246    Failed: missing terminating ] for character class at offset 15
1247    
1248    /^abc./mgx8<any>
1249        abc1 \x0aabc2 \x0babc3xx \x0cabc4 \x0dabc5xx \x0d\x0aabc6 \x{0085}abc7 \x{2028}abc8 \x{2029}abc9 JUNK
1250     0: abc1
1251     0: abc2
1252     0: abc3
1253     0: abc4
1254     0: abc5
1255     0: abc6
1256     0: abc7
1257     0: abc8
1258     0: abc9
1259    
1260    /abc.$/mgx8<any>
1261        abc1\x0a abc2\x0b abc3\x0c abc4\x0d abc5\x0d\x0a abc6\x{0085} abc7\x{2028} abc8\x{2029} abc9
1262     0: abc1
1263     0: abc2
1264     0: abc3
1265     0: abc4
1266     0: abc5
1267     0: abc6
1268     0: abc7
1269     0: abc8
1270     0: abc9
1271    
1272    /^a\Rb/8<bsr_unicode>
1273        a\nb
1274     0: a\x{0a}b
1275        a\rb
1276     0: a\x{0d}b
1277        a\r\nb
1278     0: a\x{0d}\x{0a}b
1279        a\x0bb
1280     0: a\x{0b}b
1281        a\x0cb
1282     0: a\x{0c}b
1283        a\x{85}b
1284     0: a\x{85}b
1285        a\x{2028}b
1286     0: a\x{2028}b
1287        a\x{2029}b
1288     0: a\x{2029}b
1289        ** Failers
1290    No match
1291        a\n\rb
1292    No match
1293    
1294    /^a\R*b/8<bsr_unicode>
1295        ab
1296     0: ab
1297        a\nb
1298     0: a\x{0a}b
1299        a\rb
1300     0: a\x{0d}b
1301        a\r\nb
1302     0: a\x{0d}\x{0a}b
1303        a\x0bb
1304     0: a\x{0b}b
1305        a\x0c\x{2028}\x{2029}b
1306     0: a\x{0c}\x{2028}\x{2029}b
1307        a\x{85}b
1308     0: a\x{85}b
1309        a\n\rb
1310     0: a\x{0a}\x{0d}b
1311        a\n\r\x{85}\x0cb
1312     0: a\x{0a}\x{0d}\x{85}\x{0c}b
1313    
1314    /^a\R+b/8<bsr_unicode>
1315        a\nb
1316     0: a\x{0a}b
1317        a\rb
1318     0: a\x{0d}b
1319        a\r\nb
1320     0: a\x{0d}\x{0a}b
1321        a\x0bb
1322     0: a\x{0b}b
1323        a\x0c\x{2028}\x{2029}b
1324     0: a\x{0c}\x{2028}\x{2029}b
1325        a\x{85}b
1326     0: a\x{85}b
1327        a\n\rb
1328     0: a\x{0a}\x{0d}b
1329        a\n\r\x{85}\x0cb
1330     0: a\x{0a}\x{0d}\x{85}\x{0c}b
1331        ** Failers
1332    No match
1333        ab
1334    No match
1335    
1336    /^a\R{1,3}b/8<bsr_unicode>
1337        a\nb
1338     0: a\x{0a}b
1339        a\n\rb
1340     0: a\x{0a}\x{0d}b
1341        a\n\r\x{85}b
1342     0: a\x{0a}\x{0d}\x{85}b
1343        a\r\n\r\nb
1344     0: a\x{0d}\x{0a}\x{0d}\x{0a}b
1345        a\r\n\r\n\r\nb
1346     0: a\x{0d}\x{0a}\x{0d}\x{0a}\x{0d}\x{0a}b
1347        a\n\r\n\rb
1348     0: a\x{0a}\x{0d}\x{0a}\x{0d}b
1349        a\n\n\r\nb
1350     0: a\x{0a}\x{0a}\x{0d}\x{0a}b
1351        ** Failers
1352    No match
1353        a\n\n\n\rb
1354    No match
1355        a\r
1356    No match
1357    
1358    /\H\h\V\v/8
1359        X X\x0a
1360     0: X X\x{0a}
1361        X\x09X\x0b
1362     0: X\x{09}X\x{0b}
1363        ** Failers
1364    No match
1365        \x{a0} X\x0a
1366    No match
1367    
1368    /\H*\h+\V?\v{3,4}/8
1369        \x09\x20\x{a0}X\x0a\x0b\x0c\x0d\x0a
1370     0: \x{09} \x{a0}X\x{0a}\x{0b}\x{0c}\x{0d}
1371        \x09\x20\x{a0}\x0a\x0b\x0c\x0d\x0a
1372     0: \x{09} \x{a0}\x{0a}\x{0b}\x{0c}\x{0d}
1373        \x09\x20\x{a0}\x0a\x0b\x0c
1374     0: \x{09} \x{a0}\x{0a}\x{0b}\x{0c}
1375        ** Failers
1376    No match
1377        \x09\x20\x{a0}\x0a\x0b
1378    No match
1379    
1380    /\H\h\V\v/8
1381        \x{3001}\x{3000}\x{2030}\x{2028}
1382     0: \x{3001}\x{3000}\x{2030}\x{2028}
1383        X\x{180e}X\x{85}
1384     0: X\x{180e}X\x{85}
1385        ** Failers
1386    No match
1387        \x{2009} X\x0a
1388    No match
1389    
1390    /\H*\h+\V?\v{3,4}/8
1391        \x{1680}\x{180e}\x{2007}X\x{2028}\x{2029}\x0c\x0d\x0a
1392     0: \x{1680}\x{180e}\x{2007}X\x{2028}\x{2029}\x{0c}\x{0d}
1393        \x09\x{205f}\x{a0}\x0a\x{2029}\x0c\x{2028}\x0a
1394     0: \x{09}\x{205f}\x{a0}\x{0a}\x{2029}\x{0c}\x{2028}
1395        \x09\x20\x{202f}\x0a\x0b\x0c
1396     0: \x{09} \x{202f}\x{0a}\x{0b}\x{0c}
1397        ** Failers
1398    No match
1399        \x09\x{200a}\x{a0}\x{2028}\x0b
1400    No match
1401    
1402    /[\h]/8BZ
1403    ------------------------------------------------------------------
1404            Bra
1405            [\x09 \xa0\x{1680}\x{180e}\x{2000}-\x{200a}\x{202f}\x{205f}\x{3000}]
1406            Ket
1407            End
1408    ------------------------------------------------------------------
1409        >\x{1680}
1410     0: \x{1680}
1411    
1412    /[\h]{3,}/8BZ
1413    ------------------------------------------------------------------
1414            Bra
1415            [\x09 \xa0\x{1680}\x{180e}\x{2000}-\x{200a}\x{202f}\x{205f}\x{3000}]{3,}
1416            Ket
1417            End
1418    ------------------------------------------------------------------
1419        >\x{1680}\x{180e}\x{2000}\x{2003}\x{200a}\x{202f}\x{205f}\x{3000}<
1420     0: \x{1680}\x{180e}\x{2000}\x{2003}\x{200a}\x{202f}\x{205f}\x{3000}
1421    
1422    /[\v]/8BZ
1423    ------------------------------------------------------------------
1424            Bra
1425            [\x0a-\x0d\x85\x{2028}-\x{2029}]
1426            Ket
1427            End
1428    ------------------------------------------------------------------
1429    
1430    /[\H]/8BZ
1431    ------------------------------------------------------------------
1432            Bra
1433            [\x00-\x08\x0a-\x1f!-\x9f\xa1-\xff\x{100}-\x{167f}\x{1681}-\x{180d}\x{180f}-\x{1fff}\x{200b}-\x{202e}\x{2030}-\x{205e}\x{2060}-\x{2fff}\x{3001}-\x{7fffffff}]
1434            Ket
1435            End
1436    ------------------------------------------------------------------
1437    
1438    /[\V]/8BZ
1439    ------------------------------------------------------------------
1440            Bra
1441            [\x00-\x09\x0e-\x84\x86-\xff\x{100}-\x{2027}\x{2029}-\x{7fffffff}]
1442            Ket
1443            End
1444    ------------------------------------------------------------------
1445    
1446    /.*$/8<any>
1447        \x{1ec5}
1448     0: \x{1ec5}
1449    
1450    /-- This tests the stricter UTF-8 check according to RFC 3629. --/
1451    
1452    /X/8
1453        \x{0}\x{d7ff}\x{e000}\x{10ffff}
1454    No match
1455        \x{d800}
1456    Error -10
1457        \x{d800}\?
1458    No match
1459        \x{da00}
1460    Error -10
1461        \x{da00}\?
1462    No match
1463        \x{dfff}
1464    Error -10
1465        \x{dfff}\?
1466    No match
1467        \x{110000}
1468    Error -10
1469        \x{110000}\?
1470    No match
1471        \x{2000000}
1472    Error -10
1473        \x{2000000}\?
1474    No match
1475        \x{7fffffff}
1476    Error -10
1477        \x{7fffffff}\?
1478    No match
1479    
1480    /a\Rb/I8<bsr_anycrlf>
1481    Capturing subpattern count = 0
1482    Options: bsr_anycrlf utf8
1483    First char = 'a'
1484    Need char = 'b'
1485        a\rb
1486     0: a\x{0d}b
1487        a\nb
1488     0: a\x{0a}b
1489        a\r\nb
1490     0: a\x{0d}\x{0a}b
1491        ** Failers
1492    No match
1493        a\x{85}b
1494    No match
1495        a\x0bb
1496    No match
1497    
1498    /a\Rb/I8<bsr_unicode>
1499    Capturing subpattern count = 0
1500    Options: bsr_unicode utf8
1501    First char = 'a'
1502    Need char = 'b'
1503        a\rb
1504     0: a\x{0d}b
1505        a\nb
1506     0: a\x{0a}b
1507        a\r\nb
1508     0: a\x{0d}\x{0a}b
1509        a\x{85}b
1510     0: a\x{85}b
1511        a\x0bb
1512     0: a\x{0b}b
1513        ** Failers
1514    No match
1515        a\x{85}b\<bsr_anycrlf>
1516    No match
1517        a\x0bb\<bsr_anycrlf>
1518    No match
1519    
1520    /a\R?b/I8<bsr_anycrlf>
1521    Capturing subpattern count = 0
1522    Options: bsr_anycrlf utf8
1523    First char = 'a'
1524    Need char = 'b'
1525        a\rb
1526     0: a\x{0d}b
1527        a\nb
1528     0: a\x{0a}b
1529        a\r\nb
1530     0: a\x{0d}\x{0a}b
1531        ** Failers
1532    No match
1533        a\x{85}b
1534    No match
1535        a\x0bb
1536    No match
1537    
1538    /a\R?b/I8<bsr_unicode>
1539    Capturing subpattern count = 0
1540    Options: bsr_unicode utf8
1541    First char = 'a'
1542    Need char = 'b'
1543        a\rb
1544     0: a\x{0d}b
1545        a\nb
1546     0: a\x{0a}b
1547        a\r\nb
1548     0: a\x{0d}\x{0a}b
1549        a\x{85}b
1550     0: a\x{85}b
1551        a\x0bb
1552     0: a\x{0b}b
1553        ** Failers
1554    No match
1555        a\x{85}b\<bsr_anycrlf>
1556    No match
1557        a\x0bb\<bsr_anycrlf>
1558    No match
1559    
1560    /.*a.*=.b.*/8<ANY>
1561        QQQ\x{2029}ABCaXYZ=!bPQR
1562     0: ABCaXYZ=!bPQR
1563        ** Failers
1564    No match
1565        a\x{2029}b
1566    No match
1567        \x61\xe2\x80\xa9\x62
1568    No match
1569    
1570    /[[:a\x{100}b:]]/8
1571    Failed: unknown POSIX class name at offset 3
1572    
1573    /a[^]b/<JS>8
1574        a\x{1234}b
1575     0: a\x{1234}b
1576        a\nb
1577     0: a\x{0a}b
1578        ** Failers
1579    No match
1580        ab
1581    No match
1582    
1583    /a[^]+b/<JS>8
1584        aXb
1585     0: aXb
1586        a\nX\nX\x{1234}b
1587     0: a\x{0a}X\x{0a}X\x{1234}b
1588        ** Failers
1589    No match
1590        ab
1591    No match
1592    
1593    /(\x{de})\1/
1594        \x{de}\x{de}
1595     0: \xde\xde
1596     1: \xde
1597        \x{123}
1598    ** Character \x{123} is greater than 255 and UTF-8 mode is not enabled.
1599    ** Truncation will probably give the wrong result.
1600    No match
1601    
1602    /X/8f<any>
1603        A\x{1ec5}ABCXYZ
1604     0: X
1605    
1606    /(*UTF8)\x{1234}/
1607      abcd\x{1234}pqr
1608     0: \x{1234}
1609    
1610    /(*CRLF)(*UTF8)(*BSR_UNICODE)a\Rb/I
1611    Capturing subpattern count = 0
1612    Options: bsr_unicode utf8
1613    Forced newline sequence: CRLF
1614    First char = 'a'
1615    Need char = 'b'
1616    
1617    /Xa{2,4}b/8
1618        X\P
1619    Partial match: X
1620        Xa\P
1621    Partial match: Xa
1622        Xaa\P
1623    Partial match: Xaa
1624        Xaaa\P
1625    Partial match: Xaaa
1626        Xaaaa\P
1627    Partial match: Xaaaa
1628    
1629    /Xa{2,4}?b/8
1630        X\P
1631    Partial match: X
1632        Xa\P
1633    Partial match: Xa
1634        Xaa\P
1635    Partial match: Xaa
1636        Xaaa\P
1637    Partial match: Xaaa
1638        Xaaaa\P
1639    Partial match: Xaaaa
1640    
1641    /Xa{2,4}+b/8
1642        X\P
1643    Partial match: X
1644        Xa\P
1645    Partial match: Xa
1646        Xaa\P
1647    Partial match: Xaa
1648        Xaaa\P
1649    Partial match: Xaaa
1650        Xaaaa\P
1651    Partial match: Xaaaa
1652    
1653    /X\x{123}{2,4}b/8
1654        X\P
1655    Partial match: X
1656        X\x{123}\P
1657    Partial match: X\x{123}
1658        X\x{123}\x{123}\P
1659    Partial match: X\x{123}\x{123}
1660        X\x{123}\x{123}\x{123}\P
1661    Partial match: X\x{123}\x{123}\x{123}
1662        X\x{123}\x{123}\x{123}\x{123}\P
1663    Partial match: X\x{123}\x{123}\x{123}\x{123}
1664    
1665    /X\x{123}{2,4}?b/8
1666        X\P
1667    Partial match: X
1668        X\x{123}\P
1669    Partial match: X\x{123}
1670        X\x{123}\x{123}\P
1671    Partial match: X\x{123}\x{123}
1672        X\x{123}\x{123}\x{123}\P
1673    Partial match: X\x{123}\x{123}\x{123}
1674        X\x{123}\x{123}\x{123}\x{123}\P
1675    Partial match: X\x{123}\x{123}\x{123}\x{123}
1676    
1677    /X\x{123}{2,4}+b/8
1678        X\P
1679    Partial match: X
1680        X\x{123}\P
1681    Partial match: X\x{123}
1682        X\x{123}\x{123}\P
1683    Partial match: X\x{123}\x{123}
1684        X\x{123}\x{123}\x{123}\P
1685    Partial match: X\x{123}\x{123}\x{123}
1686        X\x{123}\x{123}\x{123}\x{123}\P
1687    Partial match: X\x{123}\x{123}\x{123}\x{123}
1688    
1689    /X\x{123}{2,4}b/8
1690        Xx\P
1691    No match
1692        X\x{123}x\P
1693    No match
1694        X\x{123}\x{123}x\P
1695    No match
1696        X\x{123}\x{123}\x{123}x\P
1697    No match
1698        X\x{123}\x{123}\x{123}\x{123}x\P
1699    No match
1700    
1701    /X\x{123}{2,4}?b/8
1702        Xx\P
1703    No match
1704        X\x{123}x\P
1705    No match
1706        X\x{123}\x{123}x\P
1707    No match
1708        X\x{123}\x{123}\x{123}x\P
1709    No match
1710        X\x{123}\x{123}\x{123}\x{123}x\P
1711    No match
1712    
1713    /X\x{123}{2,4}+b/8
1714        Xx\P
1715    No match
1716        X\x{123}x\P
1717    No match
1718        X\x{123}\x{123}x\P
1719    No match
1720        X\x{123}\x{123}\x{123}x\P
1721    No match
1722        X\x{123}\x{123}\x{123}\x{123}x\P
1723    No match
1724    
1725    /X\d{2,4}b/8
1726        X\P
1727    Partial match: X
1728        X3\P
1729    Partial match: X3
1730        X33\P
1731    Partial match: X33
1732        X333\P
1733    Partial match: X333
1734        X3333\P
1735    Partial match: X3333
1736    
1737    /X\d{2,4}?b/8
1738        X\P
1739    Partial match: X
1740        X3\P
1741    Partial match: X3
1742        X33\P
1743    Partial match: X33
1744        X333\P
1745    Partial match: X333
1746        X3333\P
1747    Partial match: X3333
1748    
1749    /X\d{2,4}+b/8
1750        X\P
1751    Partial match: X
1752        X3\P
1753    Partial match: X3
1754        X33\P
1755    Partial match: X33
1756        X333\P
1757    Partial match: X333
1758        X3333\P
1759    Partial match: X3333
1760    
1761    /X\D{2,4}b/8
1762        X\P
1763    Partial match: X
1764        Xa\P
1765    Partial match: Xa
1766        Xaa\P
1767    Partial match: Xaa
1768        Xaaa\P
1769    Partial match: Xaaa
1770        Xaaaa\P
1771    Partial match: Xaaaa
1772    
1773    /X\D{2,4}?b/8
1774        X\P
1775    Partial match: X
1776        Xa\P
1777    Partial match: Xa
1778        Xaa\P
1779    Partial match: Xaa
1780        Xaaa\P
1781    Partial match: Xaaa
1782        Xaaaa\P
1783    Partial match: Xaaaa
1784    
1785    /X\D{2,4}+b/8
1786        X\P
1787    Partial match: X
1788        Xa\P
1789    Partial match: Xa
1790        Xaa\P
1791    Partial match: Xaa
1792        Xaaa\P
1793    Partial match: Xaaa
1794        Xaaaa\P
1795    Partial match: Xaaaa
1796    
1797    /X\D{2,4}b/8
1798        X\P
1799    Partial match: X
1800        X\x{123}\P
1801    Partial match: X\x{123}
1802        X\x{123}\x{123}\P
1803    Partial match: X\x{123}\x{123}
1804        X\x{123}\x{123}\x{123}\P
1805    Partial match: X\x{123}\x{123}\x{123}
1806        X\x{123}\x{123}\x{123}\x{123}\P
1807    Partial match: X\x{123}\x{123}\x{123}\x{123}
1808    
1809    /X\D{2,4}?b/8
1810        X\P
1811    Partial match: X
1812        X\x{123}\P
1813    Partial match: X\x{123}
1814        X\x{123}\x{123}\P
1815    Partial match: X\x{123}\x{123}
1816        X\x{123}\x{123}\x{123}\P
1817    Partial match: X\x{123}\x{123}\x{123}
1818        X\x{123}\x{123}\x{123}\x{123}\P
1819    Partial match: X\x{123}\x{123}\x{123}\x{123}
1820    
1821    /X\D{2,4}+b/8
1822        X\P
1823    Partial match: X
1824        X\x{123}\P
1825    Partial match: X\x{123}
1826        X\x{123}\x{123}\P
1827    Partial match: X\x{123}\x{123}
1828        X\x{123}\x{123}\x{123}\P
1829    Partial match: X\x{123}\x{123}\x{123}
1830        X\x{123}\x{123}\x{123}\x{123}\P
1831    Partial match: X\x{123}\x{123}\x{123}\x{123}
1832    
1833    /X[abc]{2,4}b/8
1834        X\P
1835    Partial match: X
1836        Xa\P
1837    Partial match: Xa
1838        Xaa\P
1839    Partial match: Xaa
1840        Xaaa\P
1841    Partial match: Xaaa
1842        Xaaaa\P
1843    Partial match: Xaaaa
1844    
1845    /X[abc]{2,4}?b/8
1846        X\P
1847    Partial match: X
1848        Xa\P
1849    Partial match: Xa
1850        Xaa\P
1851    Partial match: Xaa
1852        Xaaa\P
1853    Partial match: Xaaa
1854        Xaaaa\P
1855    Partial match: Xaaaa
1856    
1857    /X[abc]{2,4}+b/8
1858        X\P
1859    Partial match: X
1860        Xa\P
1861    Partial match: Xa
1862        Xaa\P
1863    Partial match: Xaa
1864        Xaaa\P
1865    Partial match: Xaaa
1866        Xaaaa\P
1867    Partial match: Xaaaa
1868    
1869    /X[abc\x{123}]{2,4}b/8
1870        X\P
1871    Partial match: X
1872        X\x{123}\P
1873    Partial match: X\x{123}
1874        X\x{123}\x{123}\P
1875    Partial match: X\x{123}\x{123}
1876        X\x{123}\x{123}\x{123}\P
1877    Partial match: X\x{123}\x{123}\x{123}
1878        X\x{123}\x{123}\x{123}\x{123}\P
1879    Partial match: X\x{123}\x{123}\x{123}\x{123}
1880    
1881    /X[abc\x{123}]{2,4}?b/8
1882        X\P
1883    Partial match: X
1884        X\x{123}\P
1885    Partial match: X\x{123}
1886        X\x{123}\x{123}\P
1887    Partial match: X\x{123}\x{123}
1888        X\x{123}\x{123}\x{123}\P
1889    Partial match: X\x{123}\x{123}\x{123}
1890        X\x{123}\x{123}\x{123}\x{123}\P
1891    Partial match: X\x{123}\x{123}\x{123}\x{123}
1892    
1893    /X[abc\x{123}]{2,4}+b/8
1894        X\P
1895    Partial match: X
1896        X\x{123}\P
1897    Partial match: X\x{123}
1898        X\x{123}\x{123}\P
1899    Partial match: X\x{123}\x{123}
1900        X\x{123}\x{123}\x{123}\P
1901    Partial match: X\x{123}\x{123}\x{123}
1902        X\x{123}\x{123}\x{123}\x{123}\P
1903    Partial match: X\x{123}\x{123}\x{123}\x{123}
1904    
1905    /X[^a]{2,4}b/8
1906        X\P
1907    Partial match: X
1908        Xz\P
1909    Partial match: Xz
1910        Xzz\P
1911    Partial match: Xzz
1912        Xzzz\P
1913    Partial match: Xzzz
1914        Xzzzz\P
1915    Partial match: Xzzzz
1916    
1917    /X[^a]{2,4}?b/8
1918        X\P
1919    Partial match: X
1920        Xz\P
1921    Partial match: Xz
1922        Xzz\P
1923    Partial match: Xzz
1924        Xzzz\P
1925    Partial match: Xzzz
1926        Xzzzz\P
1927    Partial match: Xzzzz
1928    
1929    /X[^a]{2,4}+b/8
1930        X\P
1931    Partial match: X
1932        Xz\P
1933    Partial match: Xz
1934        Xzz\P
1935    Partial match: Xzz
1936        Xzzz\P
1937    Partial match: Xzzz
1938        Xzzzz\P
1939    Partial match: Xzzzz
1940    
1941    /X[^a]{2,4}b/8
1942        X\P
1943    Partial match: X
1944        X\x{123}\P
1945    Partial match: X\x{123}
1946        X\x{123}\x{123}\P
1947    Partial match: X\x{123}\x{123}
1948        X\x{123}\x{123}\x{123}\P
1949    Partial match: X\x{123}\x{123}\x{123}
1950        X\x{123}\x{123}\x{123}\x{123}\P
1951    Partial match: X\x{123}\x{123}\x{123}\x{123}
1952    
1953    /X[^a]{2,4}?b/8
1954        X\P
1955    Partial match: X
1956        X\x{123}\P
1957    Partial match: X\x{123}
1958        X\x{123}\x{123}\P
1959    Partial match: X\x{123}\x{123}
1960        X\x{123}\x{123}\x{123}\P
1961    Partial match: X\x{123}\x{123}\x{123}
1962        X\x{123}\x{123}\x{123}\x{123}\P
1963    Partial match: X\x{123}\x{123}\x{123}\x{123}
1964    
1965    /X[^a]{2,4}+b/8
1966        X\P
1967    Partial match: X
1968        X\x{123}\P
1969    Partial match: X\x{123}
1970        X\x{123}\x{123}\P
1971    Partial match: X\x{123}\x{123}
1972        X\x{123}\x{123}\x{123}\P
1973    Partial match: X\x{123}\x{123}\x{123}
1974        X\x{123}\x{123}\x{123}\x{123}\P
1975    Partial match: X\x{123}\x{123}\x{123}\x{123}
1976    
1977    /(Y)X\1{2,4}b/8
1978        YX\P
1979    Partial match: YX
1980        YXY\P
1981    Partial match: YXY
1982        YXYY\P
1983    Partial match: YXYY
1984        YXYYY\P
1985    Partial match: YXYYY
1986        YXYYYY\P
1987    Partial match: YXYYYY
1988    
1989    /(Y)X\1{2,4}?b/8
1990        YX\P
1991    Partial match: YX
1992        YXY\P
1993    Partial match: YXY
1994        YXYY\P
1995    Partial match: YXYY
1996        YXYYY\P
1997    Partial match: YXYYY
1998        YXYYYY\P
1999    Partial match: YXYYYY
2000    
2001    /(Y)X\1{2,4}+b/8
2002        YX\P
2003    Partial match: YX
2004        YXY\P
2005    Partial match: YXY
2006        YXYY\P
2007    Partial match: YXYY
2008        YXYYY\P
2009    Partial match: YXYYY
2010        YXYYYY\P
2011    Partial match: YXYYYY
2012    
2013    /(\x{123})X\1{2,4}b/8
2014        \x{123}X\P
2015    Partial match: \x{123}X
2016        \x{123}X\x{123}\P
2017    Partial match: \x{123}X\x{123}
2018        \x{123}X\x{123}\x{123}\P
2019    Partial match: \x{123}X\x{123}\x{123}
2020        \x{123}X\x{123}\x{123}\x{123}\P
2021    Partial match: \x{123}X\x{123}\x{123}\x{123}
2022        \x{123}X\x{123}\x{123}\x{123}\x{123}\P
2023    Partial match: \x{123}X\x{123}\x{123}\x{123}\x{123}
2024    
2025    /(\x{123})X\1{2,4}?b/8
2026        \x{123}X\P
2027    Partial match: \x{123}X
2028        \x{123}X\x{123}\P
2029    Partial match: \x{123}X\x{123}
2030        \x{123}X\x{123}\x{123}\P
2031    Partial match: \x{123}X\x{123}\x{123}
2032        \x{123}X\x{123}\x{123}\x{123}\P
2033    Partial match: \x{123}X\x{123}\x{123}\x{123}
2034        \x{123}X\x{123}\x{123}\x{123}\x{123}\P
2035    Partial match: \x{123}X\x{123}\x{123}\x{123}\x{123}
2036    
2037    /(\x{123})X\1{2,4}+b/8
2038        \x{123}X\P
2039    Partial match: \x{123}X
2040        \x{123}X\x{123}\P
2041    Partial match: \x{123}X\x{123}
2042        \x{123}X\x{123}\x{123}\P
2043    Partial match: \x{123}X\x{123}\x{123}
2044        \x{123}X\x{123}\x{123}\x{123}\P
2045    Partial match: \x{123}X\x{123}\x{123}\x{123}
2046        \x{123}X\x{123}\x{123}\x{123}\x{123}\P
2047    Partial match: \x{123}X\x{123}\x{123}\x{123}\x{123}
2048    
2049    /\bthe cat\b/8
2050        the cat\P
2051     0: the cat
2052        the cat\P\P
2053    Partial match: the cat
2054    
2055    /abcd*/8
2056        xxxxabcd\P
2057     0: abcd
2058        xxxxabcd\P\P
2059    Partial match: abcd
2060    
2061    /abcd*/i8
2062        xxxxabcd\P
2063     0: abcd
2064        xxxxabcd\P\P
2065    Partial match: abcd
2066        XXXXABCD\P
2067     0: ABCD
2068        XXXXABCD\P\P
2069    Partial match: ABCD
2070    
2071    /abc\d*/8
2072        xxxxabc1\P
2073     0: abc1
2074        xxxxabc1\P\P
2075    Partial match: abc1
2076    
2077    /(a)bc\1*/8
2078        xxxxabca\P
2079     0: abca
2080     1: a
2081        xxxxabca\P\P
2082    Partial match: abca
2083    
2084    /abc[de]*/8
2085        xxxxabcde\P
2086     0: abcde
2087        xxxxabcde\P\P
2088    Partial match: abcde
2089    
2090    /X\W{3}X/8
2091        \PX
2092    Partial match: X
2093    
2094    /\h/SI
2095    Capturing subpattern count = 0
2096    No options
2097    No first char
2098    No need char
2099    Subject length lower bound = 1
2100    Starting byte set: \x09 \x20 \xa0
2101    
2102    /\h/SI8
2103    Capturing subpattern count = 0
2104    Options: utf8
2105    No first char
2106    No need char
2107    Subject length lower bound = 1
2108    Starting byte set: \x09 \x20 \xc2 \xe1 \xe2 \xe3
2109        ABC\x{09}
2110     0: \x{09}
2111        ABC\x{20}
2112     0:
2113        ABC\x{a0}
2114     0: \x{a0}
2115        ABC\x{1680}
2116     0: \x{1680}
2117        ABC\x{180e}
2118     0: \x{180e}
2119        ABC\x{2000}
2120     0: \x{2000}
2121        ABC\x{202f}
2122     0: \x{202f}
2123        ABC\x{205f}
2124     0: \x{205f}
2125        ABC\x{3000}
2126     0: \x{3000}
2127    
2128    /\v/SI
2129    Capturing subpattern count = 0
2130    No options
2131    No first char
2132    No need char
2133    Subject length lower bound = 1
2134    Starting byte set: \x0a \x0b \x0c \x0d \x85
2135    
2136    /\v/SI8
2137    Capturing subpattern count = 0
2138    Options: utf8
2139    No first char
2140    No need char
2141    Subject length lower bound = 1
2142    Starting byte set: \x0a \x0b \x0c \x0d \xc2 \xe2
2143        ABC\x{0a}
2144     0: \x{0a}
2145        ABC\x{0b}
2146     0: \x{0b}
2147        ABC\x{0c}
2148     0: \x{0c}
2149        ABC\x{0d}
2150     0: \x{0d}
2151        ABC\x{85}
2152     0: \x{85}
2153        ABC\x{2028}
2154     0: \x{2028}
2155    
2156    /\R/SI
2157    Capturing subpattern count = 0
2158    No options
2159    No first char
2160    No need char
2161    Subject length lower bound = 2
2162    Starting byte set: \x0a \x0b \x0c \x0d \x85
2163    
2164    /\R/SI8
2165    Capturing subpattern count = 0
2166    Options: utf8
2167    No first char
2168    No need char
2169    Subject length lower bound = 2
2170    Starting byte set: \x0a \x0b \x0c \x0d \xc2 \xe2
2171    
2172    /\h*A/SI8
2173    Capturing subpattern count = 0
2174    Options: utf8
2175    No first char
2176    Need char = 'A'
2177    Subject length lower bound = 1
2178    Starting byte set: \x09 \x20 A \xc2 \xe1 \xe2 \xe3
2179        CDBABC
2180     0: A
2181    
2182    /\v+A/SI8
2183    Capturing subpattern count = 0
2184    Options: utf8
2185    No first char
2186    Need char = 'A'
2187    Subject length lower bound = 2
2188    Starting byte set: \x0a \x0b \x0c \x0d \xc2 \xe2
2189    
2190    /\s?xxx\s/8SI
2191    Capturing subpattern count = 0
2192    Options: utf8
2193    No first char
2194    Need char = 'x'
2195    Subject length lower bound = 4
2196    Starting byte set: \x09 \x0a \x0c \x0d \x20 x
2197    
2198    /\sxxx\s/8T1
2199        AB\x{85}xxx\x{a0}XYZ
2200     0: \x{85}xxx\x{a0}
2201        AB\x{a0}xxx\x{85}XYZ
2202     0: \x{a0}xxx\x{85}
2203    
2204    /\sxxx\s/I8ST1
2205    Capturing subpattern count = 0
2206    Options: utf8
2207    No first char
2208    Need char = 'x'
2209    Subject length lower bound = 5
2210    Starting byte set: \x09 \x0a \x0c \x0d \x20 \xc2
2211        AB\x{85}xxx\x{a0}XYZ
2212     0: \x{85}xxx\x{a0}
2213        AB\x{a0}xxx\x{85}XYZ
2214     0: \x{a0}xxx\x{85}
2215    
2216    /\S \S/8T1
2217        \x{a2} \x{84}
2218     0: \x{a2} \x{84}
2219    
2220    /\S \S/I8ST1
2221    Capturing subpattern count = 0
2222    Options: utf8
2223    No first char
2224    Need char = ' '
2225    Subject length lower bound = 3
2226    Starting byte set: \x00 \x01 \x02 \x03 \x04 \x05 \x06 \x07 \x08 \x0b \x0e
2227      \x0f \x10 \x11 \x12 \x13 \x14 \x15 \x16 \x17 \x18 \x19 \x1a \x1b \x1c \x1d
2228      \x1e \x1f ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @
2229      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
2230      f g h i j k l m n o p q r s t u v w x y z { | } ~ \x7f \xc0 \xc1 \xc2 \xc3
2231      \xc4 \xc5 \xc6 \xc7 \xc8 \xc9 \xca \xcb \xcc \xcd \xce \xcf \xd0 \xd1 \xd2
2232      \xd3 \xd4 \xd5 \xd6 \xd7 \xd8 \xd9 \xda \xdb \xdc \xdd \xde \xdf \xe0 \xe1
2233      \xe2 \xe3 \xe4 \xe5 \xe6 \xe7 \xe8 \xe9 \xea \xeb \xec \xed \xee \xef \xf0
2234      \xf1 \xf2 \xf3 \xf4 \xf5 \xf6 \xf7 \xf8 \xf9 \xfa \xfb \xfc \xfd \xfe \xff
2235        \x{a2} \x{84}
2236     0: \x{a2} \x{84}
2237        A Z
2238     0: A Z
2239    
2240    'A#хц'8x<any>BZ
2241    ------------------------------------------------------------------
2242            Bra
2243            A
2244            Ket
2245            End
2246    ------------------------------------------------------------------
2247    
2248    'A#хц
2249      PQ'8x<any>BZ
2250    ------------------------------------------------------------------
2251            Bra
2252            APQ
2253            Ket
2254            End
2255    ------------------------------------------------------------------
2256    
2257    /a+#хaa
2258      z#XX?/8x<any>BZ
2259    ------------------------------------------------------------------
2260            Bra
2261            a++
2262            z
2263            Ket
2264            End
2265    ------------------------------------------------------------------
2266    
2267    /a+#хaa
2268      z#х?/8x<any>BZ
2269    ------------------------------------------------------------------
2270            Bra
2271            a++
2272            z
2273            Ket
2274            End
2275    ------------------------------------------------------------------
2276    
2277    /\g{A}xxx#bXX(?'A'123) (?'A'456)/8x<any>BZ
2278    ------------------------------------------------------------------
2279            Bra
2280            \1
2281            xxx
2282            CBra 1
2283            456
2284            Ket
2285            Ket
2286            End
2287    ------------------------------------------------------------------
2288    
2289    /\g{A}xxx#bх(?'A'123) (?'A'456)/8x<any>BZ
2290    ------------------------------------------------------------------
2291            Bra
2292            \1
2293            xxx
2294            CBra 1
2295            456
2296            Ket
2297            Ket
2298            End
2299    ------------------------------------------------------------------
2300    
2301    /a+/8
2302        a\x{123}aa\>1
2303     0: aa
2304        a\x{123}aa\>2
2305    Error -11
2306        a\x{123}aa\>3
2307     0: aa
2308        a\x{123}aa\>4
2309     0: a
2310        a\x{123}aa\>5
2311    No match
2312        a\x{123}aa\>6
2313    Error -24
2314    
2315    /-- End of testinput5 --/

Legend:
Removed from v.87  
changed lines
  Added in v.569

  ViewVC Help
Powered by ViewVC 1.1.5