/[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 83 by nigel, Sat Feb 24 21:41:06 2007 UTC revision 1433 by ph10, Fri Jan 3 15:15:00 2014 UTC
# Line 1  Line 1 
1  PCRE version 6.3 15-Aug-2005  /-- This set of tests checks the API, internals, and non-Perl stuff for UTF
2        support, excluding Unicode properties. However, tests that give different
3        results in 8-bit and 16-bit modes are excluded (see tests 16 and 17). --/
4    
5    < forbid W
6    
7  /\x{100}/8DM  /\x{110000}/8DZ
8  Memory allocation (code space): 10  Failed: character value in \x{} or \o{} is too large at offset 9
 ------------------------------------------------------------------  
   0   6 Bra 0  
   3     \x{100}  
   6   6 Ket  
   9     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Options: utf8  
 First char = 196  
 Need char = 128  
9    
10  /\x{1000}/8DM  /\o{4200000}/8DZ
11  Memory allocation (code space): 11  Failed: character value in \x{} or \o{} is too large at offset 10
 ------------------------------------------------------------------  
   0   7 Bra 0  
   3     \x{1000}  
   7   7 Ket  
  10     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Options: utf8  
 First char = 225  
 Need char = 128  
12    
13  /\x{10000}/8DM  /\x{ffffffff}/8
14  Memory allocation (code space): 12  Failed: character value in \x{} or \o{} is too large at offset 11
 ------------------------------------------------------------------  
   0   8 Bra 0  
   3     \x{10000}  
   8   8 Ket  
  11     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Options: utf8  
 First char = 240  
 Need char = 128  
15    
16  /\x{100000}/8DM  /\o{37777777777}/8
17  Memory allocation (code space): 12  Failed: character value in \x{} or \o{} is too large at offset 14
 ------------------------------------------------------------------  
   0   8 Bra 0  
   3     \x{100000}  
   8   8 Ket  
  11     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Options: utf8  
 First char = 244  
 Need char = 128  
18    
19  /\x{1000000}/8DM  /\x{100000000}/8
20  Memory allocation (code space): 13  Failed: character value in \x{} or \o{} is too large at offset 12
 ------------------------------------------------------------------  
   0   9 Bra 0  
   3     \x{1000000}  
   9   9 Ket  
  12     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Options: utf8  
 First char = 249  
 Need char = 128  
21    
22  /\x{4000000}/8DM  /\o{77777777777}/8
23  Memory allocation (code space): 14  Failed: character value in \x{} or \o{} is too large at offset 14
 ------------------------------------------------------------------  
   0  10 Bra 0  
   3     \x{4000000}  
  10  10 Ket  
  13     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Options: utf8  
 First char = 252  
 Need char = 128  
24    
25  /\x{7fffFFFF}/8DM  /\x{d800}/8
26  Memory allocation (code space): 14  Failed: disallowed Unicode code point (>= 0xd800 && <= 0xdfff) at offset 7
 ------------------------------------------------------------------  
   0  10 Bra 0  
   3     \x{7fffffff}  
  10  10 Ket  
  13     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Options: utf8  
 First char = 253  
 Need char = 191  
27    
28  /[\x{ff}]/8DM  /\o{154000}/8
29  Memory allocation (code space): 10  Failed: disallowed Unicode code point (>= 0xd800 && <= 0xdfff) at offset 9
 ------------------------------------------------------------------  
   0   6 Bra 0  
   3     \x{ff}  
   6   6 Ket  
   9     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Options: utf8  
 First char = 195  
 Need char = 191  
30    
31  /[\x{100}]/8DM  /\x{dfff}/8
32  Memory allocation (code space): 47  Failed: disallowed Unicode code point (>= 0xd800 && <= 0xdfff) at offset 7
 ------------------------------------------------------------------  
   0  11 Bra 0  
   3     [\x{100}]  
  11  11 Ket  
  14     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Options: utf8  
 No first char  
 No need char  
33    
34  /\x{ffffffff}/8  /\o{157777}/8
35  Failed: character value in \x{...} sequence is too large at offset 11  Failed: disallowed Unicode code point (>= 0xd800 && <= 0xdfff) at offset 9
36    
37  /\x{100000000}/8  /\x{d7ff}/8
38  Failed: character value in \x{...} sequence is too large at offset 12  
39    /\o{153777}/8
40    
41    /\x{e000}/8
42    
43    /\o{170000}/8
44    
45  /^\x{100}a\x{1234}/8  /^\x{100}a\x{1234}/8
46      \x{100}a\x{1234}bcd      \x{100}a\x{1234}bcd
47   0: \x{100}a\x{1234}   0: \x{100}a\x{1234}
48    
49  /\x80/8D  /\x{0041}\x{2262}\x{0391}\x{002e}/DZ8
 ------------------------------------------------------------------  
   0   6 Bra 0  
   3     \x{80}  
   6   6 Ket  
   9     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Options: utf8  
 First char = 194  
 Need char = 128  
   
 /\xff/8D  
 ------------------------------------------------------------------  
   0   6 Bra 0  
   3     \x{ff}  
   6   6 Ket  
   9     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Options: utf8  
 First char = 195  
 Need char = 191  
   
 /\x{0041}\x{2262}\x{0391}\x{002e}/D8  
50  ------------------------------------------------------------------  ------------------------------------------------------------------
51    0  14 Bra 0          Bra
52    3     A\x{2262}\x{391}.          A\x{2262}\x{391}.
53   14  14 Ket          Ket
54   17     End          End
55  ------------------------------------------------------------------  ------------------------------------------------------------------
56  Capturing subpattern count = 0  Capturing subpattern count = 0
57  Options: utf8  Options: utf
58  First char = 'A'  First char = 'A'
59  Need char = '.'  Need char = '.'
60      \x{0041}\x{2262}\x{0391}\x{002e}      \x{0041}\x{2262}\x{0391}\x{002e}
61   0: A\x{2262}\x{391}.   0: A\x{2262}\x{391}.
62    
63  /\x{D55c}\x{ad6d}\x{C5B4}/D8  /.{3,5}X/DZ8
64  ------------------------------------------------------------------  ------------------------------------------------------------------
65    0  15 Bra 0          Bra
66    3     \x{d55c}\x{ad6d}\x{c5b4}          Any{3}
67   15  15 Ket          Any{0,2}
68   18     End          X
69            Ket
70            End
71  ------------------------------------------------------------------  ------------------------------------------------------------------
72  Capturing subpattern count = 0  Capturing subpattern count = 0
73  Options: utf8  Options: utf
 First char = 237  
 Need char = 180  
     \x{D55c}\x{ad6d}\x{C5B4}  
  0: \x{d55c}\x{ad6d}\x{c5b4}  
   
 /\x{65e5}\x{672c}\x{8a9e}/D8  
 ------------------------------------------------------------------  
   0  15 Bra 0  
   3     \x{65e5}\x{672c}\x{8a9e}  
  15  15 Ket  
  18     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Options: utf8  
 First char = 230  
 Need char = 158  
     \x{65e5}\x{672c}\x{8a9e}  
  0: \x{65e5}\x{672c}\x{8a9e}  
   
 /\x{80}/D8  
 ------------------------------------------------------------------  
   0   6 Bra 0  
   3     \x{80}  
   6   6 Ket  
   9     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Options: utf8  
 First char = 194  
 Need char = 128  
   
 /\x{084}/D8  
 ------------------------------------------------------------------  
   0   6 Bra 0  
   3     \x{84}  
   6   6 Ket  
   9     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Options: utf8  
 First char = 194  
 Need char = 132  
   
 /\x{104}/D8  
 ------------------------------------------------------------------  
   0   6 Bra 0  
   3     \x{104}  
   6   6 Ket  
   9     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Options: utf8  
 First char = 196  
 Need char = 132  
   
 /\x{861}/D8  
 ------------------------------------------------------------------  
   0   7 Bra 0  
   3     \x{861}  
   7   7 Ket  
  10     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Options: utf8  
 First char = 224  
 Need char = 161  
   
 /\x{212ab}/D8  
 ------------------------------------------------------------------  
   0   8 Bra 0  
   3     \x{212ab}  
   8   8 Ket  
  11     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Options: utf8  
 First char = 240  
 Need char = 171  
   
 /.{3,5}X/D8  
 ------------------------------------------------------------------  
   0  13 Bra 0  
   3     Any{3}  
   7     Any{0,2}  
  11     X  
  13  13 Ket  
  16     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Partial matching not supported  
 Options: utf8  
74  No first char  No first char
75  Need char = 'X'  Need char = 'X'
76      \x{212ab}\x{212ab}\x{212ab}\x{861}X      \x{212ab}\x{212ab}\x{212ab}\x{861}X
77   0: \x{212ab}\x{212ab}\x{212ab}\x{861}X   0: \x{212ab}\x{212ab}\x{212ab}\x{861}X
78    
79    /.{3,5}?/DZ8
 /.{3,5}?/D8  
80  ------------------------------------------------------------------  ------------------------------------------------------------------
81    0  11 Bra 0          Bra
82    3     Any{3}          Any{3}
83    7     Any{0,2}?          Any{0,2}?
84   11  11 Ket          Ket
85   14     End          End
86  ------------------------------------------------------------------  ------------------------------------------------------------------
87  Capturing subpattern count = 0  Capturing subpattern count = 0
88  Partial matching not supported  Options: utf
 Options: utf8  
89  No first char  No first char
90  No need char  No need char
91      \x{212ab}\x{212ab}\x{212ab}\x{861}      \x{212ab}\x{212ab}\x{212ab}\x{861}
92   0: \x{212ab}\x{212ab}\x{212ab}   0: \x{212ab}\x{212ab}\x{212ab}
93    
 /-- 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}  
   
 /-- --/  
   
94  /(?<=\C)X/8  /(?<=\C)X/8
95  Failed: \C not allowed in lookbehind assertion at offset 6  Failed: \C not allowed in lookbehind assertion at offset 6
96    
97  /-- This one is here not because it's different to Perl, but because the --/  /^[ab]/8DZ
 /-- way the captured single-byte is displayed. (In Perl it becomes a --/  
 No match  
 /-- character, and you can't tell the difference.) --/  
 No match  
   
 /X(\C)(.*)/8  
     X\x{1234}  
  0: X\x{1234}  
  1: \xe1  
  2: \x88\xb4  
     X\nabc  
  0: X\x{0a}abc  
  1: \x{0a}  
  2: abc  
   
 /^[ab]/8D  
98  ------------------------------------------------------------------  ------------------------------------------------------------------
99    0  37 Bra 0          Bra
100    3     ^          ^
101    4     [ab]          [ab]
102   37  37 Ket          Ket
103   40     End          End
104  ------------------------------------------------------------------  ------------------------------------------------------------------
105  Capturing subpattern count = 0  Capturing subpattern count = 0
106  Options: anchored utf8  Options: anchored utf
107  No first char  No first char
108  No need char  No need char
109      bar      bar
# Line 370  No match Line 117  No match
117      \x{100}      \x{100}
118  No match  No match
119    
120  /^[^ab]/8D  /^[^ab]/8DZ
121  ------------------------------------------------------------------  ------------------------------------------------------------------
122    0  37 Bra 0          Bra
123    3     ^          ^
124    4     [\x00-`c-\xff] (neg)          [\x00-`c-\xff] (neg)
125   37  37 Ket          Ket
126   40     End          End
127  ------------------------------------------------------------------  ------------------------------------------------------------------
128  Capturing subpattern count = 0  Capturing subpattern count = 0
129  Options: anchored utf8  Options: anchored utf
130  No first char  No first char
131  No need char  No need char
132      c      c
# Line 393  No need char Line 140  No need char
140      aaa      aaa
141  No match  No match
142    
 /[^ab\xC0-\xF0]/8SD  
 ------------------------------------------------------------------  
   0  36 Bra 0  
   3     [\x00-`c-\xbf\xf1-\xff] (neg)  
  36  36 Ket  
  39     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Options: utf8  
 No first char  
 No need char  
 Starting byte set: \x00 \x01 \x02 \x03 \x04 \x05 \x06 \x07 \x08 \x09 \x0a  
   \x0b \x0c \x0d \x0e \x0f \x10 \x11 \x12 \x13 \x14 \x15 \x16 \x17 \x18 \x19  
   \x1a \x1b \x1c \x1d \x1e \x1f \x20 ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4  
   5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y  
   Z [ \ ] ^ _ ` c d e f g h i j k l m n o p q r s t u v w x y z { | } ~ \x7f  
   \xc2 \xc3 \xc4 \xc5 \xc6 \xc7 \xc8 \xc9 \xca \xcb \xcc \xcd \xce \xcf \xd0  
   \xd1 \xd2 \xd3 \xd4 \xd5 \xd6 \xd7 \xd8 \xd9 \xda \xdb \xdc \xdd \xde \xdf  
   \xe0 \xe1 \xe2 \xe3 \xe4 \xe5 \xe6 \xe7 \xe8 \xe9 \xea \xeb \xec \xed \xee  
   \xef \xf0 \xf1 \xf2 \xf3 \xf4 \xf5 \xf6 \xf7 \xf8 \xf9 \xfa \xfb \xfc \xfd  
   \xfe \xff  
     \x{f1}  
  0: \x{f1}  
     \x{bf}  
  0: \x{bf}  
     \x{100}  
  0: \x{100}  
     \x{1000}  
  0: \x{1000}  
     *** Failers  
  0: *  
     \x{c0}  
 No match  
     \x{f0}  
 No match  
   
 /Ā{3,4}/8SD  
 ------------------------------------------------------------------  
   0  13 Bra 0  
   3     \x{100}{3}  
   8     \x{100}{,1}  
  13  13 Ket  
  16     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Partial matching not supported  
 Options: utf8  
 First char = 196  
 Need char = 128  
 Study returned NULL  
   \x{100}\x{100}\x{100}\x{100\x{100}  
  0: \x{100}\x{100}\x{100}  
   
 /(\x{100}+|x)/8SD  
 ------------------------------------------------------------------  
   0  17 Bra 0  
   3   6 Bra 1  
   6     \x{100}+  
   9   5 Alt  
  12     x  
  14  11 Ket  
  17  17 Ket  
  20     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 1  
 Partial matching not supported  
 Options: utf8  
 No first char  
 No need char  
 Starting byte set: x \xc4  
   
 /(\x{100}*a|x)/8SD  
 ------------------------------------------------------------------  
   0  19 Bra 0  
   3   8 Bra 1  
   6     \x{100}*  
   9     a  
  11   5 Alt  
  14     x  
  16  13 Ket  
  19  19 Ket  
  22     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 1  
 Partial matching not supported  
 Options: utf8  
 No first char  
 No need char  
 Starting byte set: a x \xc4  
   
 /(\x{100}{0,2}a|x)/8SD  
 ------------------------------------------------------------------  
   0  21 Bra 0  
   3  10 Bra 1  
   6     \x{100}{,2}  
  11     a  
  13   5 Alt  
  16     x  
  18  15 Ket  
  21  21 Ket  
  24     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 1  
 Partial matching not supported  
 Options: utf8  
 No first char  
 No need char  
 Starting byte set: a x \xc4  
   
 /(\x{100}{1,2}a|x)/8SD  
 ------------------------------------------------------------------  
   0  24 Bra 0  
   3  13 Bra 1  
   6     \x{100}  
   9     \x{100}{,1}  
  14     a  
  16   5 Alt  
  19     x  
  21  18 Ket  
  24  24 Ket  
  27     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 1  
 Partial matching not supported  
 Options: utf8  
 No first char  
 No need char  
 Starting byte set: x \xc4  
   
143  /\x{100}*(\d+|"(?1)")/8  /\x{100}*(\d+|"(?1)")/8
144      1234      1234
145   0: 1234   0: 1234
# Line 546  No match Line 164  No match
164      \x{100}\x{100}abcd      \x{100}\x{100}abcd
165  No match  No match
166    
167  /\x{100}/8D  /\x{100}*/8DZ
168  ------------------------------------------------------------------  ------------------------------------------------------------------
169    0   6 Bra 0          Bra
170    3     \x{100}          \x{100}*+
171    6   6 Ket          Ket
172    9     End          End
173  ------------------------------------------------------------------  ------------------------------------------------------------------
174  Capturing subpattern count = 0  Capturing subpattern count = 0
175  Options: utf8  May match empty string
176  First char = 196  Options: utf
 Need char = 128  
   
 /\x{100}*/8D  
 ------------------------------------------------------------------  
   0   6 Bra 0  
   3     \x{100}*  
   6   6 Ket  
   9     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Partial matching not supported  
 Options: utf8  
177  No first char  No first char
178  No need char  No need char
179    
180  /a\x{100}*/8D  /a\x{100}*/8DZ
181  ------------------------------------------------------------------  ------------------------------------------------------------------
182    0   8 Bra 0          Bra
183    3     a          a
184    5     \x{100}*          \x{100}*+
185    8   8 Ket          Ket
186   11     End          End
187  ------------------------------------------------------------------  ------------------------------------------------------------------
188  Capturing subpattern count = 0  Capturing subpattern count = 0
189  Partial matching not supported  Options: utf
 Options: utf8  
190  First char = 'a'  First char = 'a'
191  No need char  No need char
192    
193  /ab\x{100}*/8D  /ab\x{100}*/8DZ
194  ------------------------------------------------------------------  ------------------------------------------------------------------
195    0  10 Bra 0          Bra
196    3     ab          ab
197    7     \x{100}*          \x{100}*+
198   10  10 Ket          Ket
199   13     End          End
200  ------------------------------------------------------------------  ------------------------------------------------------------------
201  Capturing subpattern count = 0  Capturing subpattern count = 0
202  Partial matching not supported  Options: utf
 Options: utf8  
203  First char = 'a'  First char = 'a'
204  Need char = 'b'  Need char = 'b'
205    
206  /a\x{100}\x{101}*/8D  /\x{100}*A/8DZ
 ------------------------------------------------------------------  
   0  11 Bra 0  
   3     a\x{100}  
   8     \x{101}*  
  11  11 Ket  
  14     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Partial matching not supported  
 Options: utf8  
 First char = 'a'  
 Need char = 128  
   
 /a\x{100}\x{101}+/8D  
 ------------------------------------------------------------------  
   0  11 Bra 0  
   3     a\x{100}  
   8     \x{101}+  
  11  11 Ket  
  14     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Partial matching not supported  
 Options: utf8  
 First char = 'a'  
 Need char = 129  
   
 /\x{100}*A/8D  
207  ------------------------------------------------------------------  ------------------------------------------------------------------
208    0   8 Bra 0          Bra
209    3     \x{100}*          \x{100}*+
210    6     A          A
211    8   8 Ket          Ket
212   11     End          End
213  ------------------------------------------------------------------  ------------------------------------------------------------------
214  Capturing subpattern count = 0  Capturing subpattern count = 0
215  Partial matching not supported  Options: utf
 Options: utf8  
216  No first char  No first char
217  Need char = 'A'  Need char = 'A'
218      A      A
219   0: A   0: A
220    
221  /\x{100}*\d(?R)/8D  /\x{100}*\d(?R)/8DZ
 ------------------------------------------------------------------  
   0  10 Bra 0  
   3     \x{100}*  
   6     \d  
   7   0 Recurse  
  10  10 Ket  
  13     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Partial matching not supported  
 Options: utf8  
 No first char  
 No need char  
   
 /[^\x{c4}]/D  
 ------------------------------------------------------------------  
   0  36 Bra 0  
   3     [\x01-35-bd-z|~-\xff] (neg)  
  36  36 Ket  
  39     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 No options  
 No first char  
 No need char  
   
 /[^\x{c4}]/8D  
 ------------------------------------------------------------------  
   0  36 Bra 0  
   3     [\x00-\xc3\xc5-\xff] (neg)  
  36  36 Ket  
  39     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Options: utf8  
 No first char  
 No need char  
   
 /[\x{100}]/8DM  
 Memory allocation (code space): 47  
222  ------------------------------------------------------------------  ------------------------------------------------------------------
223    0  11 Bra 0          Bra
224    3     [\x{100}]          \x{100}*+
225   11  11 Ket          \d
226   14     End          Recurse
227            Ket
228            End
229  ------------------------------------------------------------------  ------------------------------------------------------------------
230  Capturing subpattern count = 0  Capturing subpattern count = 0
231  Options: utf8  Options: utf
232  No first char  No first char
233  No need char  No need char
     \x{100}  
  0: \x{100}  
     Z\x{100}  
  0: \x{100}  
     \x{100}Z  
  0: \x{100}  
     *** Failers  
 No match  
234    
235  /[Z\x{100}]/8DM  /[Z\x{100}]/8DZ
 Memory allocation (code space): 47  
236  ------------------------------------------------------------------  ------------------------------------------------------------------
237    0  43 Bra 0          Bra
238    3     [Z\x{100}]          [Z\x{100}]
239   43  43 Ket          Ket
240   46     End          End
241  ------------------------------------------------------------------  ------------------------------------------------------------------
242  Capturing subpattern count = 0  Capturing subpattern count = 0
243  Options: utf8  Options: utf
244  No first char  No first char
245  No need char  No need char
246      Z\x{100}      Z\x{100}
# Line 739  No match Line 267  No match
267      \x{ff}      \x{ff}
268  No match  No match
269    
270  /[z-\x{100}]/8D  /[z-\x{100}]/8DZ
271  ------------------------------------------------------------------  ------------------------------------------------------------------
272    0  12 Bra 0          Bra
273    3     [z-\x{100}]          [z-\xff\x{100}]
274   12  12 Ket          Ket
275   15     End          End
276  ------------------------------------------------------------------  ------------------------------------------------------------------
277  Capturing subpattern count = 0  Capturing subpattern count = 0
278  Options: utf8  Options: utf
279  No first char  No first char
280  No need char  No need char
281    
282  /[z\Qa-d]Ā\E]/8D  /[z\Qa-d]Ā\E]/8DZ
283  ------------------------------------------------------------------  ------------------------------------------------------------------
284    0  43 Bra 0          Bra
285    3     [\-\]adz\x{100}]          [\-\]adz\x{100}]
286   43  43 Ket          Ket
287   46     End          End
288  ------------------------------------------------------------------  ------------------------------------------------------------------
289  Capturing subpattern count = 0  Capturing subpattern count = 0
290  Options: utf8  Options: utf
291  No first char  No first char
292  No need char  No need char
293      \x{100}      \x{100}
# Line 767  No need char Line 295  No need char
295      Ā      Ā
296   0: \x{100}   0: \x{100}
297    
298  /[\xFF]/D  /[\xFF]/DZ
299  ------------------------------------------------------------------  ------------------------------------------------------------------
300    0   5 Bra 0          Bra
301    3     \xff          \x{ff}
302    5   5 Ket          Ket
303    8     End          End
304  ------------------------------------------------------------------  ------------------------------------------------------------------
305  Capturing subpattern count = 0  Capturing subpattern count = 0
306  No options  No options
307  First char = 255  First char = \xff
308  No need char  No need char
309      >\xff<      >\xff<
310   0: \xff   0: \xff
311    
312  /[\xff]/D8  /[^\xFF]/DZ
 ------------------------------------------------------------------  
   0   6 Bra 0  
   3     \x{ff}  
   6   6 Ket  
   9     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Options: utf8  
 First char = 195  
 Need char = 191  
     >\x{ff}<  
  0: \x{ff}  
   
 /[^\xFF]/D  
313  ------------------------------------------------------------------  ------------------------------------------------------------------
314    0   5 Bra 0          Bra
315    3     [^\xff]          [^\x{ff}]
316    5   5 Ket          Ket
317    8     End          End
318  ------------------------------------------------------------------  ------------------------------------------------------------------
319  Capturing subpattern count = 0  Capturing subpattern count = 0
320  No options  No options
321  No first char  No first char
322  No need char  No need char
323    
 /[^\xff]/8D  
 ------------------------------------------------------------------  
   0  36 Bra 0  
   3     [\x00-\xfe] (neg)  
  36  36 Ket  
  39     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Options: utf8  
 No first char  
 No need char  
   
324  /[Ä-Ü]/8  /[Ä-Ü]/8
325      Ö # Matches without Study      Ö # Matches without Study
326   0: \x{d6}   0: \x{d6}
# Line 843  No need char Line 345  No need char
345      \x{d6}      \x{d6}
346   0: \x{d6}   0: \x{d6}
347    
348  /[]/8  /[^\x{100}]abc(xyz(?1))/8DZ
 Failed: invalid UTF-8 string at offset 2  
   
 //8  
 Failed: invalid UTF-8 string at offset 0  
   
 /xxx/8  
 Failed: invalid UTF-8 string at offset 1  
   
 /xxx/8?D  
 ------------------------------------------------------------------  
   0  15 Bra 0  
   3     \X{c0}\X{c0}\X{c0}xxx  
  15  15 Ket  
  18     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 0  
 Options: utf8 no_utf8_check  
 First char = 195  
 Need char = 'x'  
   
 /abc/8  
     ]  
 Error -10  
       
 Error -10  
       
 Error -10  
     \?  
 No match  
   
 /anything/8  
     \xc0\x80  
 Error -10  
     \xc1\x8f  
 Error -10  
     \xe0\x9f\x80  
 Error -10  
     \xf0\x8f\x80\x80  
 Error -10  
     \xf8\x87\x80\x80\x80  
 Error -10  
     \xfc\x83\x80\x80\x80\x80  
 Error -10  
     \xfe\x80\x80\x80\x80\x80  
 Error -10  
     \xff\x80\x80\x80\x80\x80  
 Error -10  
     \xc3\x8f  
 No match  
     \xe0\xaf\x80  
 No match  
     \xe1\x80\x80  
 No match  
     \xf0\x9f\x80\x80  
 No match  
     \xf1\x8f\x80\x80  
 No match  
     \xf8\x88\x80\x80\x80  
 No match  
     \xf9\x87\x80\x80\x80  
 No match  
     \xfc\x84\x80\x80\x80\x80  
 No match  
     \xfd\x83\x80\x80\x80\x80  
 No match  
   
 /\x{100}abc(xyz(?1))/8D  
 ------------------------------------------------------------------  
   0  27 Bra 0  
   3     \x{100}abc  
  12  12 Bra 1  
  15     xyz  
  21  12 Recurse  
  24  12 Ket  
  27  27 Ket  
  30     End  
 ------------------------------------------------------------------  
 Capturing subpattern count = 1  
 Options: utf8  
 First char = 196  
 Need char = 'z'  
   
 /[^\x{100}]abc(xyz(?1))/8D  
349  ------------------------------------------------------------------  ------------------------------------------------------------------
350    0  32 Bra 0          Bra
351    3     [^\x{100}]          [^\x{100}]
352   11     abc          abc
353   17  12 Bra 1          CBra 1
354   20     xyz          xyz
355   26  17 Recurse          Recurse
356   29  12 Ket          Ket
357   32  32 Ket          Ket
358   35     End          End
359  ------------------------------------------------------------------  ------------------------------------------------------------------
360  Capturing subpattern count = 1  Capturing subpattern count = 1
361  Options: utf8  Options: utf
362  No first char  No first char
363  Need char = 'z'  Need char = 'z'
364    
365  /[ab\x{100}]abc(xyz(?1))/8D  /[ab\x{100}]abc(xyz(?1))/8DZ
366  ------------------------------------------------------------------  ------------------------------------------------------------------
367    0  64 Bra 0          Bra
368    3     [ab\x{100}]          [ab\x{100}]
369   43     abc          abc
370   49  12 Bra 1          CBra 1
371   52     xyz          xyz
372   58  49 Recurse          Recurse
373   61  12 Ket          Ket
374   64  64 Ket          Ket
375   67     End          End
376  ------------------------------------------------------------------  ------------------------------------------------------------------
377  Capturing subpattern count = 1  Capturing subpattern count = 1
378  Options: utf8  Options: utf
379  No first char  No first char
380  Need char = 'z'  Need char = 'z'
381    
382  /(\x{100}(b(?2)c))?/D8  /(\x{100}(b(?2)c))?/DZ8
383  ------------------------------------------------------------------  ------------------------------------------------------------------
384    0  26 Bra 0          Bra
385    3     Brazero          Brazero
386    4  19 Bra 1          CBra 1
387    7     \x{100}          \x{100}
388   10  10 Bra 2          CBra 2
389   13     b          b
390   15  10 Recurse          Recurse
391   18     c          c
392   20  10 Ket          Ket
393   23  19 Ket          Ket
394   26  26 Ket          Ket
395   29     End          End
396  ------------------------------------------------------------------  ------------------------------------------------------------------
397  Capturing subpattern count = 2  Capturing subpattern count = 2
398  Options: utf8  May match empty string
399    Options: utf
400  No first char  No first char
401  No need char  No need char
402    
403  /(\x{100}(b(?2)c)){0,2}/D8  /(\x{100}(b(?2)c)){0,2}/DZ8
404  ------------------------------------------------------------------  ------------------------------------------------------------------
405    0  55 Bra 0          Bra
406    3     Brazero          Brazero
407    4  48 Bra 0          Bra
408    7  19 Bra 1          CBra 1
409   10     \x{100}          \x{100}
410   13  10 Bra 2          CBra 2
411   16     b          b
412   18  13 Recurse          Recurse
413   21     c          c
414   23  10 Ket          Ket
415   26  19 Ket          Ket
416   29     Brazero          Brazero
417   30  19 Bra 1          CBra 1
418   33     \x{100}          \x{100}
419   36  10 Bra 2          CBra 2
420   39     b          b
421   41  13 Recurse          Recurse
422   44     c          c
423   46  10 Ket          Ket
424   49  19 Ket          Ket
425   52  48 Ket          Ket
426   55  55 Ket          Ket
427   58     End          End
428  ------------------------------------------------------------------  ------------------------------------------------------------------
429  Capturing subpattern count = 2  Capturing subpattern count = 2
430  Options: utf8  May match empty string
431    Options: utf
432  No first char  No first char
433  No need char  No need char
434    
435  /(\x{100}(b(?1)c))?/D8  /(\x{100}(b(?1)c))?/DZ8
436  ------------------------------------------------------------------  ------------------------------------------------------------------
437    0  26 Bra 0          Bra
438    3     Brazero          Brazero
439    4  19 Bra 1          CBra 1
440    7     \x{100}          \x{100}
441   10  10 Bra 2          CBra 2
442   13     b          b
443   15   4 Recurse          Recurse
444   18     c          c
445   20  10 Ket          Ket
446   23  19 Ket          Ket
447   26  26 Ket          Ket
448   29     End          End
449  ------------------------------------------------------------------  ------------------------------------------------------------------
450  Capturing subpattern count = 2  Capturing subpattern count = 2
451  Options: utf8  May match empty string
452    Options: utf
453  No first char  No first char
454  No need char  No need char
455    
456  /(\x{100}(b(?1)c)){0,2}/D8  /(\x{100}(b(?1)c)){0,2}/DZ8
457  ------------------------------------------------------------------  ------------------------------------------------------------------
458    0  55 Bra 0          Bra
459    3     Brazero          Brazero
460    4  48 Bra 0          Bra
461    7  19 Bra 1          CBra 1
462   10     \x{100}          \x{100}
463   13  10 Bra 2          CBra 2
464   16     b          b
465   18   7 Recurse          Recurse
466   21     c          c
467   23  10 Ket          Ket
468   26  19 Ket          Ket
469   29     Brazero          Brazero
470   30  19 Bra 1          CBra 1
471   33     \x{100}          \x{100}
472   36  10 Bra 2          CBra 2
473   39     b          b
474   41   7 Recurse          Recurse
475   44     c          c
476   46  10 Ket          Ket
477   49  19 Ket          Ket
478   52  48 Ket          Ket
479   55  55 Ket          Ket
480   58     End          End
481  ------------------------------------------------------------------  ------------------------------------------------------------------
482  Capturing subpattern count = 2  Capturing subpattern count = 2
483  Options: utf8  May match empty string
484    Options: utf
485  No first char  No first char
486  No need char  No need char
487    
# Line 1072  No need char Line 495  No need char
495      \x{100}X      \x{100}X
496   0: X   0: X
497    
498  / End of testinput5 /  /^\ሴ/8DZ
499    ------------------------------------------------------------------
500            Bra
501            ^
502            \x{1234}
503            Ket
504            End
505    ------------------------------------------------------------------
506    Capturing subpattern count = 0
507    Options: anchored utf
508    No first char
509    No need char
510    
511    /\x{100}*\d/8DZ
512    ------------------------------------------------------------------
513            Bra
514            \x{100}*+
515            \d
516            Ket
517            End
518    ------------------------------------------------------------------
519    Capturing subpattern count = 0
520    Options: utf
521    No first char
522    No need char
523    
524    /\x{100}*\s/8DZ
525    ------------------------------------------------------------------
526            Bra
527            \x{100}*+
528            \s
529            Ket
530            End
531    ------------------------------------------------------------------
532    Capturing subpattern count = 0
533    Options: utf
534    No first char
535    No need char
536    
537    /\x{100}*\w/8DZ
538    ------------------------------------------------------------------
539            Bra
540            \x{100}*+
541            \w
542            Ket
543            End
544    ------------------------------------------------------------------
545    Capturing subpattern count = 0
546    Options: utf
547    No first char
548    No need char
549    
550    /\x{100}*\D/8DZ
551    ------------------------------------------------------------------
552            Bra
553            \x{100}*
554            \D
555            Ket
556            End
557    ------------------------------------------------------------------
558    Capturing subpattern count = 0
559    Options: utf
560    No first char
561    No need char
562    
563    /\x{100}*\S/8DZ
564    ------------------------------------------------------------------
565            Bra
566            \x{100}*
567            \S
568            Ket
569            End
570    ------------------------------------------------------------------
571    Capturing subpattern count = 0
572    Options: utf
573    No first char
574    No need char
575    
576    /\x{100}*\W/8DZ
577    ------------------------------------------------------------------
578            Bra
579            \x{100}*
580            \W
581            Ket
582            End
583    ------------------------------------------------------------------
584    Capturing subpattern count = 0
585    Options: utf
586    No first char
587    No need char
588    
589    /()()()()()()()()()()
590     ()()()()()()()()()()
591     ()()()()()()()()()()
592     ()()()()()()()()()()
593     A (x) (?41) B/8x
594        AxxB
595    Matched, but too many substrings
596     0: AxxB
597     1:
598     2:
599     3:
600     4:
601     5:
602     6:
603     7:
604     8:
605     9:
606    10:
607    11:
608    12:
609    13:
610    14:
611    
612    /^[\x{100}\E-\Q\E\x{150}]/BZ8
613    ------------------------------------------------------------------
614            Bra
615            ^
616            [\x{100}-\x{150}]
617            Ket
618            End
619    ------------------------------------------------------------------
620    
621    /^[\QĀ\E-\QŐ\E]/BZ8
622    ------------------------------------------------------------------
623            Bra
624            ^
625            [\x{100}-\x{150}]
626            Ket
627            End
628    ------------------------------------------------------------------
629    
630    /^abc./mgx8<any>
631        abc1 \x0aabc2 \x0babc3xx \x0cabc4 \x0dabc5xx \x0d\x0aabc6 \x{0085}abc7 \x{2028}abc8 \x{2029}abc9 JUNK
632     0: abc1
633     0: abc2
634     0: abc3
635     0: abc4
636     0: abc5
637     0: abc6
638     0: abc7
639     0: abc8
640     0: abc9
641    
642    /abc.$/mgx8<any>
643        abc1\x0a abc2\x0b abc3\x0c abc4\x0d abc5\x0d\x0a abc6\x{0085} abc7\x{2028} abc8\x{2029} abc9
644     0: abc1
645     0: abc2
646     0: abc3
647     0: abc4
648     0: abc5
649     0: abc6
650     0: abc7
651     0: abc8
652     0: abc9
653    
654    /^a\Rb/8<bsr_unicode>
655        a\nb
656     0: a\x{0a}b
657        a\rb
658     0: a\x{0d}b
659        a\r\nb
660     0: a\x{0d}\x{0a}b
661        a\x0bb
662     0: a\x{0b}b
663        a\x0cb
664     0: a\x{0c}b
665        a\x{85}b
666     0: a\x{85}b
667        a\x{2028}b
668     0: a\x{2028}b
669        a\x{2029}b
670     0: a\x{2029}b
671        ** Failers
672    No match
673        a\n\rb
674    No match
675    
676    /^a\R*b/8<bsr_unicode>
677        ab
678     0: ab
679        a\nb
680     0: a\x{0a}b
681        a\rb
682     0: a\x{0d}b
683        a\r\nb
684     0: a\x{0d}\x{0a}b
685        a\x0bb
686     0: a\x{0b}b
687        a\x0c\x{2028}\x{2029}b
688     0: a\x{0c}\x{2028}\x{2029}b
689        a\x{85}b
690     0: a\x{85}b
691        a\n\rb
692     0: a\x{0a}\x{0d}b
693        a\n\r\x{85}\x0cb
694     0: a\x{0a}\x{0d}\x{85}\x{0c}b
695    
696    /^a\R+b/8<bsr_unicode>
697        a\nb
698     0: a\x{0a}b
699        a\rb
700     0: a\x{0d}b
701        a\r\nb
702     0: a\x{0d}\x{0a}b
703        a\x0bb
704     0: a\x{0b}b
705        a\x0c\x{2028}\x{2029}b
706     0: a\x{0c}\x{2028}\x{2029}b
707        a\x{85}b
708     0: a\x{85}b
709        a\n\rb
710     0: a\x{0a}\x{0d}b
711        a\n\r\x{85}\x0cb
712     0: a\x{0a}\x{0d}\x{85}\x{0c}b
713        ** Failers
714    No match
715        ab
716    No match
717    
718    /^a\R{1,3}b/8<bsr_unicode>
719        a\nb
720     0: a\x{0a}b
721        a\n\rb
722     0: a\x{0a}\x{0d}b
723        a\n\r\x{85}b
724     0: a\x{0a}\x{0d}\x{85}b
725        a\r\n\r\nb
726     0: a\x{0d}\x{0a}\x{0d}\x{0a}b
727        a\r\n\r\n\r\nb
728     0: a\x{0d}\x{0a}\x{0d}\x{0a}\x{0d}\x{0a}b
729        a\n\r\n\rb
730     0: a\x{0a}\x{0d}\x{0a}\x{0d}b
731        a\n\n\r\nb
732     0: a\x{0a}\x{0a}\x{0d}\x{0a}b
733        ** Failers
734    No match
735        a\n\n\n\rb
736    No match
737        a\r
738    No match
739    
740    /\H\h\V\v/8
741        X X\x0a
742     0: X X\x{0a}
743        X\x09X\x0b
744     0: X\x{09}X\x{0b}
745        ** Failers
746    No match
747        \x{a0} X\x0a
748    No match
749    
750    /\H*\h+\V?\v{3,4}/8
751        \x09\x20\x{a0}X\x0a\x0b\x0c\x0d\x0a
752     0: \x{09} \x{a0}X\x{0a}\x{0b}\x{0c}\x{0d}
753        \x09\x20\x{a0}\x0a\x0b\x0c\x0d\x0a
754     0: \x{09} \x{a0}\x{0a}\x{0b}\x{0c}\x{0d}
755        \x09\x20\x{a0}\x0a\x0b\x0c
756     0: \x{09} \x{a0}\x{0a}\x{0b}\x{0c}
757        ** Failers
758    No match
759        \x09\x20\x{a0}\x0a\x0b
760    No match
761    
762    /\H\h\V\v/8
763        \x{3001}\x{3000}\x{2030}\x{2028}
764     0: \x{3001}\x{3000}\x{2030}\x{2028}
765        X\x{180e}X\x{85}
766     0: X\x{180e}X\x{85}
767        ** Failers
768    No match
769        \x{2009} X\x0a
770    No match
771    
772    /\H*\h+\V?\v{3,4}/8
773        \x{1680}\x{180e}\x{2007}X\x{2028}\x{2029}\x0c\x0d\x0a
774     0: \x{1680}\x{180e}\x{2007}X\x{2028}\x{2029}\x{0c}\x{0d}
775        \x09\x{205f}\x{a0}\x0a\x{2029}\x0c\x{2028}\x0a
776     0: \x{09}\x{205f}\x{a0}\x{0a}\x{2029}\x{0c}\x{2028}
777        \x09\x20\x{202f}\x0a\x0b\x0c
778     0: \x{09} \x{202f}\x{0a}\x{0b}\x{0c}
779        ** Failers
780    No match
781        \x09\x{200a}\x{a0}\x{2028}\x0b
782    No match
783    
784    /[\h]/8BZ
785    ------------------------------------------------------------------
786            Bra
787            [\x09 \xa0\x{1680}\x{180e}\x{2000}-\x{200a}\x{202f}\x{205f}\x{3000}]
788            Ket
789            End
790    ------------------------------------------------------------------
791        >\x{1680}
792     0: \x{1680}
793    
794    /[\h]{3,}/8BZ
795    ------------------------------------------------------------------
796            Bra
797            [\x09 \xa0\x{1680}\x{180e}\x{2000}-\x{200a}\x{202f}\x{205f}\x{3000}]{3,}+
798            Ket
799            End
800    ------------------------------------------------------------------
801        >\x{1680}\x{180e}\x{2000}\x{2003}\x{200a}\x{202f}\x{205f}\x{3000}<
802     0: \x{1680}\x{180e}\x{2000}\x{2003}\x{200a}\x{202f}\x{205f}\x{3000}
803    
804    /[\v]/8BZ
805    ------------------------------------------------------------------
806            Bra
807            [\x0a-\x0d\x85\x{2028}-\x{2029}]
808            Ket
809            End
810    ------------------------------------------------------------------
811    
812    /[\H]/8BZ
813    ------------------------------------------------------------------
814            Bra
815            [\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{10ffff}]
816            Ket
817            End
818    ------------------------------------------------------------------
819    
820    /[\V]/8BZ
821    ------------------------------------------------------------------
822            Bra
823            [\x00-\x09\x0e-\x84\x86-\xff\x{100}-\x{2027}\x{202a}-\x{10ffff}]
824            Ket
825            End
826    ------------------------------------------------------------------
827    
828    /.*$/8<any>
829        \x{1ec5}
830     0: \x{1ec5}
831    
832    /a\Rb/I8<bsr_anycrlf>
833    Capturing subpattern count = 0
834    Options: bsr_anycrlf utf
835    First char = 'a'
836    Need char = 'b'
837        a\rb
838     0: a\x{0d}b
839        a\nb
840     0: a\x{0a}b
841        a\r\nb
842     0: a\x{0d}\x{0a}b
843        ** Failers
844    No match
845        a\x{85}b
846    No match
847        a\x0bb
848    No match
849    
850    /a\Rb/I8<bsr_unicode>
851    Capturing subpattern count = 0
852    Options: bsr_unicode utf
853    First char = 'a'
854    Need char = 'b'
855        a\rb
856     0: a\x{0d}b
857        a\nb
858     0: a\x{0a}b
859        a\r\nb
860     0: a\x{0d}\x{0a}b
861        a\x{85}b
862     0: a\x{85}b
863        a\x0bb
864     0: a\x{0b}b
865        ** Failers
866    No match
867        a\x{85}b\<bsr_anycrlf>
868    No match
869        a\x0bb\<bsr_anycrlf>
870    No match
871    
872    /a\R?b/I8<bsr_anycrlf>
873    Capturing subpattern count = 0
874    Options: bsr_anycrlf utf
875    First char = 'a'
876    Need char = 'b'
877        a\rb
878     0: a\x{0d}b
879        a\nb
880     0: a\x{0a}b
881        a\r\nb
882     0: a\x{0d}\x{0a}b
883        ** Failers
884    No match
885        a\x{85}b
886    No match
887        a\x0bb
888    No match
889    
890    /a\R?b/I8<bsr_unicode>
891    Capturing subpattern count = 0
892    Options: bsr_unicode utf
893    First char = 'a'
894    Need char = 'b'
895        a\rb
896     0: a\x{0d}b
897        a\nb
898     0: a\x{0a}b
899        a\r\nb
900     0: a\x{0d}\x{0a}b
901        a\x{85}b
902     0: a\x{85}b
903        a\x0bb
904     0: a\x{0b}b
905        ** Failers
906    No match
907        a\x{85}b\<bsr_anycrlf>
908    No match
909        a\x0bb\<bsr_anycrlf>
910    No match
911    
912    /.*a.*=.b.*/8<ANY>
913        QQQ\x{2029}ABCaXYZ=!bPQR
914     0: ABCaXYZ=!bPQR
915        ** Failers
916    No match
917        a\x{2029}b
918    No match
919        \x61\xe2\x80\xa9\x62
920    No match
921    
922    /[[:a\x{100}b:]]/8
923    Failed: unknown POSIX class name at offset 3
924    
925    /a[^]b/<JS>8
926        a\x{1234}b
927     0: a\x{1234}b
928        a\nb
929     0: a\x{0a}b
930        ** Failers
931    No match
932        ab
933    No match
934    
935    /a[^]+b/<JS>8
936        aXb
937     0: aXb
938        a\nX\nX\x{1234}b
939     0: a\x{0a}X\x{0a}X\x{1234}b
940        ** Failers
941    No match
942        ab
943    No match
944    
945    /(\x{de})\1/
946        \x{de}\x{de}
947     0: \xde\xde
948     1: \xde
949    
950    /X/8f<any>
951        A\x{1ec5}ABCXYZ
952     0: X
953    
954    /Xa{2,4}b/8
955        X\P
956    Partial match: X
957        Xa\P
958    Partial match: Xa
959        Xaa\P
960    Partial match: Xaa
961        Xaaa\P
962    Partial match: Xaaa
963        Xaaaa\P
964    Partial match: Xaaaa
965    
966    /Xa{2,4}?b/8
967        X\P
968    Partial match: X
969        Xa\P
970    Partial match: Xa
971        Xaa\P
972    Partial match: Xaa
973        Xaaa\P
974    Partial match: Xaaa
975        Xaaaa\P
976    Partial match: Xaaaa
977    
978    /Xa{2,4}+b/8
979        X\P
980    Partial match: X
981        Xa\P
982    Partial match: Xa
983        Xaa\P
984    Partial match: Xaa
985        Xaaa\P
986    Partial match: Xaaa
987        Xaaaa\P
988    Partial match: Xaaaa
989    
990    /X\x{123}{2,4}b/8
991        X\P
992    Partial match: X
993        X\x{123}\P
994    Partial match: X\x{123}
995        X\x{123}\x{123}\P
996    Partial match: X\x{123}\x{123}
997        X\x{123}\x{123}\x{123}\P
998    Partial match: X\x{123}\x{123}\x{123}
999        X\x{123}\x{123}\x{123}\x{123}\P
1000    Partial match: X\x{123}\x{123}\x{123}\x{123}
1001    
1002    /X\x{123}{2,4}?b/8
1003        X\P
1004    Partial match: X
1005        X\x{123}\P
1006    Partial match: X\x{123}
1007        X\x{123}\x{123}\P
1008    Partial match: X\x{123}\x{123}
1009        X\x{123}\x{123}\x{123}\P
1010    Partial match: X\x{123}\x{123}\x{123}
1011        X\x{123}\x{123}\x{123}\x{123}\P
1012    Partial match: X\x{123}\x{123}\x{123}\x{123}
1013    
1014    /X\x{123}{2,4}+b/8
1015        X\P
1016    Partial match: X
1017        X\x{123}\P
1018    Partial match: X\x{123}
1019        X\x{123}\x{123}\P
1020    Partial match: X\x{123}\x{123}
1021        X\x{123}\x{123}\x{123}\P
1022    Partial match: X\x{123}\x{123}\x{123}
1023        X\x{123}\x{123}\x{123}\x{123}\P
1024    Partial match: X\x{123}\x{123}\x{123}\x{123}
1025    
1026    /X\x{123}{2,4}b/8
1027        Xx\P
1028    No match
1029        X\x{123}x\P
1030    No match
1031        X\x{123}\x{123}x\P
1032    No match
1033        X\x{123}\x{123}\x{123}x\P
1034    No match
1035        X\x{123}\x{123}\x{123}\x{123}x\P
1036    No match
1037    
1038    /X\x{123}{2,4}?b/8
1039        Xx\P
1040    No match
1041        X\x{123}x\P
1042    No match
1043        X\x{123}\x{123}x\P
1044    No match
1045        X\x{123}\x{123}\x{123}x\P
1046    No match
1047        X\x{123}\x{123}\x{123}\x{123}x\P
1048    No match
1049    
1050    /X\x{123}{2,4}+b/8
1051        Xx\P
1052    No match
1053        X\x{123}x\P
1054    No match
1055        X\x{123}\x{123}x\P
1056    No match
1057        X\x{123}\x{123}\x{123}x\P
1058    No match
1059        X\x{123}\x{123}\x{123}\x{123}x\P
1060    No match
1061    
1062    /X\d{2,4}b/8
1063        X\P
1064    Partial match: X
1065        X3\P
1066    Partial match: X3
1067        X33\P
1068    Partial match: X33
1069        X333\P
1070    Partial match: X333
1071        X3333\P
1072    Partial match: X3333
1073    
1074    /X\d{2,4}?b/8
1075        X\P
1076    Partial match: X
1077        X3\P
1078    Partial match: X3
1079        X33\P
1080    Partial match: X33
1081        X333\P
1082    Partial match: X333
1083        X3333\P
1084    Partial match: X3333
1085    
1086    /X\d{2,4}+b/8
1087        X\P
1088    Partial match: X
1089        X3\P
1090    Partial match: X3
1091        X33\P
1092    Partial match: X33
1093        X333\P
1094    Partial match: X333
1095        X3333\P
1096    Partial match: X3333
1097    
1098    /X\D{2,4}b/8
1099        X\P
1100    Partial match: X
1101        Xa\P
1102    Partial match: Xa
1103        Xaa\P
1104    Partial match: Xaa
1105        Xaaa\P
1106    Partial match: Xaaa
1107        Xaaaa\P
1108    Partial match: Xaaaa
1109    
1110    /X\D{2,4}?b/8
1111        X\P
1112    Partial match: X
1113        Xa\P
1114    Partial match: Xa
1115        Xaa\P
1116    Partial match: Xaa
1117        Xaaa\P
1118    Partial match: Xaaa
1119        Xaaaa\P
1120    Partial match: Xaaaa
1121    
1122    /X\D{2,4}+b/8
1123        X\P
1124    Partial match: X
1125        Xa\P
1126    Partial match: Xa
1127        Xaa\P
1128    Partial match: Xaa
1129        Xaaa\P
1130    Partial match: Xaaa
1131        Xaaaa\P
1132    Partial match: Xaaaa
1133    
1134    /X\D{2,4}b/8
1135        X\P
1136    Partial match: X
1137        X\x{123}\P
1138    Partial match: X\x{123}
1139        X\x{123}\x{123}\P
1140    Partial match: X\x{123}\x{123}
1141        X\x{123}\x{123}\x{123}\P
1142    Partial match: X\x{123}\x{123}\x{123}
1143        X\x{123}\x{123}\x{123}\x{123}\P
1144    Partial match: X\x{123}\x{123}\x{123}\x{123}
1145    
1146    /X\D{2,4}?b/8
1147        X\P
1148    Partial match: X
1149        X\x{123}\P
1150    Partial match: X\x{123}
1151        X\x{123}\x{123}\P
1152    Partial match: X\x{123}\x{123}
1153        X\x{123}\x{123}\x{123}\P
1154    Partial match: X\x{123}\x{123}\x{123}
1155        X\x{123}\x{123}\x{123}\x{123}\P
1156    Partial match: X\x{123}\x{123}\x{123}\x{123}
1157    
1158    /X\D{2,4}+b/8
1159        X\P
1160    Partial match: X
1161        X\x{123}\P
1162    Partial match: X\x{123}
1163        X\x{123}\x{123}\P
1164    Partial match: X\x{123}\x{123}
1165        X\x{123}\x{123}\x{123}\P
1166    Partial match: X\x{123}\x{123}\x{123}
1167        X\x{123}\x{123}\x{123}\x{123}\P
1168    Partial match: X\x{123}\x{123}\x{123}\x{123}
1169    
1170    /X[abc]{2,4}b/8
1171        X\P
1172    Partial match: X
1173        Xa\P
1174    Partial match: Xa
1175        Xaa\P
1176    Partial match: Xaa
1177        Xaaa\P
1178    Partial match: Xaaa
1179        Xaaaa\P
1180    Partial match: Xaaaa
1181    
1182    /X[abc]{2,4}?b/8
1183        X\P
1184    Partial match: X
1185        Xa\P
1186    Partial match: Xa
1187        Xaa\P
1188    Partial match: Xaa
1189        Xaaa\P
1190    Partial match: Xaaa
1191        Xaaaa\P
1192    Partial match: Xaaaa
1193    
1194    /X[abc]{2,4}+b/8
1195        X\P
1196    Partial match: X
1197        Xa\P
1198    Partial match: Xa
1199        Xaa\P
1200    Partial match: Xaa
1201        Xaaa\P
1202    Partial match: Xaaa
1203        Xaaaa\P
1204    Partial match: Xaaaa
1205    
1206    /X[abc\x{123}]{2,4}b/8
1207        X\P
1208    Partial match: X
1209        X\x{123}\P
1210    Partial match: X\x{123}
1211        X\x{123}\x{123}\P
1212    Partial match: X\x{123}\x{123}
1213        X\x{123}\x{123}\x{123}\P
1214    Partial match: X\x{123}\x{123}\x{123}
1215        X\x{123}\x{123}\x{123}\x{123}\P
1216    Partial match: X\x{123}\x{123}\x{123}\x{123}
1217    
1218    /X[abc\x{123}]{2,4}?b/8
1219        X\P
1220    Partial match: X
1221        X\x{123}\P
1222    Partial match: X\x{123}
1223        X\x{123}\x{123}\P
1224    Partial match: X\x{123}\x{123}
1225        X\x{123}\x{123}\x{123}\P
1226    Partial match: X\x{123}\x{123}\x{123}
1227        X\x{123}\x{123}\x{123}\x{123}\P
1228    Partial match: X\x{123}\x{123}\x{123}\x{123}
1229    
1230    /X[abc\x{123}]{2,4}+b/8
1231        X\P
1232    Partial match: X
1233        X\x{123}\P
1234    Partial match: X\x{123}
1235        X\x{123}\x{123}\P
1236    Partial match: X\x{123}\x{123}
1237        X\x{123}\x{123}\x{123}\P
1238    Partial match: X\x{123}\x{123}\x{123}
1239        X\x{123}\x{123}\x{123}\x{123}\P
1240    Partial match: X\x{123}\x{123}\x{123}\x{123}
1241    
1242    /X[^a]{2,4}b/8
1243        X\P
1244    Partial match: X
1245        Xz\P
1246    Partial match: Xz
1247        Xzz\P
1248    Partial match: Xzz
1249        Xzzz\P
1250    Partial match: Xzzz
1251        Xzzzz\P
1252    Partial match: Xzzzz
1253    
1254    /X[^a]{2,4}?b/8
1255        X\P
1256    Partial match: X
1257        Xz\P
1258    Partial match: Xz
1259        Xzz\P
1260    Partial match: Xzz
1261        Xzzz\P
1262    Partial match: Xzzz
1263        Xzzzz\P
1264    Partial match: Xzzzz
1265    
1266    /X[^a]{2,4}+b/8
1267        X\P
1268    Partial match: X
1269        Xz\P
1270    Partial match: Xz
1271        Xzz\P
1272    Partial match: Xzz
1273        Xzzz\P
1274    Partial match: Xzzz
1275        Xzzzz\P
1276    Partial match: Xzzzz
1277    
1278    /X[^a]{2,4}b/8
1279        X\P
1280    Partial match: X
1281        X\x{123}\P
1282    Partial match: X\x{123}
1283        X\x{123}\x{123}\P
1284    Partial match: X\x{123}\x{123}
1285        X\x{123}\x{123}\x{123}\P
1286    Partial match: X\x{123}\x{123}\x{123}
1287        X\x{123}\x{123}\x{123}\x{123}\P
1288    Partial match: X\x{123}\x{123}\x{123}\x{123}
1289    
1290    /X[^a]{2,4}?b/8
1291        X\P
1292    Partial match: X
1293        X\x{123}\P
1294    Partial match: X\x{123}
1295        X\x{123}\x{123}\P
1296    Partial match: X\x{123}\x{123}
1297        X\x{123}\x{123}\x{123}\P
1298    Partial match: X\x{123}\x{123}\x{123}
1299        X\x{123}\x{123}\x{123}\x{123}\P
1300    Partial match: X\x{123}\x{123}\x{123}\x{123}
1301    
1302    /X[^a]{2,4}+b/8
1303        X\P
1304    Partial match: X
1305        X\x{123}\P
1306    Partial match: X\x{123}
1307        X\x{123}\x{123}\P
1308    Partial match: X\x{123}\x{123}
1309        X\x{123}\x{123}\x{123}\P
1310    Partial match: X\x{123}\x{123}\x{123}
1311        X\x{123}\x{123}\x{123}\x{123}\P
1312    Partial match: X\x{123}\x{123}\x{123}\x{123}
1313    
1314    /(Y)X\1{2,4}b/8
1315        YX\P
1316    Partial match: YX
1317        YXY\P
1318    Partial match: YXY
1319        YXYY\P
1320    Partial match: YXYY
1321        YXYYY\P
1322    Partial match: YXYYY
1323        YXYYYY\P
1324    Partial match: YXYYYY
1325    
1326    /(Y)X\1{2,4}?b/8
1327        YX\P
1328    Partial match: YX
1329        YXY\P
1330    Partial match: YXY
1331        YXYY\P
1332    Partial match: YXYY
1333        YXYYY\P
1334    Partial match: YXYYY
1335        YXYYYY\P
1336    Partial match: YXYYYY
1337    
1338    /(Y)X\1{2,4}+b/8
1339        YX\P
1340    Partial match: YX
1341        YXY\P
1342    Partial match: YXY
1343        YXYY\P
1344    Partial match: YXYY
1345        YXYYY\P
1346    Partial match: YXYYY
1347        YXYYYY\P
1348    Partial match: YXYYYY
1349    
1350    /(\x{123})X\1{2,4}b/8
1351        \x{123}X\P
1352    Partial match: \x{123}X
1353        \x{123}X\x{123}\P
1354    Partial match: \x{123}X\x{123}
1355        \x{123}X\x{123}\x{123}\P
1356    Partial match: \x{123}X\x{123}\x{123}
1357        \x{123}X\x{123}\x{123}\x{123}\P
1358    Partial match: \x{123}X\x{123}\x{123}\x{123}
1359        \x{123}X\x{123}\x{123}\x{123}\x{123}\P
1360    Partial match: \x{123}X\x{123}\x{123}\x{123}\x{123}
1361    
1362    /(\x{123})X\1{2,4}?b/8
1363        \x{123}X\P
1364    Partial match: \x{123}X
1365        \x{123}X\x{123}\P
1366    Partial match: \x{123}X\x{123}
1367        \x{123}X\x{123}\x{123}\P
1368    Partial match: \x{123}X\x{123}\x{123}
1369        \x{123}X\x{123}\x{123}\x{123}\P
1370    Partial match: \x{123}X\x{123}\x{123}\x{123}
1371        \x{123}X\x{123}\x{123}\x{123}\x{123}\P
1372    Partial match: \x{123}X\x{123}\x{123}\x{123}\x{123}
1373    
1374    /(\x{123})X\1{2,4}+b/8
1375        \x{123}X\P
1376    Partial match: \x{123}X
1377        \x{123}X\x{123}\P
1378    Partial match: \x{123}X\x{123}
1379        \x{123}X\x{123}\x{123}\P
1380    Partial match: \x{123}X\x{123}\x{123}
1381        \x{123}X\x{123}\x{123}\x{123}\P
1382    Partial match: \x{123}X\x{123}\x{123}\x{123}
1383        \x{123}X\x{123}\x{123}\x{123}\x{123}\P
1384    Partial match: \x{123}X\x{123}\x{123}\x{123}\x{123}
1385    
1386    /\bthe cat\b/8
1387        the cat\P
1388     0: the cat
1389        the cat\P\P
1390    Partial match: the cat
1391    
1392    /abcd*/8
1393        xxxxabcd\P
1394     0: abcd
1395        xxxxabcd\P\P
1396    Partial match: abcd
1397    
1398    /abcd*/i8
1399        xxxxabcd\P
1400     0: abcd
1401        xxxxabcd\P\P
1402    Partial match: abcd
1403        XXXXABCD\P
1404     0: ABCD
1405        XXXXABCD\P\P
1406    Partial match: ABCD
1407    
1408    /abc\d*/8
1409        xxxxabc1\P
1410     0: abc1
1411        xxxxabc1\P\P
1412    Partial match: abc1
1413    
1414    /(a)bc\1*/8
1415        xxxxabca\P
1416     0: abca
1417     1: a
1418        xxxxabca\P\P
1419    Partial match: abca
1420    
1421    /abc[de]*/8
1422        xxxxabcde\P
1423     0: abcde
1424        xxxxabcde\P\P
1425    Partial match: abcde
1426    
1427    /X\W{3}X/8
1428        \PX
1429    Partial match: X
1430    
1431    /\sxxx\s/8T1
1432        AB\x{85}xxx\x{a0}XYZ
1433     0: \x{85}xxx\x{a0}
1434        AB\x{a0}xxx\x{85}XYZ
1435     0: \x{a0}xxx\x{85}
1436    
1437    /\S \S/8T1
1438        \x{a2} \x{84}
1439     0: \x{a2} \x{84}
1440    
1441    'A#хц'8x<any>BZ
1442    ------------------------------------------------------------------
1443            Bra
1444            A
1445            Ket
1446            End
1447    ------------------------------------------------------------------
1448    
1449    'A#хц
1450      PQ'8x<any>BZ
1451    ------------------------------------------------------------------
1452            Bra
1453            APQ
1454            Ket
1455            End
1456    ------------------------------------------------------------------
1457    
1458    /a+#хaa
1459      z#XX?/8x<any>BZ
1460    ------------------------------------------------------------------
1461            Bra
1462            a++
1463            z
1464            Ket
1465            End
1466    ------------------------------------------------------------------
1467    
1468    /a+#хaa
1469      z#х?/8x<any>BZ
1470    ------------------------------------------------------------------
1471            Bra
1472            a++
1473            z
1474            Ket
1475            End
1476    ------------------------------------------------------------------
1477    
1478    /\g{A}xxx#bXX(?'A'123) (?'A'456)/8x<any>BZ
1479    ------------------------------------------------------------------
1480            Bra
1481            \1
1482            xxx
1483            CBra 1
1484            456
1485            Ket
1486            Ket
1487            End
1488    ------------------------------------------------------------------
1489    
1490    /\g{A}xxx#bх(?'A'123) (?'A'456)/8x<any>BZ
1491    ------------------------------------------------------------------
1492            Bra
1493            \1
1494            xxx
1495            CBra 1
1496            456
1497            Ket
1498            Ket
1499            End
1500    ------------------------------------------------------------------
1501    
1502    /^\cģ/8
1503    Failed: \c must be followed by an ASCII character at offset 3
1504    
1505    /(\R*)(.)/s8
1506        \r\n
1507     0: \x{0d}
1508     1:
1509     2: \x{0d}
1510        \r\r\n\n\r
1511     0: \x{0d}\x{0d}\x{0a}\x{0a}\x{0d}
1512     1: \x{0d}\x{0d}\x{0a}\x{0a}
1513     2: \x{0d}
1514        \r\r\n\n\r\n
1515     0: \x{0d}\x{0d}\x{0a}\x{0a}\x{0d}
1516     1: \x{0d}\x{0d}\x{0a}\x{0a}
1517     2: \x{0d}
1518    
1519    /(\R)*(.)/s8
1520        \r\n
1521     0: \x{0d}
1522     1: <unset>
1523     2: \x{0d}
1524        \r\r\n\n\r
1525     0: \x{0d}\x{0d}\x{0a}\x{0a}\x{0d}
1526     1: \x{0a}
1527     2: \x{0d}
1528        \r\r\n\n\r\n
1529     0: \x{0d}\x{0d}\x{0a}\x{0a}\x{0d}
1530     1: \x{0a}
1531     2: \x{0d}
1532    
1533    /[^\x{1234}]+/iS8I
1534    Capturing subpattern count = 0
1535    Options: caseless utf
1536    No first char
1537    No need char
1538    Subject length lower bound = 1
1539    No starting char list
1540    
1541    /[^\x{1234}]+?/iS8I
1542    Capturing subpattern count = 0
1543    Options: caseless utf
1544    No first char
1545    No need char
1546    Subject length lower bound = 1
1547    No starting char list
1548    
1549    /[^\x{1234}]++/iS8I
1550    Capturing subpattern count = 0
1551    Options: caseless utf
1552    No first char
1553    No need char
1554    Subject length lower bound = 1
1555    No starting char list
1556    
1557    /[^\x{1234}]{2}/iS8I
1558    Capturing subpattern count = 0
1559    Options: caseless utf
1560    No first char
1561    No need char
1562    Subject length lower bound = 2
1563    No starting char list
1564    
1565    //<bsr_anycrlf><bsr_unicode>
1566    Failed: inconsistent NEWLINE options at offset 0
1567    
1568    /f.*/
1569        \P\Pfor
1570    Partial match: for
1571    
1572    /f.*/s
1573        \P\Pfor
1574    Partial match: for
1575    
1576    /f.*/8
1577        \P\Pfor
1578    Partial match: for
1579    
1580    /f.*/8s
1581        \P\Pfor
1582    Partial match: for
1583    
1584    /\x{d7ff}\x{e000}/8
1585    
1586    /\x{d800}/8
1587    Failed: disallowed Unicode code point (>= 0xd800 && <= 0xdfff) at offset 7
1588    
1589    /\x{dfff}/8
1590    Failed: disallowed Unicode code point (>= 0xd800 && <= 0xdfff) at offset 7
1591    
1592    /\h+/8
1593        \x{1681}\x{200b}\x{1680}\x{2000}\x{202f}\x{3000}
1594     0: \x{1680}\x{2000}\x{202f}\x{3000}
1595        \x{3001}\x{2fff}\x{200a}\x{a0}\x{2000}
1596     0: \x{200a}\x{a0}\x{2000}
1597    
1598    /[\h\x{e000}]+/8BZ
1599    ------------------------------------------------------------------
1600            Bra
1601            [\x09 \xa0\x{1680}\x{180e}\x{2000}-\x{200a}\x{202f}\x{205f}\x{3000}\x{e000}]++
1602            Ket
1603            End
1604    ------------------------------------------------------------------
1605        \x{1681}\x{200b}\x{1680}\x{2000}\x{202f}\x{3000}
1606     0: \x{1680}\x{2000}\x{202f}\x{3000}
1607        \x{3001}\x{2fff}\x{200a}\x{a0}\x{2000}
1608     0: \x{200a}\x{a0}\x{2000}
1609    
1610    /\H+/8
1611        \x{1680}\x{180e}\x{167f}\x{1681}\x{180d}\x{180f}
1612     0: \x{167f}\x{1681}\x{180d}\x{180f}
1613        \x{2000}\x{200a}\x{1fff}\x{200b}
1614     0: \x{1fff}\x{200b}
1615        \x{202f}\x{205f}\x{202e}\x{2030}\x{205e}\x{2060}
1616     0: \x{202e}\x{2030}\x{205e}\x{2060}
1617        \x{a0}\x{3000}\x{9f}\x{a1}\x{2fff}\x{3001}
1618     0: \x{9f}\x{a1}\x{2fff}\x{3001}
1619    
1620    /[\H\x{d7ff}]+/8BZ
1621    ------------------------------------------------------------------
1622            Bra
1623            [\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{10ffff}\x{d7ff}]++
1624            Ket
1625            End
1626    ------------------------------------------------------------------
1627        \x{1680}\x{180e}\x{167f}\x{1681}\x{180d}\x{180f}
1628     0: \x{167f}\x{1681}\x{180d}\x{180f}
1629        \x{2000}\x{200a}\x{1fff}\x{200b}
1630     0: \x{1fff}\x{200b}
1631        \x{202f}\x{205f}\x{202e}\x{2030}\x{205e}\x{2060}
1632     0: \x{202e}\x{2030}\x{205e}\x{2060}
1633        \x{a0}\x{3000}\x{9f}\x{a1}\x{2fff}\x{3001}
1634     0: \x{9f}\x{a1}\x{2fff}\x{3001}
1635    
1636    /\v+/8
1637        \x{2027}\x{2030}\x{2028}\x{2029}
1638     0: \x{2028}\x{2029}
1639        \x09\x0e\x{84}\x{86}\x{85}\x0a\x0b\x0c\x0d
1640     0: \x{85}\x{0a}\x{0b}\x{0c}\x{0d}
1641    
1642    /[\v\x{e000}]+/8BZ
1643    ------------------------------------------------------------------
1644            Bra
1645            [\x0a-\x0d\x85\x{2028}-\x{2029}\x{e000}]++
1646            Ket
1647            End
1648    ------------------------------------------------------------------
1649        \x{2027}\x{2030}\x{2028}\x{2029}
1650     0: \x{2028}\x{2029}
1651        \x09\x0e\x{84}\x{86}\x{85}\x0a\x0b\x0c\x0d
1652     0: \x{85}\x{0a}\x{0b}\x{0c}\x{0d}
1653    
1654    /\V+/8
1655        \x{2028}\x{2029}\x{2027}\x{2030}
1656     0: \x{2027}\x{2030}
1657        \x{85}\x0a\x0b\x0c\x0d\x09\x0e\x{84}\x{86}
1658     0: \x{09}\x{0e}\x{84}\x{86}
1659    
1660    /[\V\x{d7ff}]+/8BZ
1661    ------------------------------------------------------------------
1662            Bra
1663            [\x00-\x09\x0e-\x84\x86-\xff\x{100}-\x{2027}\x{202a}-\x{10ffff}\x{d7ff}]++
1664            Ket
1665            End
1666    ------------------------------------------------------------------
1667        \x{2028}\x{2029}\x{2027}\x{2030}
1668     0: \x{2027}\x{2030}
1669        \x{85}\x0a\x0b\x0c\x0d\x09\x0e\x{84}\x{86}
1670     0: \x{09}\x{0e}\x{84}\x{86}
1671    
1672    /\R+/8<bsr_unicode>
1673        \x{2027}\x{2030}\x{2028}\x{2029}
1674     0: \x{2028}\x{2029}
1675        \x09\x0e\x{84}\x{86}\x{85}\x0a\x0b\x0c\x0d
1676     0: \x{85}\x{0a}\x{0b}\x{0c}\x{0d}
1677    
1678    /(..)\1/8
1679        ab\P
1680    Partial match: ab
1681        aba\P
1682    Partial match: aba
1683        abab\P
1684     0: abab
1685     1: ab
1686    
1687    /(..)\1/8i
1688        ab\P
1689    Partial match: ab
1690        abA\P
1691    Partial match: abA
1692        aBAb\P
1693     0: aBAb
1694     1: aB
1695    
1696    /(..)\1{2,}/8
1697        ab\P
1698    Partial match: ab
1699        aba\P
1700    Partial match: aba
1701        abab\P
1702    Partial match: abab
1703        ababa\P
1704    Partial match: ababa
1705        ababab\P
1706     0: ababab
1707     1: ab
1708        ababab\P\P
1709    Partial match: ababab
1710        abababa\P
1711     0: ababab
1712     1: ab
1713        abababa\P\P
1714    Partial match: abababa
1715    
1716    /(..)\1{2,}/8i
1717        ab\P
1718    Partial match: ab
1719        aBa\P
1720    Partial match: aBa
1721        aBAb\P
1722    Partial match: aBAb
1723        AbaBA\P
1724    Partial match: AbaBA
1725        abABAb\P
1726     0: abABAb
1727     1: ab
1728        aBAbaB\P\P
1729    Partial match: aBAbaB
1730        abABabA\P
1731     0: abABab
1732     1: ab
1733        abaBABa\P\P
1734    Partial match: abaBABa
1735    
1736    /(..)\1{2,}?x/8i
1737        ab\P
1738    Partial match: ab
1739        abA\P
1740    Partial match: abA
1741        aBAb\P
1742    Partial match: aBAb
1743        abaBA\P
1744    Partial match: abaBA
1745        abAbaB\P
1746    Partial match: abAbaB
1747        abaBabA\P
1748    Partial match: abaBabA
1749        abAbABaBx\P
1750     0: abAbABaBx
1751     1: ab
1752    
1753    /./8<CRLF>
1754        \r\P
1755     0: \x{0d}
1756        \r\P\P
1757    Partial match: \x{0d}
1758    
1759    /.{2,3}/8<CRLF>
1760        \r\P
1761    Partial match: \x{0d}
1762        \r\P\P
1763    Partial match: \x{0d}
1764        \r\r\P
1765     0: \x{0d}\x{0d}
1766        \r\r\P\P
1767    Partial match: \x{0d}\x{0d}
1768        \r\r\r\P
1769     0: \x{0d}\x{0d}\x{0d}
1770        \r\r\r\P\P
1771    Partial match: \x{0d}\x{0d}\x{0d}
1772    
1773    /.{2,3}?/8<CRLF>
1774        \r\P
1775    Partial match: \x{0d}
1776        \r\P\P
1777    Partial match: \x{0d}
1778        \r\r\P
1779     0: \x{0d}\x{0d}
1780        \r\r\P\P
1781    Partial match: \x{0d}\x{0d}
1782        \r\r\r\P
1783     0: \x{0d}\x{0d}
1784        \r\r\r\P\P
1785     0: \x{0d}\x{0d}
1786    
1787    /[^\x{100}][^\x{1234}][^\x{ffff}][^\x{10000}][^\x{10ffff}]/8BZ
1788    ------------------------------------------------------------------
1789            Bra
1790            [^\x{100}]
1791            [^\x{1234}]
1792            [^\x{ffff}]
1793            [^\x{10000}]
1794            [^\x{10ffff}]
1795            Ket
1796            End
1797    ------------------------------------------------------------------
1798    
1799    /[^\x{100}][^\x{1234}][^\x{ffff}][^\x{10000}][^\x{10ffff}]/8BZi
1800    ------------------------------------------------------------------
1801            Bra
1802         /i [^\x{100}]
1803         /i [^\x{1234}]
1804         /i [^\x{ffff}]
1805         /i [^\x{10000}]
1806         /i [^\x{10ffff}]
1807            Ket
1808            End
1809    ------------------------------------------------------------------
1810    
1811    /[^\x{100}]*[^\x{10000}]+[^\x{10ffff}]??[^\x{8000}]{4,}[^\x{7fff}]{2,9}?[^\x{fffff}]{5,6}+/8BZ
1812    ------------------------------------------------------------------
1813            Bra
1814            [^\x{100}]*
1815            [^\x{10000}]+
1816            [^\x{10ffff}]??
1817            [^\x{8000}]{4}
1818            [^\x{8000}]*
1819            [^\x{7fff}]{2}
1820            [^\x{7fff}]{0,7}?
1821            [^\x{fffff}]{5}
1822            [^\x{fffff}]?+
1823            Ket
1824            End
1825    ------------------------------------------------------------------
1826    
1827    /[^\x{100}]*[^\x{10000}]+[^\x{10ffff}]??[^\x{8000}]{4,}[^\x{7fff}]{2,9}?[^\x{fffff}]{5,6}+/8BZi
1828    ------------------------------------------------------------------
1829            Bra
1830         /i [^\x{100}]*
1831         /i [^\x{10000}]+
1832         /i [^\x{10ffff}]??
1833         /i [^\x{8000}]{4}
1834         /i [^\x{8000}]*
1835         /i [^\x{7fff}]{2}
1836         /i [^\x{7fff}]{0,7}?
1837         /i [^\x{fffff}]{5}
1838         /i [^\x{fffff}]?+
1839            Ket
1840            End
1841    ------------------------------------------------------------------
1842    
1843    /(?<=\x{1234}\x{1234})\bxy/I8
1844    Capturing subpattern count = 0
1845    Max lookbehind = 2
1846    Options: utf
1847    First char = 'x'
1848    Need char = 'y'
1849    
1850    /(?<!^)ETA/8
1851        ETA
1852    No match
1853    
1854    /\u0100/<JS>8BZ
1855    ------------------------------------------------------------------
1856            Bra
1857            \x{100}
1858            Ket
1859            End
1860    ------------------------------------------------------------------
1861    
1862    /[\u0100-\u0200]/<JS>8BZ
1863    ------------------------------------------------------------------
1864            Bra
1865            [\x{100}-\x{200}]
1866            Ket
1867            End
1868    ------------------------------------------------------------------
1869    
1870    /\ud800/<JS>8
1871    Failed: disallowed Unicode code point (>= 0xd800 && <= 0xdfff) at offset 5
1872    
1873    /^a+[a\x{200}]/8BZ
1874    ------------------------------------------------------------------
1875            Bra
1876            ^
1877            a+
1878            [a\x{200}]
1879            Ket
1880            End
1881    ------------------------------------------------------------------
1882        aa
1883     0: aa
1884    
1885    /[b-d\x{200}-\x{250}]*[ae-h]?#[\x{200}-\x{250}]{0,8}[\x00-\xff]*#[\x{200}-\x{250}]+[a-z]/8BZ
1886    ------------------------------------------------------------------
1887            Bra
1888            [b-d\x{200}-\x{250}]*+
1889            [ae-h]?+
1890            #
1891            [\x{200}-\x{250}]{0,8}+
1892            [\x00-\xff]*
1893            #
1894            [\x{200}-\x{250}]++
1895            [a-z]
1896            Ket
1897            End
1898    ------------------------------------------------------------------
1899    
1900    /-- End of testinput5 --/

Legend:
Removed from v.83  
changed lines
  Added in v.1433

  ViewVC Help
Powered by ViewVC 1.1.5