xref: /aosp_15_r20/external/pcre/testdata/testoutput12-32 (revision 22dc650d8ae982c6770746019a6f94af92b0f024)
1*22dc650dSSadaf Ebrahimi# This set of tests is for UTF-16 and UTF-32 support, including Unicode
2*22dc650dSSadaf Ebrahimi# properties. It is relevant only to the 16-bit and 32-bit libraries. The
3*22dc650dSSadaf Ebrahimi# output is different for each library, so there are separate output files.
4*22dc650dSSadaf Ebrahimi
5*22dc650dSSadaf Ebrahimi/���xxx/IB,utf,no_utf_check
6*22dc650dSSadaf Ebrahimi** Failed: invalid UTF-8 string cannot be converted to 32-bit string
7*22dc650dSSadaf Ebrahimi
8*22dc650dSSadaf Ebrahimi/abc/utf
9*22dc650dSSadaf Ebrahimi    �]
10*22dc650dSSadaf Ebrahimi** Failed: invalid UTF-8 string cannot be used as input in UTF mode
11*22dc650dSSadaf Ebrahimi
12*22dc650dSSadaf Ebrahimi# Check maximum character size
13*22dc650dSSadaf Ebrahimi
14*22dc650dSSadaf Ebrahimi/\x{ffff}/IB,utf
15*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
16*22dc650dSSadaf Ebrahimi        Bra
17*22dc650dSSadaf Ebrahimi        \x{ffff}
18*22dc650dSSadaf Ebrahimi        Ket
19*22dc650dSSadaf Ebrahimi        End
20*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
21*22dc650dSSadaf EbrahimiCapture group count = 0
22*22dc650dSSadaf EbrahimiOptions: utf
23*22dc650dSSadaf EbrahimiFirst code unit = \x{ffff}
24*22dc650dSSadaf EbrahimiSubject length lower bound = 1
25*22dc650dSSadaf Ebrahimi
26*22dc650dSSadaf Ebrahimi/\x{10000}/IB,utf
27*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
28*22dc650dSSadaf Ebrahimi        Bra
29*22dc650dSSadaf Ebrahimi        \x{10000}
30*22dc650dSSadaf Ebrahimi        Ket
31*22dc650dSSadaf Ebrahimi        End
32*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
33*22dc650dSSadaf EbrahimiCapture group count = 0
34*22dc650dSSadaf EbrahimiOptions: utf
35*22dc650dSSadaf EbrahimiFirst code unit = \x{10000}
36*22dc650dSSadaf EbrahimiSubject length lower bound = 1
37*22dc650dSSadaf Ebrahimi
38*22dc650dSSadaf Ebrahimi/\x{100}/IB,utf
39*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
40*22dc650dSSadaf Ebrahimi        Bra
41*22dc650dSSadaf Ebrahimi        \x{100}
42*22dc650dSSadaf Ebrahimi        Ket
43*22dc650dSSadaf Ebrahimi        End
44*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
45*22dc650dSSadaf EbrahimiCapture group count = 0
46*22dc650dSSadaf EbrahimiOptions: utf
47*22dc650dSSadaf EbrahimiFirst code unit = \x{100}
48*22dc650dSSadaf EbrahimiSubject length lower bound = 1
49*22dc650dSSadaf Ebrahimi
50*22dc650dSSadaf Ebrahimi/\x{1000}/IB,utf
51*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
52*22dc650dSSadaf Ebrahimi        Bra
53*22dc650dSSadaf Ebrahimi        \x{1000}
54*22dc650dSSadaf Ebrahimi        Ket
55*22dc650dSSadaf Ebrahimi        End
56*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
57*22dc650dSSadaf EbrahimiCapture group count = 0
58*22dc650dSSadaf EbrahimiOptions: utf
59*22dc650dSSadaf EbrahimiFirst code unit = \x{1000}
60*22dc650dSSadaf EbrahimiSubject length lower bound = 1
61*22dc650dSSadaf Ebrahimi
62*22dc650dSSadaf Ebrahimi/\x{10000}/IB,utf
63*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
64*22dc650dSSadaf Ebrahimi        Bra
65*22dc650dSSadaf Ebrahimi        \x{10000}
66*22dc650dSSadaf Ebrahimi        Ket
67*22dc650dSSadaf Ebrahimi        End
68*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
69*22dc650dSSadaf EbrahimiCapture group count = 0
70*22dc650dSSadaf EbrahimiOptions: utf
71*22dc650dSSadaf EbrahimiFirst code unit = \x{10000}
72*22dc650dSSadaf EbrahimiSubject length lower bound = 1
73*22dc650dSSadaf Ebrahimi
74*22dc650dSSadaf Ebrahimi/\x{100000}/IB,utf
75*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
76*22dc650dSSadaf Ebrahimi        Bra
77*22dc650dSSadaf Ebrahimi        \x{100000}
78*22dc650dSSadaf Ebrahimi        Ket
79*22dc650dSSadaf Ebrahimi        End
80*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
81*22dc650dSSadaf EbrahimiCapture group count = 0
82*22dc650dSSadaf EbrahimiOptions: utf
83*22dc650dSSadaf EbrahimiFirst code unit = \x{100000}
84*22dc650dSSadaf EbrahimiSubject length lower bound = 1
85*22dc650dSSadaf Ebrahimi
86*22dc650dSSadaf Ebrahimi/\x{10ffff}/IB,utf
87*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
88*22dc650dSSadaf Ebrahimi        Bra
89*22dc650dSSadaf Ebrahimi        \x{10ffff}
90*22dc650dSSadaf Ebrahimi        Ket
91*22dc650dSSadaf Ebrahimi        End
92*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
93*22dc650dSSadaf EbrahimiCapture group count = 0
94*22dc650dSSadaf EbrahimiOptions: utf
95*22dc650dSSadaf EbrahimiFirst code unit = \x{10ffff}
96*22dc650dSSadaf EbrahimiSubject length lower bound = 1
97*22dc650dSSadaf Ebrahimi
98*22dc650dSSadaf Ebrahimi/[\x{ff}]/IB,utf
99*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
100*22dc650dSSadaf Ebrahimi        Bra
101*22dc650dSSadaf Ebrahimi        \x{ff}
102*22dc650dSSadaf Ebrahimi        Ket
103*22dc650dSSadaf Ebrahimi        End
104*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
105*22dc650dSSadaf EbrahimiCapture group count = 0
106*22dc650dSSadaf EbrahimiOptions: utf
107*22dc650dSSadaf EbrahimiFirst code unit = \xff
108*22dc650dSSadaf EbrahimiSubject length lower bound = 1
109*22dc650dSSadaf Ebrahimi
110*22dc650dSSadaf Ebrahimi/[\x{100}]/IB,utf
111*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
112*22dc650dSSadaf Ebrahimi        Bra
113*22dc650dSSadaf Ebrahimi        \x{100}
114*22dc650dSSadaf Ebrahimi        Ket
115*22dc650dSSadaf Ebrahimi        End
116*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
117*22dc650dSSadaf EbrahimiCapture group count = 0
118*22dc650dSSadaf EbrahimiOptions: utf
119*22dc650dSSadaf EbrahimiFirst code unit = \x{100}
120*22dc650dSSadaf EbrahimiSubject length lower bound = 1
121*22dc650dSSadaf Ebrahimi
122*22dc650dSSadaf Ebrahimi/\x80/IB,utf
123*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
124*22dc650dSSadaf Ebrahimi        Bra
125*22dc650dSSadaf Ebrahimi        \x{80}
126*22dc650dSSadaf Ebrahimi        Ket
127*22dc650dSSadaf Ebrahimi        End
128*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
129*22dc650dSSadaf EbrahimiCapture group count = 0
130*22dc650dSSadaf EbrahimiOptions: utf
131*22dc650dSSadaf EbrahimiFirst code unit = \x80
132*22dc650dSSadaf EbrahimiSubject length lower bound = 1
133*22dc650dSSadaf Ebrahimi
134*22dc650dSSadaf Ebrahimi/\xff/IB,utf
135*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
136*22dc650dSSadaf Ebrahimi        Bra
137*22dc650dSSadaf Ebrahimi        \x{ff}
138*22dc650dSSadaf Ebrahimi        Ket
139*22dc650dSSadaf Ebrahimi        End
140*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
141*22dc650dSSadaf EbrahimiCapture group count = 0
142*22dc650dSSadaf EbrahimiOptions: utf
143*22dc650dSSadaf EbrahimiFirst code unit = \xff
144*22dc650dSSadaf EbrahimiSubject length lower bound = 1
145*22dc650dSSadaf Ebrahimi
146*22dc650dSSadaf Ebrahimi/\x{D55c}\x{ad6d}\x{C5B4}/IB,utf
147*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
148*22dc650dSSadaf Ebrahimi        Bra
149*22dc650dSSadaf Ebrahimi        \x{d55c}\x{ad6d}\x{c5b4}
150*22dc650dSSadaf Ebrahimi        Ket
151*22dc650dSSadaf Ebrahimi        End
152*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
153*22dc650dSSadaf EbrahimiCapture group count = 0
154*22dc650dSSadaf EbrahimiOptions: utf
155*22dc650dSSadaf EbrahimiFirst code unit = \x{d55c}
156*22dc650dSSadaf EbrahimiLast code unit = \x{c5b4}
157*22dc650dSSadaf EbrahimiSubject length lower bound = 3
158*22dc650dSSadaf Ebrahimi    \x{D55c}\x{ad6d}\x{C5B4}
159*22dc650dSSadaf Ebrahimi 0: \x{d55c}\x{ad6d}\x{c5b4}
160*22dc650dSSadaf Ebrahimi
161*22dc650dSSadaf Ebrahimi/\x{65e5}\x{672c}\x{8a9e}/IB,utf
162*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
163*22dc650dSSadaf Ebrahimi        Bra
164*22dc650dSSadaf Ebrahimi        \x{65e5}\x{672c}\x{8a9e}
165*22dc650dSSadaf Ebrahimi        Ket
166*22dc650dSSadaf Ebrahimi        End
167*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
168*22dc650dSSadaf EbrahimiCapture group count = 0
169*22dc650dSSadaf EbrahimiOptions: utf
170*22dc650dSSadaf EbrahimiFirst code unit = \x{65e5}
171*22dc650dSSadaf EbrahimiLast code unit = \x{8a9e}
172*22dc650dSSadaf EbrahimiSubject length lower bound = 3
173*22dc650dSSadaf Ebrahimi    \x{65e5}\x{672c}\x{8a9e}
174*22dc650dSSadaf Ebrahimi 0: \x{65e5}\x{672c}\x{8a9e}
175*22dc650dSSadaf Ebrahimi
176*22dc650dSSadaf Ebrahimi/\x{80}/IB,utf
177*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
178*22dc650dSSadaf Ebrahimi        Bra
179*22dc650dSSadaf Ebrahimi        \x{80}
180*22dc650dSSadaf Ebrahimi        Ket
181*22dc650dSSadaf Ebrahimi        End
182*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
183*22dc650dSSadaf EbrahimiCapture group count = 0
184*22dc650dSSadaf EbrahimiOptions: utf
185*22dc650dSSadaf EbrahimiFirst code unit = \x80
186*22dc650dSSadaf EbrahimiSubject length lower bound = 1
187*22dc650dSSadaf Ebrahimi
188*22dc650dSSadaf Ebrahimi/\x{084}/IB,utf
189*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
190*22dc650dSSadaf Ebrahimi        Bra
191*22dc650dSSadaf Ebrahimi        \x{84}
192*22dc650dSSadaf Ebrahimi        Ket
193*22dc650dSSadaf Ebrahimi        End
194*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
195*22dc650dSSadaf EbrahimiCapture group count = 0
196*22dc650dSSadaf EbrahimiOptions: utf
197*22dc650dSSadaf EbrahimiFirst code unit = \x84
198*22dc650dSSadaf EbrahimiSubject length lower bound = 1
199*22dc650dSSadaf Ebrahimi
200*22dc650dSSadaf Ebrahimi/\x{104}/IB,utf
201*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
202*22dc650dSSadaf Ebrahimi        Bra
203*22dc650dSSadaf Ebrahimi        \x{104}
204*22dc650dSSadaf Ebrahimi        Ket
205*22dc650dSSadaf Ebrahimi        End
206*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
207*22dc650dSSadaf EbrahimiCapture group count = 0
208*22dc650dSSadaf EbrahimiOptions: utf
209*22dc650dSSadaf EbrahimiFirst code unit = \x{104}
210*22dc650dSSadaf EbrahimiSubject length lower bound = 1
211*22dc650dSSadaf Ebrahimi
212*22dc650dSSadaf Ebrahimi/\x{861}/IB,utf
213*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
214*22dc650dSSadaf Ebrahimi        Bra
215*22dc650dSSadaf Ebrahimi        \x{861}
216*22dc650dSSadaf Ebrahimi        Ket
217*22dc650dSSadaf Ebrahimi        End
218*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
219*22dc650dSSadaf EbrahimiCapture group count = 0
220*22dc650dSSadaf EbrahimiOptions: utf
221*22dc650dSSadaf EbrahimiFirst code unit = \x{861}
222*22dc650dSSadaf EbrahimiSubject length lower bound = 1
223*22dc650dSSadaf Ebrahimi
224*22dc650dSSadaf Ebrahimi/\x{212ab}/IB,utf
225*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
226*22dc650dSSadaf Ebrahimi        Bra
227*22dc650dSSadaf Ebrahimi        \x{212ab}
228*22dc650dSSadaf Ebrahimi        Ket
229*22dc650dSSadaf Ebrahimi        End
230*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
231*22dc650dSSadaf EbrahimiCapture group count = 0
232*22dc650dSSadaf EbrahimiOptions: utf
233*22dc650dSSadaf EbrahimiFirst code unit = \x{212ab}
234*22dc650dSSadaf EbrahimiSubject length lower bound = 1
235*22dc650dSSadaf Ebrahimi
236*22dc650dSSadaf Ebrahimi/[^ab\xC0-\xF0]/IB,utf
237*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
238*22dc650dSSadaf Ebrahimi        Bra
239*22dc650dSSadaf Ebrahimi        [\x00-`c-\xbf\xf1-\xff] (neg)
240*22dc650dSSadaf Ebrahimi        Ket
241*22dc650dSSadaf Ebrahimi        End
242*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
243*22dc650dSSadaf EbrahimiCapture group count = 0
244*22dc650dSSadaf EbrahimiOptions: utf
245*22dc650dSSadaf EbrahimiStarting code units: \x00 \x01 \x02 \x03 \x04 \x05 \x06 \x07 \x08 \x09 \x0a
246*22dc650dSSadaf Ebrahimi  \x0b \x0c \x0d \x0e \x0f \x10 \x11 \x12 \x13 \x14 \x15 \x16 \x17 \x18 \x19
247*22dc650dSSadaf Ebrahimi  \x1a \x1b \x1c \x1d \x1e \x1f \x20 ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4
248*22dc650dSSadaf Ebrahimi  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
249*22dc650dSSadaf Ebrahimi  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
250*22dc650dSSadaf Ebrahimi  \x80 \x81 \x82 \x83 \x84 \x85 \x86 \x87 \x88 \x89 \x8a \x8b \x8c \x8d \x8e
251*22dc650dSSadaf Ebrahimi  \x8f \x90 \x91 \x92 \x93 \x94 \x95 \x96 \x97 \x98 \x99 \x9a \x9b \x9c \x9d
252*22dc650dSSadaf Ebrahimi  \x9e \x9f \xa0 \xa1 \xa2 \xa3 \xa4 \xa5 \xa6 \xa7 \xa8 \xa9 \xaa \xab \xac
253*22dc650dSSadaf Ebrahimi  \xad \xae \xaf \xb0 \xb1 \xb2 \xb3 \xb4 \xb5 \xb6 \xb7 \xb8 \xb9 \xba \xbb
254*22dc650dSSadaf Ebrahimi  \xbc \xbd \xbe \xbf \xf1 \xf2 \xf3 \xf4 \xf5 \xf6 \xf7 \xf8 \xf9 \xfa \xfb
255*22dc650dSSadaf Ebrahimi  \xfc \xfd \xfe \xff
256*22dc650dSSadaf EbrahimiSubject length lower bound = 1
257*22dc650dSSadaf Ebrahimi    \x{f1}
258*22dc650dSSadaf Ebrahimi 0: \x{f1}
259*22dc650dSSadaf Ebrahimi    \x{bf}
260*22dc650dSSadaf Ebrahimi 0: \x{bf}
261*22dc650dSSadaf Ebrahimi    \x{100}
262*22dc650dSSadaf Ebrahimi 0: \x{100}
263*22dc650dSSadaf Ebrahimi    \x{1000}
264*22dc650dSSadaf Ebrahimi 0: \x{1000}
265*22dc650dSSadaf Ebrahimi\= Expect no match
266*22dc650dSSadaf Ebrahimi    \x{c0}
267*22dc650dSSadaf EbrahimiNo match
268*22dc650dSSadaf Ebrahimi    \x{f0}
269*22dc650dSSadaf EbrahimiNo match
270*22dc650dSSadaf Ebrahimi
271*22dc650dSSadaf Ebrahimi/Ā{3,4}/IB,utf
272*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
273*22dc650dSSadaf Ebrahimi        Bra
274*22dc650dSSadaf Ebrahimi        \x{100}{3}
275*22dc650dSSadaf Ebrahimi        \x{100}?+
276*22dc650dSSadaf Ebrahimi        Ket
277*22dc650dSSadaf Ebrahimi        End
278*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
279*22dc650dSSadaf EbrahimiCapture group count = 0
280*22dc650dSSadaf EbrahimiOptions: utf
281*22dc650dSSadaf EbrahimiFirst code unit = \x{100}
282*22dc650dSSadaf EbrahimiLast code unit = \x{100}
283*22dc650dSSadaf EbrahimiSubject length lower bound = 3
284*22dc650dSSadaf Ebrahimi  \x{100}\x{100}\x{100}\x{100\x{100}
285*22dc650dSSadaf Ebrahimi 0: \x{100}\x{100}\x{100}
286*22dc650dSSadaf Ebrahimi
287*22dc650dSSadaf Ebrahimi/(\x{100}+|x)/IB,utf
288*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
289*22dc650dSSadaf Ebrahimi        Bra
290*22dc650dSSadaf Ebrahimi        CBra 1
291*22dc650dSSadaf Ebrahimi        \x{100}++
292*22dc650dSSadaf Ebrahimi        Alt
293*22dc650dSSadaf Ebrahimi        x
294*22dc650dSSadaf Ebrahimi        Ket
295*22dc650dSSadaf Ebrahimi        Ket
296*22dc650dSSadaf Ebrahimi        End
297*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
298*22dc650dSSadaf EbrahimiCapture group count = 1
299*22dc650dSSadaf EbrahimiOptions: utf
300*22dc650dSSadaf EbrahimiStarting code units: x \xff
301*22dc650dSSadaf EbrahimiSubject length lower bound = 1
302*22dc650dSSadaf Ebrahimi
303*22dc650dSSadaf Ebrahimi/(\x{100}*a|x)/IB,utf
304*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
305*22dc650dSSadaf Ebrahimi        Bra
306*22dc650dSSadaf Ebrahimi        CBra 1
307*22dc650dSSadaf Ebrahimi        \x{100}*+
308*22dc650dSSadaf Ebrahimi        a
309*22dc650dSSadaf Ebrahimi        Alt
310*22dc650dSSadaf Ebrahimi        x
311*22dc650dSSadaf Ebrahimi        Ket
312*22dc650dSSadaf Ebrahimi        Ket
313*22dc650dSSadaf Ebrahimi        End
314*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
315*22dc650dSSadaf EbrahimiCapture group count = 1
316*22dc650dSSadaf EbrahimiOptions: utf
317*22dc650dSSadaf EbrahimiStarting code units: a x \xff
318*22dc650dSSadaf EbrahimiSubject length lower bound = 1
319*22dc650dSSadaf Ebrahimi
320*22dc650dSSadaf Ebrahimi/(\x{100}{0,2}a|x)/IB,utf
321*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
322*22dc650dSSadaf Ebrahimi        Bra
323*22dc650dSSadaf Ebrahimi        CBra 1
324*22dc650dSSadaf Ebrahimi        \x{100}{0,2}+
325*22dc650dSSadaf Ebrahimi        a
326*22dc650dSSadaf Ebrahimi        Alt
327*22dc650dSSadaf Ebrahimi        x
328*22dc650dSSadaf Ebrahimi        Ket
329*22dc650dSSadaf Ebrahimi        Ket
330*22dc650dSSadaf Ebrahimi        End
331*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
332*22dc650dSSadaf EbrahimiCapture group count = 1
333*22dc650dSSadaf EbrahimiOptions: utf
334*22dc650dSSadaf EbrahimiStarting code units: a x \xff
335*22dc650dSSadaf EbrahimiSubject length lower bound = 1
336*22dc650dSSadaf Ebrahimi
337*22dc650dSSadaf Ebrahimi/(\x{100}{1,2}a|x)/IB,utf
338*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
339*22dc650dSSadaf Ebrahimi        Bra
340*22dc650dSSadaf Ebrahimi        CBra 1
341*22dc650dSSadaf Ebrahimi        \x{100}
342*22dc650dSSadaf Ebrahimi        \x{100}{0,1}+
343*22dc650dSSadaf Ebrahimi        a
344*22dc650dSSadaf Ebrahimi        Alt
345*22dc650dSSadaf Ebrahimi        x
346*22dc650dSSadaf Ebrahimi        Ket
347*22dc650dSSadaf Ebrahimi        Ket
348*22dc650dSSadaf Ebrahimi        End
349*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
350*22dc650dSSadaf EbrahimiCapture group count = 1
351*22dc650dSSadaf EbrahimiOptions: utf
352*22dc650dSSadaf EbrahimiStarting code units: x \xff
353*22dc650dSSadaf EbrahimiSubject length lower bound = 1
354*22dc650dSSadaf Ebrahimi
355*22dc650dSSadaf Ebrahimi/\x{100}/IB,utf
356*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
357*22dc650dSSadaf Ebrahimi        Bra
358*22dc650dSSadaf Ebrahimi        \x{100}
359*22dc650dSSadaf Ebrahimi        Ket
360*22dc650dSSadaf Ebrahimi        End
361*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
362*22dc650dSSadaf EbrahimiCapture group count = 0
363*22dc650dSSadaf EbrahimiOptions: utf
364*22dc650dSSadaf EbrahimiFirst code unit = \x{100}
365*22dc650dSSadaf EbrahimiSubject length lower bound = 1
366*22dc650dSSadaf Ebrahimi
367*22dc650dSSadaf Ebrahimi/a\x{100}\x{101}*/IB,utf
368*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
369*22dc650dSSadaf Ebrahimi        Bra
370*22dc650dSSadaf Ebrahimi        a\x{100}
371*22dc650dSSadaf Ebrahimi        \x{101}*+
372*22dc650dSSadaf Ebrahimi        Ket
373*22dc650dSSadaf Ebrahimi        End
374*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
375*22dc650dSSadaf EbrahimiCapture group count = 0
376*22dc650dSSadaf EbrahimiOptions: utf
377*22dc650dSSadaf EbrahimiFirst code unit = 'a'
378*22dc650dSSadaf EbrahimiLast code unit = \x{100}
379*22dc650dSSadaf EbrahimiSubject length lower bound = 2
380*22dc650dSSadaf Ebrahimi
381*22dc650dSSadaf Ebrahimi/a\x{100}\x{101}+/IB,utf
382*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
383*22dc650dSSadaf Ebrahimi        Bra
384*22dc650dSSadaf Ebrahimi        a\x{100}
385*22dc650dSSadaf Ebrahimi        \x{101}++
386*22dc650dSSadaf Ebrahimi        Ket
387*22dc650dSSadaf Ebrahimi        End
388*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
389*22dc650dSSadaf EbrahimiCapture group count = 0
390*22dc650dSSadaf EbrahimiOptions: utf
391*22dc650dSSadaf EbrahimiFirst code unit = 'a'
392*22dc650dSSadaf EbrahimiLast code unit = \x{101}
393*22dc650dSSadaf EbrahimiSubject length lower bound = 3
394*22dc650dSSadaf Ebrahimi
395*22dc650dSSadaf Ebrahimi/[^\x{c4}]/IB
396*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
397*22dc650dSSadaf Ebrahimi        Bra
398*22dc650dSSadaf Ebrahimi        [^\x{c4}]
399*22dc650dSSadaf Ebrahimi        Ket
400*22dc650dSSadaf Ebrahimi        End
401*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
402*22dc650dSSadaf EbrahimiCapture group count = 0
403*22dc650dSSadaf EbrahimiSubject length lower bound = 1
404*22dc650dSSadaf Ebrahimi
405*22dc650dSSadaf Ebrahimi/[\x{100}]/IB,utf
406*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
407*22dc650dSSadaf Ebrahimi        Bra
408*22dc650dSSadaf Ebrahimi        \x{100}
409*22dc650dSSadaf Ebrahimi        Ket
410*22dc650dSSadaf Ebrahimi        End
411*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
412*22dc650dSSadaf EbrahimiCapture group count = 0
413*22dc650dSSadaf EbrahimiOptions: utf
414*22dc650dSSadaf EbrahimiFirst code unit = \x{100}
415*22dc650dSSadaf EbrahimiSubject length lower bound = 1
416*22dc650dSSadaf Ebrahimi    \x{100}
417*22dc650dSSadaf Ebrahimi 0: \x{100}
418*22dc650dSSadaf Ebrahimi    Z\x{100}
419*22dc650dSSadaf Ebrahimi 0: \x{100}
420*22dc650dSSadaf Ebrahimi    \x{100}Z
421*22dc650dSSadaf Ebrahimi 0: \x{100}
422*22dc650dSSadaf Ebrahimi
423*22dc650dSSadaf Ebrahimi/[\xff]/IB,utf
424*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
425*22dc650dSSadaf Ebrahimi        Bra
426*22dc650dSSadaf Ebrahimi        \x{ff}
427*22dc650dSSadaf Ebrahimi        Ket
428*22dc650dSSadaf Ebrahimi        End
429*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
430*22dc650dSSadaf EbrahimiCapture group count = 0
431*22dc650dSSadaf EbrahimiOptions: utf
432*22dc650dSSadaf EbrahimiFirst code unit = \xff
433*22dc650dSSadaf EbrahimiSubject length lower bound = 1
434*22dc650dSSadaf Ebrahimi    >\x{ff}<
435*22dc650dSSadaf Ebrahimi 0: \x{ff}
436*22dc650dSSadaf Ebrahimi
437*22dc650dSSadaf Ebrahimi/[^\xff]/IB,utf
438*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
439*22dc650dSSadaf Ebrahimi        Bra
440*22dc650dSSadaf Ebrahimi        [^\x{ff}]
441*22dc650dSSadaf Ebrahimi        Ket
442*22dc650dSSadaf Ebrahimi        End
443*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
444*22dc650dSSadaf EbrahimiCapture group count = 0
445*22dc650dSSadaf EbrahimiOptions: utf
446*22dc650dSSadaf EbrahimiSubject length lower bound = 1
447*22dc650dSSadaf Ebrahimi
448*22dc650dSSadaf Ebrahimi/\x{100}abc(xyz(?1))/IB,utf
449*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
450*22dc650dSSadaf Ebrahimi        Bra
451*22dc650dSSadaf Ebrahimi        \x{100}abc
452*22dc650dSSadaf Ebrahimi        CBra 1
453*22dc650dSSadaf Ebrahimi        xyz
454*22dc650dSSadaf Ebrahimi        Recurse
455*22dc650dSSadaf Ebrahimi        Ket
456*22dc650dSSadaf Ebrahimi        Ket
457*22dc650dSSadaf Ebrahimi        End
458*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
459*22dc650dSSadaf EbrahimiCapture group count = 1
460*22dc650dSSadaf EbrahimiOptions: utf
461*22dc650dSSadaf EbrahimiFirst code unit = \x{100}
462*22dc650dSSadaf EbrahimiLast code unit = 'z'
463*22dc650dSSadaf EbrahimiSubject length lower bound = 7
464*22dc650dSSadaf Ebrahimi
465*22dc650dSSadaf Ebrahimi/\777/I,utf
466*22dc650dSSadaf EbrahimiCapture group count = 0
467*22dc650dSSadaf EbrahimiOptions: utf
468*22dc650dSSadaf EbrahimiFirst code unit = \x{1ff}
469*22dc650dSSadaf EbrahimiSubject length lower bound = 1
470*22dc650dSSadaf Ebrahimi  \x{1ff}
471*22dc650dSSadaf Ebrahimi 0: \x{1ff}
472*22dc650dSSadaf Ebrahimi  \777
473*22dc650dSSadaf Ebrahimi 0: \x{1ff}
474*22dc650dSSadaf Ebrahimi
475*22dc650dSSadaf Ebrahimi/\x{100}+\x{200}/IB,utf
476*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
477*22dc650dSSadaf Ebrahimi        Bra
478*22dc650dSSadaf Ebrahimi        \x{100}++
479*22dc650dSSadaf Ebrahimi        \x{200}
480*22dc650dSSadaf Ebrahimi        Ket
481*22dc650dSSadaf Ebrahimi        End
482*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
483*22dc650dSSadaf EbrahimiCapture group count = 0
484*22dc650dSSadaf EbrahimiOptions: utf
485*22dc650dSSadaf EbrahimiFirst code unit = \x{100}
486*22dc650dSSadaf EbrahimiLast code unit = \x{200}
487*22dc650dSSadaf EbrahimiSubject length lower bound = 2
488*22dc650dSSadaf Ebrahimi
489*22dc650dSSadaf Ebrahimi/\x{100}+X/IB,utf
490*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
491*22dc650dSSadaf Ebrahimi        Bra
492*22dc650dSSadaf Ebrahimi        \x{100}++
493*22dc650dSSadaf Ebrahimi        X
494*22dc650dSSadaf Ebrahimi        Ket
495*22dc650dSSadaf Ebrahimi        End
496*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
497*22dc650dSSadaf EbrahimiCapture group count = 0
498*22dc650dSSadaf EbrahimiOptions: utf
499*22dc650dSSadaf EbrahimiFirst code unit = \x{100}
500*22dc650dSSadaf EbrahimiLast code unit = 'X'
501*22dc650dSSadaf EbrahimiSubject length lower bound = 2
502*22dc650dSSadaf Ebrahimi
503*22dc650dSSadaf Ebrahimi/^[\QĀ\E-\QŐ\E/B,utf
504*22dc650dSSadaf EbrahimiFailed: error 106 at offset 13: missing terminating ] for character class
505*22dc650dSSadaf Ebrahimi
506*22dc650dSSadaf Ebrahimi/X/utf
507*22dc650dSSadaf Ebrahimi    XX\x{d800}\=no_utf_check
508*22dc650dSSadaf Ebrahimi 0: X
509*22dc650dSSadaf Ebrahimi    XX\x{da00}\=no_utf_check
510*22dc650dSSadaf Ebrahimi 0: X
511*22dc650dSSadaf Ebrahimi    XX\x{dc00}\=no_utf_check
512*22dc650dSSadaf Ebrahimi 0: X
513*22dc650dSSadaf Ebrahimi    XX\x{de00}\=no_utf_check
514*22dc650dSSadaf Ebrahimi 0: X
515*22dc650dSSadaf Ebrahimi    XX\x{dfff}\=no_utf_check
516*22dc650dSSadaf Ebrahimi 0: X
517*22dc650dSSadaf Ebrahimi\= Expect UTF error
518*22dc650dSSadaf Ebrahimi    XX\x{d800}
519*22dc650dSSadaf EbrahimiFailed: error -27: UTF-32 error: code points 0xd800-0xdfff are not defined at offset 2
520*22dc650dSSadaf Ebrahimi    XX\x{da00}
521*22dc650dSSadaf EbrahimiFailed: error -27: UTF-32 error: code points 0xd800-0xdfff are not defined at offset 2
522*22dc650dSSadaf Ebrahimi    XX\x{dc00}
523*22dc650dSSadaf EbrahimiFailed: error -27: UTF-32 error: code points 0xd800-0xdfff are not defined at offset 2
524*22dc650dSSadaf Ebrahimi    XX\x{de00}
525*22dc650dSSadaf EbrahimiFailed: error -27: UTF-32 error: code points 0xd800-0xdfff are not defined at offset 2
526*22dc650dSSadaf Ebrahimi    XX\x{dfff}
527*22dc650dSSadaf EbrahimiFailed: error -27: UTF-32 error: code points 0xd800-0xdfff are not defined at offset 2
528*22dc650dSSadaf Ebrahimi    XX\x{110000}
529*22dc650dSSadaf EbrahimiFailed: error -28: UTF-32 error: code points greater than 0x10ffff are not defined at offset 2
530*22dc650dSSadaf Ebrahimi    XX\x{d800}\x{1234}
531*22dc650dSSadaf EbrahimiFailed: error -27: UTF-32 error: code points 0xd800-0xdfff are not defined at offset 2
532*22dc650dSSadaf Ebrahimi\= Expect no match
533*22dc650dSSadaf Ebrahimi    XX\x{d800}\=offset=3
534*22dc650dSSadaf EbrahimiNo match
535*22dc650dSSadaf Ebrahimi
536*22dc650dSSadaf Ebrahimi/(?<=.)X/utf
537*22dc650dSSadaf Ebrahimi    XX\x{d800}\=offset=3
538*22dc650dSSadaf EbrahimiFailed: error -27: UTF-32 error: code points 0xd800-0xdfff are not defined at offset 2
539*22dc650dSSadaf Ebrahimi
540*22dc650dSSadaf Ebrahimi/(*UTF16)\x{11234}/
541*22dc650dSSadaf EbrahimiFailed: error 160 at offset 7: (*VERB) not recognized or malformed
542*22dc650dSSadaf Ebrahimi  abcd\x{11234}pqr
543*22dc650dSSadaf Ebrahimi
544*22dc650dSSadaf Ebrahimi/(*UTF)\x{11234}/I
545*22dc650dSSadaf EbrahimiCapture group count = 0
546*22dc650dSSadaf EbrahimiCompile options: <none>
547*22dc650dSSadaf EbrahimiOverall options: utf
548*22dc650dSSadaf EbrahimiFirst code unit = \x{11234}
549*22dc650dSSadaf EbrahimiSubject length lower bound = 1
550*22dc650dSSadaf Ebrahimi  abcd\x{11234}pqr
551*22dc650dSSadaf Ebrahimi 0: \x{11234}
552*22dc650dSSadaf Ebrahimi
553*22dc650dSSadaf Ebrahimi/(*UTF-32)\x{11234}/
554*22dc650dSSadaf EbrahimiFailed: error 160 at offset 5: (*VERB) not recognized or malformed
555*22dc650dSSadaf Ebrahimi  abcd\x{11234}pqr
556*22dc650dSSadaf Ebrahimi
557*22dc650dSSadaf Ebrahimi/(*UTF-32)\x{112}/
558*22dc650dSSadaf EbrahimiFailed: error 160 at offset 5: (*VERB) not recognized or malformed
559*22dc650dSSadaf Ebrahimi  abcd\x{11234}pqr
560*22dc650dSSadaf Ebrahimi
561*22dc650dSSadaf Ebrahimi/(*CRLF)(*UTF16)(*BSR_UNICODE)a\Rb/I
562*22dc650dSSadaf EbrahimiFailed: error 160 at offset 14: (*VERB) not recognized or malformed
563*22dc650dSSadaf Ebrahimi
564*22dc650dSSadaf Ebrahimi/(*CRLF)(*UTF32)(*BSR_UNICODE)a\Rb/I
565*22dc650dSSadaf EbrahimiCapture group count = 0
566*22dc650dSSadaf EbrahimiCompile options: <none>
567*22dc650dSSadaf EbrahimiOverall options: utf
568*22dc650dSSadaf Ebrahimi\R matches any Unicode newline
569*22dc650dSSadaf EbrahimiForced newline is CRLF
570*22dc650dSSadaf EbrahimiFirst code unit = 'a'
571*22dc650dSSadaf EbrahimiLast code unit = 'b'
572*22dc650dSSadaf EbrahimiSubject length lower bound = 3
573*22dc650dSSadaf Ebrahimi
574*22dc650dSSadaf Ebrahimi/\h/I,utf
575*22dc650dSSadaf EbrahimiCapture group count = 0
576*22dc650dSSadaf EbrahimiOptions: utf
577*22dc650dSSadaf EbrahimiStarting code units: \x09 \x20 \xa0 \xff
578*22dc650dSSadaf EbrahimiSubject length lower bound = 1
579*22dc650dSSadaf Ebrahimi    ABC\x{09}
580*22dc650dSSadaf Ebrahimi 0: \x{09}
581*22dc650dSSadaf Ebrahimi    ABC\x{20}
582*22dc650dSSadaf Ebrahimi 0:
583*22dc650dSSadaf Ebrahimi    ABC\x{a0}
584*22dc650dSSadaf Ebrahimi 0: \x{a0}
585*22dc650dSSadaf Ebrahimi    ABC\x{1680}
586*22dc650dSSadaf Ebrahimi 0: \x{1680}
587*22dc650dSSadaf Ebrahimi    ABC\x{180e}
588*22dc650dSSadaf Ebrahimi 0: \x{180e}
589*22dc650dSSadaf Ebrahimi    ABC\x{2000}
590*22dc650dSSadaf Ebrahimi 0: \x{2000}
591*22dc650dSSadaf Ebrahimi    ABC\x{202f}
592*22dc650dSSadaf Ebrahimi 0: \x{202f}
593*22dc650dSSadaf Ebrahimi    ABC\x{205f}
594*22dc650dSSadaf Ebrahimi 0: \x{205f}
595*22dc650dSSadaf Ebrahimi    ABC\x{3000}
596*22dc650dSSadaf Ebrahimi 0: \x{3000}
597*22dc650dSSadaf Ebrahimi
598*22dc650dSSadaf Ebrahimi/\v/I,utf
599*22dc650dSSadaf EbrahimiCapture group count = 0
600*22dc650dSSadaf EbrahimiOptions: utf
601*22dc650dSSadaf EbrahimiStarting code units: \x0a \x0b \x0c \x0d \x85 \xff
602*22dc650dSSadaf EbrahimiSubject length lower bound = 1
603*22dc650dSSadaf Ebrahimi    ABC\x{0a}
604*22dc650dSSadaf Ebrahimi 0: \x{0a}
605*22dc650dSSadaf Ebrahimi    ABC\x{0b}
606*22dc650dSSadaf Ebrahimi 0: \x{0b}
607*22dc650dSSadaf Ebrahimi    ABC\x{0c}
608*22dc650dSSadaf Ebrahimi 0: \x{0c}
609*22dc650dSSadaf Ebrahimi    ABC\x{0d}
610*22dc650dSSadaf Ebrahimi 0: \x{0d}
611*22dc650dSSadaf Ebrahimi    ABC\x{85}
612*22dc650dSSadaf Ebrahimi 0: \x{85}
613*22dc650dSSadaf Ebrahimi    ABC\x{2028}
614*22dc650dSSadaf Ebrahimi 0: \x{2028}
615*22dc650dSSadaf Ebrahimi
616*22dc650dSSadaf Ebrahimi/\h*A/I,utf
617*22dc650dSSadaf EbrahimiCapture group count = 0
618*22dc650dSSadaf EbrahimiOptions: utf
619*22dc650dSSadaf EbrahimiStarting code units: \x09 \x20 A \xa0 \xff
620*22dc650dSSadaf EbrahimiLast code unit = 'A'
621*22dc650dSSadaf EbrahimiSubject length lower bound = 1
622*22dc650dSSadaf Ebrahimi    CDBABC
623*22dc650dSSadaf Ebrahimi 0: A
624*22dc650dSSadaf Ebrahimi    \x{2000}ABC
625*22dc650dSSadaf Ebrahimi 0: \x{2000}A
626*22dc650dSSadaf Ebrahimi
627*22dc650dSSadaf Ebrahimi/\R*A/I,bsr=unicode,utf
628*22dc650dSSadaf EbrahimiCapture group count = 0
629*22dc650dSSadaf EbrahimiOptions: utf
630*22dc650dSSadaf Ebrahimi\R matches any Unicode newline
631*22dc650dSSadaf EbrahimiStarting code units: \x0a \x0b \x0c \x0d A \x85 \xff
632*22dc650dSSadaf EbrahimiLast code unit = 'A'
633*22dc650dSSadaf EbrahimiSubject length lower bound = 1
634*22dc650dSSadaf Ebrahimi    CDBABC
635*22dc650dSSadaf Ebrahimi 0: A
636*22dc650dSSadaf Ebrahimi    \x{2028}A
637*22dc650dSSadaf Ebrahimi 0: \x{2028}A
638*22dc650dSSadaf Ebrahimi
639*22dc650dSSadaf Ebrahimi/\v+A/I,utf
640*22dc650dSSadaf EbrahimiCapture group count = 0
641*22dc650dSSadaf EbrahimiOptions: utf
642*22dc650dSSadaf EbrahimiStarting code units: \x0a \x0b \x0c \x0d \x85 \xff
643*22dc650dSSadaf EbrahimiLast code unit = 'A'
644*22dc650dSSadaf EbrahimiSubject length lower bound = 2
645*22dc650dSSadaf Ebrahimi
646*22dc650dSSadaf Ebrahimi/\s?xxx\s/I,utf
647*22dc650dSSadaf EbrahimiCapture group count = 0
648*22dc650dSSadaf EbrahimiOptions: utf
649*22dc650dSSadaf EbrahimiStarting code units: \x09 \x0a \x0b \x0c \x0d \x20 x
650*22dc650dSSadaf EbrahimiLast code unit = 'x'
651*22dc650dSSadaf EbrahimiSubject length lower bound = 4
652*22dc650dSSadaf Ebrahimi
653*22dc650dSSadaf Ebrahimi/\sxxx\s/I,utf,tables=2
654*22dc650dSSadaf EbrahimiCapture group count = 0
655*22dc650dSSadaf EbrahimiOptions: utf
656*22dc650dSSadaf EbrahimiStarting code units: \x09 \x0a \x0b \x0c \x0d \x20 \x85 \xa0
657*22dc650dSSadaf EbrahimiLast code unit = 'x'
658*22dc650dSSadaf EbrahimiSubject length lower bound = 5
659*22dc650dSSadaf Ebrahimi    AB\x{85}xxx\x{a0}XYZ
660*22dc650dSSadaf Ebrahimi 0: \x{85}xxx\x{a0}
661*22dc650dSSadaf Ebrahimi    AB\x{a0}xxx\x{85}XYZ
662*22dc650dSSadaf Ebrahimi 0: \x{a0}xxx\x{85}
663*22dc650dSSadaf Ebrahimi
664*22dc650dSSadaf Ebrahimi/\S \S/I,utf,tables=2
665*22dc650dSSadaf EbrahimiCapture group count = 0
666*22dc650dSSadaf EbrahimiOptions: utf
667*22dc650dSSadaf EbrahimiStarting code units: \x00 \x01 \x02 \x03 \x04 \x05 \x06 \x07 \x08 \x0e \x0f
668*22dc650dSSadaf Ebrahimi  \x10 \x11 \x12 \x13 \x14 \x15 \x16 \x17 \x18 \x19 \x1a \x1b \x1c \x1d \x1e
669*22dc650dSSadaf Ebrahimi  \x1f ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C
670*22dc650dSSadaf Ebrahimi  D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h
671*22dc650dSSadaf Ebrahimi  i j k l m n o p q r s t u v w x y z { | } ~ \x7f \x80 \x81 \x82 \x83 \x84
672*22dc650dSSadaf Ebrahimi  \x86 \x87 \x88 \x89 \x8a \x8b \x8c \x8d \x8e \x8f \x90 \x91 \x92 \x93 \x94
673*22dc650dSSadaf Ebrahimi  \x95 \x96 \x97 \x98 \x99 \x9a \x9b \x9c \x9d \x9e \x9f \xa1 \xa2 \xa3 \xa4
674*22dc650dSSadaf Ebrahimi  \xa5 \xa6 \xa7 \xa8 \xa9 \xaa \xab \xac \xad \xae \xaf \xb0 \xb1 \xb2 \xb3
675*22dc650dSSadaf Ebrahimi  \xb4 \xb5 \xb6 \xb7 \xb8 \xb9 \xba \xbb \xbc \xbd \xbe \xbf \xc0 \xc1 \xc2
676*22dc650dSSadaf Ebrahimi  \xc3 \xc4 \xc5 \xc6 \xc7 \xc8 \xc9 \xca \xcb \xcc \xcd \xce \xcf \xd0 \xd1
677*22dc650dSSadaf Ebrahimi  \xd2 \xd3 \xd4 \xd5 \xd6 \xd7 \xd8 \xd9 \xda \xdb \xdc \xdd \xde \xdf \xe0
678*22dc650dSSadaf Ebrahimi  \xe1 \xe2 \xe3 \xe4 \xe5 \xe6 \xe7 \xe8 \xe9 \xea \xeb \xec \xed \xee \xef
679*22dc650dSSadaf Ebrahimi  \xf0 \xf1 \xf2 \xf3 \xf4 \xf5 \xf6 \xf7 \xf8 \xf9 \xfa \xfb \xfc \xfd \xfe
680*22dc650dSSadaf Ebrahimi  \xff
681*22dc650dSSadaf EbrahimiLast code unit = ' '
682*22dc650dSSadaf EbrahimiSubject length lower bound = 3
683*22dc650dSSadaf Ebrahimi    \x{a2} \x{84}
684*22dc650dSSadaf Ebrahimi 0: \x{a2} \x{84}
685*22dc650dSSadaf Ebrahimi    A Z
686*22dc650dSSadaf Ebrahimi 0: A Z
687*22dc650dSSadaf Ebrahimi
688*22dc650dSSadaf Ebrahimi/a+/utf
689*22dc650dSSadaf Ebrahimi    a\x{123}aa\=offset=1
690*22dc650dSSadaf Ebrahimi 0: aa
691*22dc650dSSadaf Ebrahimi    a\x{123}aa\=offset=2
692*22dc650dSSadaf Ebrahimi 0: aa
693*22dc650dSSadaf Ebrahimi    a\x{123}aa\=offset=3
694*22dc650dSSadaf Ebrahimi 0: a
695*22dc650dSSadaf Ebrahimi\= Expect no match
696*22dc650dSSadaf Ebrahimi    a\x{123}aa\=offset=4
697*22dc650dSSadaf EbrahimiNo match
698*22dc650dSSadaf Ebrahimi\= Expect bad offset error
699*22dc650dSSadaf Ebrahimi    a\x{123}aa\=offset=5
700*22dc650dSSadaf EbrahimiFailed: error -33: bad offset value
701*22dc650dSSadaf Ebrahimi    a\x{123}aa\=offset=6
702*22dc650dSSadaf EbrahimiFailed: error -33: bad offset value
703*22dc650dSSadaf Ebrahimi
704*22dc650dSSadaf Ebrahimi/\x{1234}+/Ii,utf
705*22dc650dSSadaf EbrahimiCapture group count = 0
706*22dc650dSSadaf EbrahimiOptions: caseless utf
707*22dc650dSSadaf EbrahimiFirst code unit = \x{1234}
708*22dc650dSSadaf EbrahimiSubject length lower bound = 1
709*22dc650dSSadaf Ebrahimi
710*22dc650dSSadaf Ebrahimi/\x{1234}+?/Ii,utf
711*22dc650dSSadaf EbrahimiCapture group count = 0
712*22dc650dSSadaf EbrahimiOptions: caseless utf
713*22dc650dSSadaf EbrahimiFirst code unit = \x{1234}
714*22dc650dSSadaf EbrahimiSubject length lower bound = 1
715*22dc650dSSadaf Ebrahimi
716*22dc650dSSadaf Ebrahimi/\x{1234}++/Ii,utf
717*22dc650dSSadaf EbrahimiCapture group count = 0
718*22dc650dSSadaf EbrahimiOptions: caseless utf
719*22dc650dSSadaf EbrahimiFirst code unit = \x{1234}
720*22dc650dSSadaf EbrahimiSubject length lower bound = 1
721*22dc650dSSadaf Ebrahimi
722*22dc650dSSadaf Ebrahimi/\x{1234}{2}/Ii,utf
723*22dc650dSSadaf EbrahimiCapture group count = 0
724*22dc650dSSadaf EbrahimiOptions: caseless utf
725*22dc650dSSadaf EbrahimiFirst code unit = \x{1234}
726*22dc650dSSadaf EbrahimiLast code unit = \x{1234}
727*22dc650dSSadaf EbrahimiSubject length lower bound = 2
728*22dc650dSSadaf Ebrahimi
729*22dc650dSSadaf Ebrahimi/[^\x{c4}]/IB,utf
730*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
731*22dc650dSSadaf Ebrahimi        Bra
732*22dc650dSSadaf Ebrahimi        [^\x{c4}]
733*22dc650dSSadaf Ebrahimi        Ket
734*22dc650dSSadaf Ebrahimi        End
735*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
736*22dc650dSSadaf EbrahimiCapture group count = 0
737*22dc650dSSadaf EbrahimiOptions: utf
738*22dc650dSSadaf EbrahimiSubject length lower bound = 1
739*22dc650dSSadaf Ebrahimi
740*22dc650dSSadaf Ebrahimi/X+\x{200}/IB,utf
741*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
742*22dc650dSSadaf Ebrahimi        Bra
743*22dc650dSSadaf Ebrahimi        X++
744*22dc650dSSadaf Ebrahimi        \x{200}
745*22dc650dSSadaf Ebrahimi        Ket
746*22dc650dSSadaf Ebrahimi        End
747*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
748*22dc650dSSadaf EbrahimiCapture group count = 0
749*22dc650dSSadaf EbrahimiOptions: utf
750*22dc650dSSadaf EbrahimiFirst code unit = 'X'
751*22dc650dSSadaf EbrahimiLast code unit = \x{200}
752*22dc650dSSadaf EbrahimiSubject length lower bound = 2
753*22dc650dSSadaf Ebrahimi
754*22dc650dSSadaf Ebrahimi/\R/I,utf
755*22dc650dSSadaf EbrahimiCapture group count = 0
756*22dc650dSSadaf EbrahimiOptions: utf
757*22dc650dSSadaf EbrahimiStarting code units: \x0a \x0b \x0c \x0d \x85 \xff
758*22dc650dSSadaf EbrahimiSubject length lower bound = 1
759*22dc650dSSadaf Ebrahimi
760*22dc650dSSadaf Ebrahimi# Check bad offset
761*22dc650dSSadaf Ebrahimi
762*22dc650dSSadaf Ebrahimi/a/utf
763*22dc650dSSadaf Ebrahimi\= Expect bad UTF-16 offset, or no match in 32-bit
764*22dc650dSSadaf Ebrahimi    \x{10000}\=offset=1
765*22dc650dSSadaf EbrahimiNo match
766*22dc650dSSadaf Ebrahimi    \x{10000}ab\=offset=1
767*22dc650dSSadaf Ebrahimi 0: a
768*22dc650dSSadaf Ebrahimi\= Expect 16-bit match, 32-bit no match
769*22dc650dSSadaf Ebrahimi    \x{10000}ab\=offset=2
770*22dc650dSSadaf EbrahimiNo match
771*22dc650dSSadaf Ebrahimi\= Expect no match
772*22dc650dSSadaf Ebrahimi    \x{10000}ab\=offset=3
773*22dc650dSSadaf EbrahimiNo match
774*22dc650dSSadaf Ebrahimi\= Expect no match in 16-bit, bad offset in 32-bit
775*22dc650dSSadaf Ebrahimi    \x{10000}ab\=offset=4
776*22dc650dSSadaf EbrahimiFailed: error -33: bad offset value
777*22dc650dSSadaf Ebrahimi\= Expect bad offset
778*22dc650dSSadaf Ebrahimi    \x{10000}ab\=offset=5
779*22dc650dSSadaf EbrahimiFailed: error -33: bad offset value
780*22dc650dSSadaf Ebrahimi
781*22dc650dSSadaf Ebrahimi/�/utf
782*22dc650dSSadaf EbrahimiFailed: error -27 at offset 0: UTF-32 error: code points 0xd800-0xdfff are not defined
783*22dc650dSSadaf Ebrahimi
784*22dc650dSSadaf Ebrahimi/\w+\x{C4}/B,utf
785*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
786*22dc650dSSadaf Ebrahimi        Bra
787*22dc650dSSadaf Ebrahimi        \w++
788*22dc650dSSadaf Ebrahimi        \x{c4}
789*22dc650dSSadaf Ebrahimi        Ket
790*22dc650dSSadaf Ebrahimi        End
791*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
792*22dc650dSSadaf Ebrahimi    a\x{C4}\x{C4}
793*22dc650dSSadaf Ebrahimi 0: a\x{c4}
794*22dc650dSSadaf Ebrahimi
795*22dc650dSSadaf Ebrahimi/\w+\x{C4}/B,utf,tables=2
796*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
797*22dc650dSSadaf Ebrahimi        Bra
798*22dc650dSSadaf Ebrahimi        \w+
799*22dc650dSSadaf Ebrahimi        \x{c4}
800*22dc650dSSadaf Ebrahimi        Ket
801*22dc650dSSadaf Ebrahimi        End
802*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
803*22dc650dSSadaf Ebrahimi    a\x{C4}\x{C4}
804*22dc650dSSadaf Ebrahimi 0: a\x{c4}\x{c4}
805*22dc650dSSadaf Ebrahimi
806*22dc650dSSadaf Ebrahimi/\W+\x{C4}/B,utf
807*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
808*22dc650dSSadaf Ebrahimi        Bra
809*22dc650dSSadaf Ebrahimi        \W+
810*22dc650dSSadaf Ebrahimi        \x{c4}
811*22dc650dSSadaf Ebrahimi        Ket
812*22dc650dSSadaf Ebrahimi        End
813*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
814*22dc650dSSadaf Ebrahimi    !\x{C4}
815*22dc650dSSadaf Ebrahimi 0: !\x{c4}
816*22dc650dSSadaf Ebrahimi
817*22dc650dSSadaf Ebrahimi/\W+\x{C4}/B,utf,tables=2
818*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
819*22dc650dSSadaf Ebrahimi        Bra
820*22dc650dSSadaf Ebrahimi        \W++
821*22dc650dSSadaf Ebrahimi        \x{c4}
822*22dc650dSSadaf Ebrahimi        Ket
823*22dc650dSSadaf Ebrahimi        End
824*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
825*22dc650dSSadaf Ebrahimi    !\x{C4}
826*22dc650dSSadaf Ebrahimi 0: !\x{c4}
827*22dc650dSSadaf Ebrahimi
828*22dc650dSSadaf Ebrahimi/\W+\x{A1}/B,utf
829*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
830*22dc650dSSadaf Ebrahimi        Bra
831*22dc650dSSadaf Ebrahimi        \W+
832*22dc650dSSadaf Ebrahimi        \x{a1}
833*22dc650dSSadaf Ebrahimi        Ket
834*22dc650dSSadaf Ebrahimi        End
835*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
836*22dc650dSSadaf Ebrahimi    !\x{A1}
837*22dc650dSSadaf Ebrahimi 0: !\x{a1}
838*22dc650dSSadaf Ebrahimi
839*22dc650dSSadaf Ebrahimi/\W+\x{A1}/B,utf,tables=2
840*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
841*22dc650dSSadaf Ebrahimi        Bra
842*22dc650dSSadaf Ebrahimi        \W+
843*22dc650dSSadaf Ebrahimi        \x{a1}
844*22dc650dSSadaf Ebrahimi        Ket
845*22dc650dSSadaf Ebrahimi        End
846*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
847*22dc650dSSadaf Ebrahimi    !\x{A1}
848*22dc650dSSadaf Ebrahimi 0: !\x{a1}
849*22dc650dSSadaf Ebrahimi
850*22dc650dSSadaf Ebrahimi/X\s+\x{A0}/B,utf
851*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
852*22dc650dSSadaf Ebrahimi        Bra
853*22dc650dSSadaf Ebrahimi        X
854*22dc650dSSadaf Ebrahimi        \s++
855*22dc650dSSadaf Ebrahimi        \x{a0}
856*22dc650dSSadaf Ebrahimi        Ket
857*22dc650dSSadaf Ebrahimi        End
858*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
859*22dc650dSSadaf Ebrahimi    X\x20\x{A0}\x{A0}
860*22dc650dSSadaf Ebrahimi 0: X \x{a0}
861*22dc650dSSadaf Ebrahimi
862*22dc650dSSadaf Ebrahimi/X\s+\x{A0}/B,utf,tables=2
863*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
864*22dc650dSSadaf Ebrahimi        Bra
865*22dc650dSSadaf Ebrahimi        X
866*22dc650dSSadaf Ebrahimi        \s+
867*22dc650dSSadaf Ebrahimi        \x{a0}
868*22dc650dSSadaf Ebrahimi        Ket
869*22dc650dSSadaf Ebrahimi        End
870*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
871*22dc650dSSadaf Ebrahimi    X\x20\x{A0}\x{A0}
872*22dc650dSSadaf Ebrahimi 0: X \x{a0}\x{a0}
873*22dc650dSSadaf Ebrahimi
874*22dc650dSSadaf Ebrahimi/\S+\x{A0}/B,utf
875*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
876*22dc650dSSadaf Ebrahimi        Bra
877*22dc650dSSadaf Ebrahimi        \S+
878*22dc650dSSadaf Ebrahimi        \x{a0}
879*22dc650dSSadaf Ebrahimi        Ket
880*22dc650dSSadaf Ebrahimi        End
881*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
882*22dc650dSSadaf Ebrahimi    X\x{A0}\x{A0}
883*22dc650dSSadaf Ebrahimi 0: X\x{a0}\x{a0}
884*22dc650dSSadaf Ebrahimi
885*22dc650dSSadaf Ebrahimi/\S+\x{A0}/B,utf,tables=2
886*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
887*22dc650dSSadaf Ebrahimi        Bra
888*22dc650dSSadaf Ebrahimi        \S++
889*22dc650dSSadaf Ebrahimi        \x{a0}
890*22dc650dSSadaf Ebrahimi        Ket
891*22dc650dSSadaf Ebrahimi        End
892*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
893*22dc650dSSadaf Ebrahimi    X\x{A0}\x{A0}
894*22dc650dSSadaf Ebrahimi 0: X\x{a0}
895*22dc650dSSadaf Ebrahimi
896*22dc650dSSadaf Ebrahimi/\x{a0}+\s!/B,utf
897*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
898*22dc650dSSadaf Ebrahimi        Bra
899*22dc650dSSadaf Ebrahimi        \x{a0}++
900*22dc650dSSadaf Ebrahimi        \s
901*22dc650dSSadaf Ebrahimi        !
902*22dc650dSSadaf Ebrahimi        Ket
903*22dc650dSSadaf Ebrahimi        End
904*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
905*22dc650dSSadaf Ebrahimi    \x{a0}\x20!
906*22dc650dSSadaf Ebrahimi 0: \x{a0} !
907*22dc650dSSadaf Ebrahimi
908*22dc650dSSadaf Ebrahimi/\x{a0}+\s!/B,utf,tables=2
909*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
910*22dc650dSSadaf Ebrahimi        Bra
911*22dc650dSSadaf Ebrahimi        \x{a0}+
912*22dc650dSSadaf Ebrahimi        \s
913*22dc650dSSadaf Ebrahimi        !
914*22dc650dSSadaf Ebrahimi        Ket
915*22dc650dSSadaf Ebrahimi        End
916*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
917*22dc650dSSadaf Ebrahimi    \x{a0}\x20!
918*22dc650dSSadaf Ebrahimi 0: \x{a0} !
919*22dc650dSSadaf Ebrahimi
920*22dc650dSSadaf Ebrahimi/(*UTF)abc/never_utf
921*22dc650dSSadaf EbrahimiFailed: error 174 at offset 6: using UTF is disabled by the application
922*22dc650dSSadaf Ebrahimi
923*22dc650dSSadaf Ebrahimi/abc/utf,never_utf
924*22dc650dSSadaf EbrahimiFailed: error 174 at offset 0: using UTF is disabled by the application
925*22dc650dSSadaf Ebrahimi
926*22dc650dSSadaf Ebrahimi/A\x{391}\x{10427}\x{ff3a}\x{1fb0}/IBi,utf
927*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
928*22dc650dSSadaf Ebrahimi        Bra
929*22dc650dSSadaf Ebrahimi     /i A\x{391}\x{10427}\x{ff3a}\x{1fb0}
930*22dc650dSSadaf Ebrahimi        Ket
931*22dc650dSSadaf Ebrahimi        End
932*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
933*22dc650dSSadaf EbrahimiCapture group count = 0
934*22dc650dSSadaf EbrahimiOptions: caseless utf
935*22dc650dSSadaf EbrahimiFirst code unit = 'A' (caseless)
936*22dc650dSSadaf EbrahimiLast code unit = \x{1fb0} (caseless)
937*22dc650dSSadaf EbrahimiSubject length lower bound = 5
938*22dc650dSSadaf Ebrahimi
939*22dc650dSSadaf Ebrahimi/A\x{391}\x{10427}\x{ff3a}\x{1fb0}/IB,utf
940*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
941*22dc650dSSadaf Ebrahimi        Bra
942*22dc650dSSadaf Ebrahimi        A\x{391}\x{10427}\x{ff3a}\x{1fb0}
943*22dc650dSSadaf Ebrahimi        Ket
944*22dc650dSSadaf Ebrahimi        End
945*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
946*22dc650dSSadaf EbrahimiCapture group count = 0
947*22dc650dSSadaf EbrahimiOptions: utf
948*22dc650dSSadaf EbrahimiFirst code unit = 'A'
949*22dc650dSSadaf EbrahimiLast code unit = \x{1fb0}
950*22dc650dSSadaf EbrahimiSubject length lower bound = 5
951*22dc650dSSadaf Ebrahimi
952*22dc650dSSadaf Ebrahimi/AB\x{1fb0}/IB,utf
953*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
954*22dc650dSSadaf Ebrahimi        Bra
955*22dc650dSSadaf Ebrahimi        AB\x{1fb0}
956*22dc650dSSadaf Ebrahimi        Ket
957*22dc650dSSadaf Ebrahimi        End
958*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
959*22dc650dSSadaf EbrahimiCapture group count = 0
960*22dc650dSSadaf EbrahimiOptions: utf
961*22dc650dSSadaf EbrahimiFirst code unit = 'A'
962*22dc650dSSadaf EbrahimiLast code unit = \x{1fb0}
963*22dc650dSSadaf EbrahimiSubject length lower bound = 3
964*22dc650dSSadaf Ebrahimi
965*22dc650dSSadaf Ebrahimi/AB\x{1fb0}/IBi,utf
966*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
967*22dc650dSSadaf Ebrahimi        Bra
968*22dc650dSSadaf Ebrahimi     /i AB\x{1fb0}
969*22dc650dSSadaf Ebrahimi        Ket
970*22dc650dSSadaf Ebrahimi        End
971*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
972*22dc650dSSadaf EbrahimiCapture group count = 0
973*22dc650dSSadaf EbrahimiOptions: caseless utf
974*22dc650dSSadaf EbrahimiFirst code unit = 'A' (caseless)
975*22dc650dSSadaf EbrahimiLast code unit = \x{1fb0} (caseless)
976*22dc650dSSadaf EbrahimiSubject length lower bound = 3
977*22dc650dSSadaf Ebrahimi
978*22dc650dSSadaf Ebrahimi/\x{401}\x{420}\x{421}\x{422}\x{423}\x{424}\x{425}\x{426}\x{427}\x{428}\x{429}\x{42a}\x{42b}\x{42c}\x{42d}\x{42e}\x{42f}/Ii,utf
979*22dc650dSSadaf EbrahimiCapture group count = 0
980*22dc650dSSadaf EbrahimiOptions: caseless utf
981*22dc650dSSadaf EbrahimiFirst code unit = \x{401} (caseless)
982*22dc650dSSadaf EbrahimiLast code unit = \x{42f} (caseless)
983*22dc650dSSadaf EbrahimiSubject length lower bound = 17
984*22dc650dSSadaf Ebrahimi    \x{401}\x{420}\x{421}\x{422}\x{423}\x{424}\x{425}\x{426}\x{427}\x{428}\x{429}\x{42a}\x{42b}\x{42c}\x{42d}\x{42e}\x{42f}
985*22dc650dSSadaf Ebrahimi 0: \x{401}\x{420}\x{421}\x{422}\x{423}\x{424}\x{425}\x{426}\x{427}\x{428}\x{429}\x{42a}\x{42b}\x{42c}\x{42d}\x{42e}\x{42f}
986*22dc650dSSadaf Ebrahimi    \x{451}\x{440}\x{441}\x{442}\x{443}\x{444}\x{445}\x{446}\x{447}\x{448}\x{449}\x{44a}\x{44b}\x{44c}\x{44d}\x{44e}\x{44f}
987*22dc650dSSadaf Ebrahimi 0: \x{451}\x{440}\x{441}\x{442}\x{443}\x{444}\x{445}\x{446}\x{447}\x{448}\x{449}\x{44a}\x{44b}\x{44c}\x{44d}\x{44e}\x{44f}
988*22dc650dSSadaf Ebrahimi
989*22dc650dSSadaf Ebrahimi/[ⱥ]/Bi,utf
990*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
991*22dc650dSSadaf Ebrahimi        Bra
992*22dc650dSSadaf Ebrahimi     /i \x{2c65}
993*22dc650dSSadaf Ebrahimi        Ket
994*22dc650dSSadaf Ebrahimi        End
995*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
996*22dc650dSSadaf Ebrahimi
997*22dc650dSSadaf Ebrahimi/[^ⱥ]/Bi,utf
998*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
999*22dc650dSSadaf Ebrahimi        Bra
1000*22dc650dSSadaf Ebrahimi     /i [^\x{2c65}]
1001*22dc650dSSadaf Ebrahimi        Ket
1002*22dc650dSSadaf Ebrahimi        End
1003*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
1004*22dc650dSSadaf Ebrahimi
1005*22dc650dSSadaf Ebrahimi/[[:blank:]]/B,ucp
1006*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
1007*22dc650dSSadaf Ebrahimi        Bra
1008*22dc650dSSadaf Ebrahimi        [\x09 \xa0\x{1680}\x{180e}\x{2000}-\x{200a}\x{202f}\x{205f}\x{3000}]
1009*22dc650dSSadaf Ebrahimi        Ket
1010*22dc650dSSadaf Ebrahimi        End
1011*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
1012*22dc650dSSadaf Ebrahimi
1013*22dc650dSSadaf Ebrahimi/\x{212a}+/Ii,utf
1014*22dc650dSSadaf EbrahimiCapture group count = 0
1015*22dc650dSSadaf EbrahimiOptions: caseless utf
1016*22dc650dSSadaf EbrahimiStarting code units: K k \xff
1017*22dc650dSSadaf EbrahimiSubject length lower bound = 1
1018*22dc650dSSadaf Ebrahimi    KKkk\x{212a}
1019*22dc650dSSadaf Ebrahimi 0: KKkk\x{212a}
1020*22dc650dSSadaf Ebrahimi
1021*22dc650dSSadaf Ebrahimi/s+/Ii,utf
1022*22dc650dSSadaf EbrahimiCapture group count = 0
1023*22dc650dSSadaf EbrahimiOptions: caseless utf
1024*22dc650dSSadaf EbrahimiStarting code units: S s \xff
1025*22dc650dSSadaf EbrahimiSubject length lower bound = 1
1026*22dc650dSSadaf Ebrahimi    SSss\x{17f}
1027*22dc650dSSadaf Ebrahimi 0: SSss\x{17f}
1028*22dc650dSSadaf Ebrahimi
1029*22dc650dSSadaf Ebrahimi# Non-UTF characters should give errors in both 16-bit and 32-bit modes.
1030*22dc650dSSadaf Ebrahimi
1031*22dc650dSSadaf Ebrahimi/\x{110000}/utf
1032*22dc650dSSadaf EbrahimiFailed: error 134 at offset 9: character code point value in \x{} or \o{} is too large
1033*22dc650dSSadaf Ebrahimi
1034*22dc650dSSadaf Ebrahimi/\o{4200000}/utf
1035*22dc650dSSadaf EbrahimiFailed: error 134 at offset 10: character code point value in \x{} or \o{} is too large
1036*22dc650dSSadaf Ebrahimi
1037*22dc650dSSadaf Ebrahimi/\x{100}*A/IB,utf
1038*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
1039*22dc650dSSadaf Ebrahimi        Bra
1040*22dc650dSSadaf Ebrahimi        \x{100}*+
1041*22dc650dSSadaf Ebrahimi        A
1042*22dc650dSSadaf Ebrahimi        Ket
1043*22dc650dSSadaf Ebrahimi        End
1044*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
1045*22dc650dSSadaf EbrahimiCapture group count = 0
1046*22dc650dSSadaf EbrahimiOptions: utf
1047*22dc650dSSadaf EbrahimiStarting code units: A \xff
1048*22dc650dSSadaf EbrahimiLast code unit = 'A'
1049*22dc650dSSadaf EbrahimiSubject length lower bound = 1
1050*22dc650dSSadaf Ebrahimi    A
1051*22dc650dSSadaf Ebrahimi 0: A
1052*22dc650dSSadaf Ebrahimi
1053*22dc650dSSadaf Ebrahimi/\x{100}*\d(?R)/IB,utf
1054*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
1055*22dc650dSSadaf Ebrahimi        Bra
1056*22dc650dSSadaf Ebrahimi        \x{100}*+
1057*22dc650dSSadaf Ebrahimi        \d
1058*22dc650dSSadaf Ebrahimi        Recurse
1059*22dc650dSSadaf Ebrahimi        Ket
1060*22dc650dSSadaf Ebrahimi        End
1061*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
1062*22dc650dSSadaf EbrahimiCapture group count = 0
1063*22dc650dSSadaf EbrahimiOptions: utf
1064*22dc650dSSadaf EbrahimiStarting code units: 0 1 2 3 4 5 6 7 8 9 \xff
1065*22dc650dSSadaf EbrahimiSubject length lower bound = 1
1066*22dc650dSSadaf Ebrahimi
1067*22dc650dSSadaf Ebrahimi/[Z\x{100}]/IB,utf
1068*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
1069*22dc650dSSadaf Ebrahimi        Bra
1070*22dc650dSSadaf Ebrahimi        [Z\x{100}]
1071*22dc650dSSadaf Ebrahimi        Ket
1072*22dc650dSSadaf Ebrahimi        End
1073*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
1074*22dc650dSSadaf EbrahimiCapture group count = 0
1075*22dc650dSSadaf EbrahimiOptions: utf
1076*22dc650dSSadaf EbrahimiStarting code units: Z \xff
1077*22dc650dSSadaf EbrahimiSubject length lower bound = 1
1078*22dc650dSSadaf Ebrahimi    Z\x{100}
1079*22dc650dSSadaf Ebrahimi 0: Z
1080*22dc650dSSadaf Ebrahimi    \x{100}
1081*22dc650dSSadaf Ebrahimi 0: \x{100}
1082*22dc650dSSadaf Ebrahimi    \x{100}Z
1083*22dc650dSSadaf Ebrahimi 0: \x{100}
1084*22dc650dSSadaf Ebrahimi
1085*22dc650dSSadaf Ebrahimi/[z-\x{100}]/IB,utf
1086*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
1087*22dc650dSSadaf Ebrahimi        Bra
1088*22dc650dSSadaf Ebrahimi        [z-\xff\x{100}]
1089*22dc650dSSadaf Ebrahimi        Ket
1090*22dc650dSSadaf Ebrahimi        End
1091*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
1092*22dc650dSSadaf EbrahimiCapture group count = 0
1093*22dc650dSSadaf EbrahimiOptions: utf
1094*22dc650dSSadaf EbrahimiStarting code units: z { | } ~ \x7f \x80 \x81 \x82 \x83 \x84 \x85 \x86 \x87
1095*22dc650dSSadaf Ebrahimi  \x88 \x89 \x8a \x8b \x8c \x8d \x8e \x8f \x90 \x91 \x92 \x93 \x94 \x95 \x96
1096*22dc650dSSadaf Ebrahimi  \x97 \x98 \x99 \x9a \x9b \x9c \x9d \x9e \x9f \xa0 \xa1 \xa2 \xa3 \xa4 \xa5
1097*22dc650dSSadaf Ebrahimi  \xa6 \xa7 \xa8 \xa9 \xaa \xab \xac \xad \xae \xaf \xb0 \xb1 \xb2 \xb3 \xb4
1098*22dc650dSSadaf Ebrahimi  \xb5 \xb6 \xb7 \xb8 \xb9 \xba \xbb \xbc \xbd \xbe \xbf \xc0 \xc1 \xc2 \xc3
1099*22dc650dSSadaf Ebrahimi  \xc4 \xc5 \xc6 \xc7 \xc8 \xc9 \xca \xcb \xcc \xcd \xce \xcf \xd0 \xd1 \xd2
1100*22dc650dSSadaf Ebrahimi  \xd3 \xd4 \xd5 \xd6 \xd7 \xd8 \xd9 \xda \xdb \xdc \xdd \xde \xdf \xe0 \xe1
1101*22dc650dSSadaf Ebrahimi  \xe2 \xe3 \xe4 \xe5 \xe6 \xe7 \xe8 \xe9 \xea \xeb \xec \xed \xee \xef \xf0
1102*22dc650dSSadaf Ebrahimi  \xf1 \xf2 \xf3 \xf4 \xf5 \xf6 \xf7 \xf8 \xf9 \xfa \xfb \xfc \xfd \xfe \xff
1103*22dc650dSSadaf EbrahimiSubject length lower bound = 1
1104*22dc650dSSadaf Ebrahimi
1105*22dc650dSSadaf Ebrahimi/[z\Qa-d]Ā\E]/IB,utf
1106*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
1107*22dc650dSSadaf Ebrahimi        Bra
1108*22dc650dSSadaf Ebrahimi        [\-\]adz\x{100}]
1109*22dc650dSSadaf Ebrahimi        Ket
1110*22dc650dSSadaf Ebrahimi        End
1111*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
1112*22dc650dSSadaf EbrahimiCapture group count = 0
1113*22dc650dSSadaf EbrahimiOptions: utf
1114*22dc650dSSadaf EbrahimiStarting code units: - ] a d z \xff
1115*22dc650dSSadaf EbrahimiSubject length lower bound = 1
1116*22dc650dSSadaf Ebrahimi    \x{100}
1117*22dc650dSSadaf Ebrahimi 0: \x{100}
1118*22dc650dSSadaf Ebrahimi    Ā
1119*22dc650dSSadaf Ebrahimi 0: \x{100}
1120*22dc650dSSadaf Ebrahimi
1121*22dc650dSSadaf Ebrahimi/[ab\x{100}]abc(xyz(?1))/IB,utf
1122*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
1123*22dc650dSSadaf Ebrahimi        Bra
1124*22dc650dSSadaf Ebrahimi        [ab\x{100}]
1125*22dc650dSSadaf Ebrahimi        abc
1126*22dc650dSSadaf Ebrahimi        CBra 1
1127*22dc650dSSadaf Ebrahimi        xyz
1128*22dc650dSSadaf Ebrahimi        Recurse
1129*22dc650dSSadaf Ebrahimi        Ket
1130*22dc650dSSadaf Ebrahimi        Ket
1131*22dc650dSSadaf Ebrahimi        End
1132*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
1133*22dc650dSSadaf EbrahimiCapture group count = 1
1134*22dc650dSSadaf EbrahimiOptions: utf
1135*22dc650dSSadaf EbrahimiStarting code units: a b \xff
1136*22dc650dSSadaf EbrahimiLast code unit = 'z'
1137*22dc650dSSadaf EbrahimiSubject length lower bound = 7
1138*22dc650dSSadaf Ebrahimi
1139*22dc650dSSadaf Ebrahimi/\x{100}*\s/IB,utf
1140*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
1141*22dc650dSSadaf Ebrahimi        Bra
1142*22dc650dSSadaf Ebrahimi        \x{100}*+
1143*22dc650dSSadaf Ebrahimi        \s
1144*22dc650dSSadaf Ebrahimi        Ket
1145*22dc650dSSadaf Ebrahimi        End
1146*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
1147*22dc650dSSadaf EbrahimiCapture group count = 0
1148*22dc650dSSadaf EbrahimiOptions: utf
1149*22dc650dSSadaf EbrahimiStarting code units: \x09 \x0a \x0b \x0c \x0d \x20 \xff
1150*22dc650dSSadaf EbrahimiSubject length lower bound = 1
1151*22dc650dSSadaf Ebrahimi
1152*22dc650dSSadaf Ebrahimi/\x{100}*\d/IB,utf
1153*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
1154*22dc650dSSadaf Ebrahimi        Bra
1155*22dc650dSSadaf Ebrahimi        \x{100}*+
1156*22dc650dSSadaf Ebrahimi        \d
1157*22dc650dSSadaf Ebrahimi        Ket
1158*22dc650dSSadaf Ebrahimi        End
1159*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
1160*22dc650dSSadaf EbrahimiCapture group count = 0
1161*22dc650dSSadaf EbrahimiOptions: utf
1162*22dc650dSSadaf EbrahimiStarting code units: 0 1 2 3 4 5 6 7 8 9 \xff
1163*22dc650dSSadaf EbrahimiSubject length lower bound = 1
1164*22dc650dSSadaf Ebrahimi
1165*22dc650dSSadaf Ebrahimi/\x{100}*\w/IB,utf
1166*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
1167*22dc650dSSadaf Ebrahimi        Bra
1168*22dc650dSSadaf Ebrahimi        \x{100}*+
1169*22dc650dSSadaf Ebrahimi        \w
1170*22dc650dSSadaf Ebrahimi        Ket
1171*22dc650dSSadaf Ebrahimi        End
1172*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
1173*22dc650dSSadaf EbrahimiCapture group count = 0
1174*22dc650dSSadaf EbrahimiOptions: utf
1175*22dc650dSSadaf EbrahimiStarting code units: 0 1 2 3 4 5 6 7 8 9 A B C D E F G H I J K L M N O P
1176*22dc650dSSadaf Ebrahimi  Q R S T U V W X Y Z _ a b c d e f g h i j k l m n o p q r s t u v w x y z
1177*22dc650dSSadaf Ebrahimi  \xff
1178*22dc650dSSadaf EbrahimiSubject length lower bound = 1
1179*22dc650dSSadaf Ebrahimi
1180*22dc650dSSadaf Ebrahimi/\x{100}*\D/IB,utf
1181*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
1182*22dc650dSSadaf Ebrahimi        Bra
1183*22dc650dSSadaf Ebrahimi        \x{100}*
1184*22dc650dSSadaf Ebrahimi        \D
1185*22dc650dSSadaf Ebrahimi        Ket
1186*22dc650dSSadaf Ebrahimi        End
1187*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
1188*22dc650dSSadaf EbrahimiCapture group count = 0
1189*22dc650dSSadaf EbrahimiOptions: utf
1190*22dc650dSSadaf EbrahimiStarting code units: \x00 \x01 \x02 \x03 \x04 \x05 \x06 \x07 \x08 \x09 \x0a
1191*22dc650dSSadaf Ebrahimi  \x0b \x0c \x0d \x0e \x0f \x10 \x11 \x12 \x13 \x14 \x15 \x16 \x17 \x18 \x19
1192*22dc650dSSadaf Ebrahimi  \x1a \x1b \x1c \x1d \x1e \x1f \x20 ! " # $ % & ' ( ) * + , - . / : ; < = >
1193*22dc650dSSadaf Ebrahimi  ? @ 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
1194*22dc650dSSadaf Ebrahimi  d e f g h i j k l m n o p q r s t u v w x y z { | } ~ \x7f \x80 \x81 \x82
1195*22dc650dSSadaf Ebrahimi  \x83 \x84 \x85 \x86 \x87 \x88 \x89 \x8a \x8b \x8c \x8d \x8e \x8f \x90 \x91
1196*22dc650dSSadaf Ebrahimi  \x92 \x93 \x94 \x95 \x96 \x97 \x98 \x99 \x9a \x9b \x9c \x9d \x9e \x9f \xa0
1197*22dc650dSSadaf Ebrahimi  \xa1 \xa2 \xa3 \xa4 \xa5 \xa6 \xa7 \xa8 \xa9 \xaa \xab \xac \xad \xae \xaf
1198*22dc650dSSadaf Ebrahimi  \xb0 \xb1 \xb2 \xb3 \xb4 \xb5 \xb6 \xb7 \xb8 \xb9 \xba \xbb \xbc \xbd \xbe
1199*22dc650dSSadaf Ebrahimi  \xbf \xc0 \xc1 \xc2 \xc3 \xc4 \xc5 \xc6 \xc7 \xc8 \xc9 \xca \xcb \xcc \xcd
1200*22dc650dSSadaf Ebrahimi  \xce \xcf \xd0 \xd1 \xd2 \xd3 \xd4 \xd5 \xd6 \xd7 \xd8 \xd9 \xda \xdb \xdc
1201*22dc650dSSadaf Ebrahimi  \xdd \xde \xdf \xe0 \xe1 \xe2 \xe3 \xe4 \xe5 \xe6 \xe7 \xe8 \xe9 \xea \xeb
1202*22dc650dSSadaf Ebrahimi  \xec \xed \xee \xef \xf0 \xf1 \xf2 \xf3 \xf4 \xf5 \xf6 \xf7 \xf8 \xf9 \xfa
1203*22dc650dSSadaf Ebrahimi  \xfb \xfc \xfd \xfe \xff
1204*22dc650dSSadaf EbrahimiSubject length lower bound = 1
1205*22dc650dSSadaf Ebrahimi
1206*22dc650dSSadaf Ebrahimi/\x{100}*\S/IB,utf
1207*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
1208*22dc650dSSadaf Ebrahimi        Bra
1209*22dc650dSSadaf Ebrahimi        \x{100}*
1210*22dc650dSSadaf Ebrahimi        \S
1211*22dc650dSSadaf Ebrahimi        Ket
1212*22dc650dSSadaf Ebrahimi        End
1213*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
1214*22dc650dSSadaf EbrahimiCapture group count = 0
1215*22dc650dSSadaf EbrahimiOptions: utf
1216*22dc650dSSadaf EbrahimiStarting code units: \x00 \x01 \x02 \x03 \x04 \x05 \x06 \x07 \x08 \x0e \x0f
1217*22dc650dSSadaf Ebrahimi  \x10 \x11 \x12 \x13 \x14 \x15 \x16 \x17 \x18 \x19 \x1a \x1b \x1c \x1d \x1e
1218*22dc650dSSadaf Ebrahimi  \x1f ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C
1219*22dc650dSSadaf Ebrahimi  D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h
1220*22dc650dSSadaf Ebrahimi  i j k l m n o p q r s t u v w x y z { | } ~ \x7f \x80 \x81 \x82 \x83 \x84
1221*22dc650dSSadaf Ebrahimi  \x85 \x86 \x87 \x88 \x89 \x8a \x8b \x8c \x8d \x8e \x8f \x90 \x91 \x92 \x93
1222*22dc650dSSadaf Ebrahimi  \x94 \x95 \x96 \x97 \x98 \x99 \x9a \x9b \x9c \x9d \x9e \x9f \xa0 \xa1 \xa2
1223*22dc650dSSadaf Ebrahimi  \xa3 \xa4 \xa5 \xa6 \xa7 \xa8 \xa9 \xaa \xab \xac \xad \xae \xaf \xb0 \xb1
1224*22dc650dSSadaf Ebrahimi  \xb2 \xb3 \xb4 \xb5 \xb6 \xb7 \xb8 \xb9 \xba \xbb \xbc \xbd \xbe \xbf \xc0
1225*22dc650dSSadaf Ebrahimi  \xc1 \xc2 \xc3 \xc4 \xc5 \xc6 \xc7 \xc8 \xc9 \xca \xcb \xcc \xcd \xce \xcf
1226*22dc650dSSadaf Ebrahimi  \xd0 \xd1 \xd2 \xd3 \xd4 \xd5 \xd6 \xd7 \xd8 \xd9 \xda \xdb \xdc \xdd \xde
1227*22dc650dSSadaf Ebrahimi  \xdf \xe0 \xe1 \xe2 \xe3 \xe4 \xe5 \xe6 \xe7 \xe8 \xe9 \xea \xeb \xec \xed
1228*22dc650dSSadaf Ebrahimi  \xee \xef \xf0 \xf1 \xf2 \xf3 \xf4 \xf5 \xf6 \xf7 \xf8 \xf9 \xfa \xfb \xfc
1229*22dc650dSSadaf Ebrahimi  \xfd \xfe \xff
1230*22dc650dSSadaf EbrahimiSubject length lower bound = 1
1231*22dc650dSSadaf Ebrahimi
1232*22dc650dSSadaf Ebrahimi/\x{100}*\W/IB,utf
1233*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
1234*22dc650dSSadaf Ebrahimi        Bra
1235*22dc650dSSadaf Ebrahimi        \x{100}*
1236*22dc650dSSadaf Ebrahimi        \W
1237*22dc650dSSadaf Ebrahimi        Ket
1238*22dc650dSSadaf Ebrahimi        End
1239*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
1240*22dc650dSSadaf EbrahimiCapture group count = 0
1241*22dc650dSSadaf EbrahimiOptions: utf
1242*22dc650dSSadaf EbrahimiStarting code units: \x00 \x01 \x02 \x03 \x04 \x05 \x06 \x07 \x08 \x09 \x0a
1243*22dc650dSSadaf Ebrahimi  \x0b \x0c \x0d \x0e \x0f \x10 \x11 \x12 \x13 \x14 \x15 \x16 \x17 \x18 \x19
1244*22dc650dSSadaf Ebrahimi  \x1a \x1b \x1c \x1d \x1e \x1f \x20 ! " # $ % & ' ( ) * + , - . / : ; < = >
1245*22dc650dSSadaf Ebrahimi  ? @ [ \ ] ^ ` { | } ~ \x7f \x80 \x81 \x82 \x83 \x84 \x85 \x86 \x87 \x88 \x89
1246*22dc650dSSadaf Ebrahimi  \x8a \x8b \x8c \x8d \x8e \x8f \x90 \x91 \x92 \x93 \x94 \x95 \x96 \x97 \x98
1247*22dc650dSSadaf Ebrahimi  \x99 \x9a \x9b \x9c \x9d \x9e \x9f \xa0 \xa1 \xa2 \xa3 \xa4 \xa5 \xa6 \xa7
1248*22dc650dSSadaf Ebrahimi  \xa8 \xa9 \xaa \xab \xac \xad \xae \xaf \xb0 \xb1 \xb2 \xb3 \xb4 \xb5 \xb6
1249*22dc650dSSadaf Ebrahimi  \xb7 \xb8 \xb9 \xba \xbb \xbc \xbd \xbe \xbf \xc0 \xc1 \xc2 \xc3 \xc4 \xc5
1250*22dc650dSSadaf Ebrahimi  \xc6 \xc7 \xc8 \xc9 \xca \xcb \xcc \xcd \xce \xcf \xd0 \xd1 \xd2 \xd3 \xd4
1251*22dc650dSSadaf Ebrahimi  \xd5 \xd6 \xd7 \xd8 \xd9 \xda \xdb \xdc \xdd \xde \xdf \xe0 \xe1 \xe2 \xe3
1252*22dc650dSSadaf Ebrahimi  \xe4 \xe5 \xe6 \xe7 \xe8 \xe9 \xea \xeb \xec \xed \xee \xef \xf0 \xf1 \xf2
1253*22dc650dSSadaf Ebrahimi  \xf3 \xf4 \xf5 \xf6 \xf7 \xf8 \xf9 \xfa \xfb \xfc \xfd \xfe \xff
1254*22dc650dSSadaf EbrahimiSubject length lower bound = 1
1255*22dc650dSSadaf Ebrahimi
1256*22dc650dSSadaf Ebrahimi/[\x{105}-\x{109}]/IBi,utf
1257*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
1258*22dc650dSSadaf Ebrahimi        Bra
1259*22dc650dSSadaf Ebrahimi        [\x{104}-\x{109}]
1260*22dc650dSSadaf Ebrahimi        Ket
1261*22dc650dSSadaf Ebrahimi        End
1262*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
1263*22dc650dSSadaf EbrahimiCapture group count = 0
1264*22dc650dSSadaf EbrahimiOptions: caseless utf
1265*22dc650dSSadaf EbrahimiStarting code units: \xff
1266*22dc650dSSadaf EbrahimiSubject length lower bound = 1
1267*22dc650dSSadaf Ebrahimi    \x{104}
1268*22dc650dSSadaf Ebrahimi 0: \x{104}
1269*22dc650dSSadaf Ebrahimi    \x{105}
1270*22dc650dSSadaf Ebrahimi 0: \x{105}
1271*22dc650dSSadaf Ebrahimi    \x{109}
1272*22dc650dSSadaf Ebrahimi 0: \x{109}
1273*22dc650dSSadaf Ebrahimi\= Expect no match
1274*22dc650dSSadaf Ebrahimi    \x{100}
1275*22dc650dSSadaf EbrahimiNo match
1276*22dc650dSSadaf Ebrahimi    \x{10a}
1277*22dc650dSSadaf EbrahimiNo match
1278*22dc650dSSadaf Ebrahimi
1279*22dc650dSSadaf Ebrahimi/[z-\x{100}]/IBi,utf
1280*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
1281*22dc650dSSadaf Ebrahimi        Bra
1282*22dc650dSSadaf Ebrahimi        [Zz-\xff\x{39c}\x{3bc}\x{212b}\x{1e9e}\x{212b}\x{178}\x{100}-\x{101}]
1283*22dc650dSSadaf Ebrahimi        Ket
1284*22dc650dSSadaf Ebrahimi        End
1285*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
1286*22dc650dSSadaf EbrahimiCapture group count = 0
1287*22dc650dSSadaf EbrahimiOptions: caseless utf
1288*22dc650dSSadaf EbrahimiStarting code units: Z z { | } ~ \x7f \x80 \x81 \x82 \x83 \x84 \x85 \x86
1289*22dc650dSSadaf Ebrahimi  \x87 \x88 \x89 \x8a \x8b \x8c \x8d \x8e \x8f \x90 \x91 \x92 \x93 \x94 \x95
1290*22dc650dSSadaf Ebrahimi  \x96 \x97 \x98 \x99 \x9a \x9b \x9c \x9d \x9e \x9f \xa0 \xa1 \xa2 \xa3 \xa4
1291*22dc650dSSadaf Ebrahimi  \xa5 \xa6 \xa7 \xa8 \xa9 \xaa \xab \xac \xad \xae \xaf \xb0 \xb1 \xb2 \xb3
1292*22dc650dSSadaf Ebrahimi  \xb4 \xb5 \xb6 \xb7 \xb8 \xb9 \xba \xbb \xbc \xbd \xbe \xbf \xc0 \xc1 \xc2
1293*22dc650dSSadaf Ebrahimi  \xc3 \xc4 \xc5 \xc6 \xc7 \xc8 \xc9 \xca \xcb \xcc \xcd \xce \xcf \xd0 \xd1
1294*22dc650dSSadaf Ebrahimi  \xd2 \xd3 \xd4 \xd5 \xd6 \xd7 \xd8 \xd9 \xda \xdb \xdc \xdd \xde \xdf \xe0
1295*22dc650dSSadaf Ebrahimi  \xe1 \xe2 \xe3 \xe4 \xe5 \xe6 \xe7 \xe8 \xe9 \xea \xeb \xec \xed \xee \xef
1296*22dc650dSSadaf Ebrahimi  \xf0 \xf1 \xf2 \xf3 \xf4 \xf5 \xf6 \xf7 \xf8 \xf9 \xfa \xfb \xfc \xfd \xfe
1297*22dc650dSSadaf Ebrahimi  \xff
1298*22dc650dSSadaf EbrahimiSubject length lower bound = 1
1299*22dc650dSSadaf Ebrahimi    Z
1300*22dc650dSSadaf Ebrahimi 0: Z
1301*22dc650dSSadaf Ebrahimi    z
1302*22dc650dSSadaf Ebrahimi 0: z
1303*22dc650dSSadaf Ebrahimi    \x{39c}
1304*22dc650dSSadaf Ebrahimi 0: \x{39c}
1305*22dc650dSSadaf Ebrahimi    \x{178}
1306*22dc650dSSadaf Ebrahimi 0: \x{178}
1307*22dc650dSSadaf Ebrahimi    |
1308*22dc650dSSadaf Ebrahimi 0: |
1309*22dc650dSSadaf Ebrahimi    \x{80}
1310*22dc650dSSadaf Ebrahimi 0: \x{80}
1311*22dc650dSSadaf Ebrahimi    \x{ff}
1312*22dc650dSSadaf Ebrahimi 0: \x{ff}
1313*22dc650dSSadaf Ebrahimi    \x{100}
1314*22dc650dSSadaf Ebrahimi 0: \x{100}
1315*22dc650dSSadaf Ebrahimi    \x{101}
1316*22dc650dSSadaf Ebrahimi 0: \x{101}
1317*22dc650dSSadaf Ebrahimi\= Expect no match
1318*22dc650dSSadaf Ebrahimi    \x{102}
1319*22dc650dSSadaf EbrahimiNo match
1320*22dc650dSSadaf Ebrahimi    Y
1321*22dc650dSSadaf EbrahimiNo match
1322*22dc650dSSadaf Ebrahimi    y
1323*22dc650dSSadaf EbrahimiNo match
1324*22dc650dSSadaf Ebrahimi
1325*22dc650dSSadaf Ebrahimi/[z-\x{100}]/IBi,utf
1326*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
1327*22dc650dSSadaf Ebrahimi        Bra
1328*22dc650dSSadaf Ebrahimi        [Zz-\xff\x{39c}\x{3bc}\x{212b}\x{1e9e}\x{212b}\x{178}\x{100}-\x{101}]
1329*22dc650dSSadaf Ebrahimi        Ket
1330*22dc650dSSadaf Ebrahimi        End
1331*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
1332*22dc650dSSadaf EbrahimiCapture group count = 0
1333*22dc650dSSadaf EbrahimiOptions: caseless utf
1334*22dc650dSSadaf EbrahimiStarting code units: Z z { | } ~ \x7f \x80 \x81 \x82 \x83 \x84 \x85 \x86
1335*22dc650dSSadaf Ebrahimi  \x87 \x88 \x89 \x8a \x8b \x8c \x8d \x8e \x8f \x90 \x91 \x92 \x93 \x94 \x95
1336*22dc650dSSadaf Ebrahimi  \x96 \x97 \x98 \x99 \x9a \x9b \x9c \x9d \x9e \x9f \xa0 \xa1 \xa2 \xa3 \xa4
1337*22dc650dSSadaf Ebrahimi  \xa5 \xa6 \xa7 \xa8 \xa9 \xaa \xab \xac \xad \xae \xaf \xb0 \xb1 \xb2 \xb3
1338*22dc650dSSadaf Ebrahimi  \xb4 \xb5 \xb6 \xb7 \xb8 \xb9 \xba \xbb \xbc \xbd \xbe \xbf \xc0 \xc1 \xc2
1339*22dc650dSSadaf Ebrahimi  \xc3 \xc4 \xc5 \xc6 \xc7 \xc8 \xc9 \xca \xcb \xcc \xcd \xce \xcf \xd0 \xd1
1340*22dc650dSSadaf Ebrahimi  \xd2 \xd3 \xd4 \xd5 \xd6 \xd7 \xd8 \xd9 \xda \xdb \xdc \xdd \xde \xdf \xe0
1341*22dc650dSSadaf Ebrahimi  \xe1 \xe2 \xe3 \xe4 \xe5 \xe6 \xe7 \xe8 \xe9 \xea \xeb \xec \xed \xee \xef
1342*22dc650dSSadaf Ebrahimi  \xf0 \xf1 \xf2 \xf3 \xf4 \xf5 \xf6 \xf7 \xf8 \xf9 \xfa \xfb \xfc \xfd \xfe
1343*22dc650dSSadaf Ebrahimi  \xff
1344*22dc650dSSadaf EbrahimiSubject length lower bound = 1
1345*22dc650dSSadaf Ebrahimi
1346*22dc650dSSadaf Ebrahimi/\x{3a3}B/IBi,utf
1347*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
1348*22dc650dSSadaf Ebrahimi        Bra
1349*22dc650dSSadaf Ebrahimi        clist 03a3 03c2 03c3
1350*22dc650dSSadaf Ebrahimi     /i B
1351*22dc650dSSadaf Ebrahimi        Ket
1352*22dc650dSSadaf Ebrahimi        End
1353*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
1354*22dc650dSSadaf EbrahimiCapture group count = 0
1355*22dc650dSSadaf EbrahimiOptions: caseless utf
1356*22dc650dSSadaf EbrahimiStarting code units: \xff
1357*22dc650dSSadaf EbrahimiLast code unit = 'B' (caseless)
1358*22dc650dSSadaf EbrahimiSubject length lower bound = 2
1359*22dc650dSSadaf Ebrahimi
1360*22dc650dSSadaf Ebrahimi/./utf
1361*22dc650dSSadaf Ebrahimi    \x{110000}
1362*22dc650dSSadaf EbrahimiFailed: error -28: UTF-32 error: code points greater than 0x10ffff are not defined at offset 0
1363*22dc650dSSadaf Ebrahimi
1364*22dc650dSSadaf Ebrahimi/(*UTF)ab������z/B
1365*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
1366*22dc650dSSadaf Ebrahimi        Bra
1367*22dc650dSSadaf Ebrahimi        ab\x{fd}\x{bf}\x{bf}\x{bf}\x{bf}\x{bf}z
1368*22dc650dSSadaf Ebrahimi        Ket
1369*22dc650dSSadaf Ebrahimi        End
1370*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
1371*22dc650dSSadaf Ebrahimi
1372*22dc650dSSadaf Ebrahimi/ab������z/utf
1373*22dc650dSSadaf Ebrahimi** Failed: character value greater than 0x10ffff cannot be converted to UTF
1374*22dc650dSSadaf Ebrahimi
1375*22dc650dSSadaf Ebrahimi/[\W\p{Any}]/B
1376*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
1377*22dc650dSSadaf Ebrahimi        Bra
1378*22dc650dSSadaf Ebrahimi        [\x00-/:-@[-^`{-\xff\p{Any}\x{100}-\x{ffffffff}]
1379*22dc650dSSadaf Ebrahimi        Ket
1380*22dc650dSSadaf Ebrahimi        End
1381*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
1382*22dc650dSSadaf Ebrahimi    abc
1383*22dc650dSSadaf Ebrahimi 0: a
1384*22dc650dSSadaf Ebrahimi    123
1385*22dc650dSSadaf Ebrahimi 0: 1
1386*22dc650dSSadaf Ebrahimi
1387*22dc650dSSadaf Ebrahimi/[\W\pL]/B
1388*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
1389*22dc650dSSadaf Ebrahimi        Bra
1390*22dc650dSSadaf Ebrahimi        [\x00-/:-@[-^`{-\xff\p{L}\x{100}-\x{ffffffff}]
1391*22dc650dSSadaf Ebrahimi        Ket
1392*22dc650dSSadaf Ebrahimi        End
1393*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
1394*22dc650dSSadaf Ebrahimi    abc
1395*22dc650dSSadaf Ebrahimi 0: a
1396*22dc650dSSadaf Ebrahimi    \x{100}
1397*22dc650dSSadaf Ebrahimi 0: \x{100}
1398*22dc650dSSadaf Ebrahimi    \x{308}
1399*22dc650dSSadaf Ebrahimi 0: \x{308}
1400*22dc650dSSadaf Ebrahimi\= Expect no match
1401*22dc650dSSadaf Ebrahimi    123
1402*22dc650dSSadaf EbrahimiNo match
1403*22dc650dSSadaf Ebrahimi
1404*22dc650dSSadaf Ebrahimi/[\s[:^ascii:]]/B,ucp
1405*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
1406*22dc650dSSadaf Ebrahimi        Bra
1407*22dc650dSSadaf Ebrahimi        [\x80-\xff\p{Xsp}\x{100}-\x{ffffffff}]
1408*22dc650dSSadaf Ebrahimi        Ket
1409*22dc650dSSadaf Ebrahimi        End
1410*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
1411*22dc650dSSadaf Ebrahimi
1412*22dc650dSSadaf Ebrahimi/\pP/ucp
1413*22dc650dSSadaf Ebrahimi    \x{7fffffff}
1414*22dc650dSSadaf EbrahimiNo match
1415*22dc650dSSadaf Ebrahimi
1416*22dc650dSSadaf Ebrahimi# A special extra option allows excaped surrogate code points in 32-bit mode,
1417*22dc650dSSadaf Ebrahimi# but subjects containing them must not be UTF-checked. These patterns give
1418*22dc650dSSadaf Ebrahimi# errors in 16-bit mode.
1419*22dc650dSSadaf Ebrahimi
1420*22dc650dSSadaf Ebrahimi/\x{d800}/I,utf,allow_surrogate_escapes
1421*22dc650dSSadaf EbrahimiCapture group count = 0
1422*22dc650dSSadaf EbrahimiOptions: utf
1423*22dc650dSSadaf EbrahimiExtra options: allow_surrogate_escapes
1424*22dc650dSSadaf EbrahimiFirst code unit = \x{d800}
1425*22dc650dSSadaf EbrahimiSubject length lower bound = 1
1426*22dc650dSSadaf Ebrahimi    \x{d800}\=no_utf_check
1427*22dc650dSSadaf Ebrahimi 0: \x{d800}
1428*22dc650dSSadaf Ebrahimi
1429*22dc650dSSadaf Ebrahimi/\udfff\o{157401}/utf,alt_bsux,allow_surrogate_escapes
1430*22dc650dSSadaf Ebrahimi    \x{dfff}\x{df01}\=no_utf_check
1431*22dc650dSSadaf Ebrahimi 0: \x{dfff}\x{df01}
1432*22dc650dSSadaf Ebrahimi
1433*22dc650dSSadaf Ebrahimi# This has different starting code units in 8-bit mode.
1434*22dc650dSSadaf Ebrahimi
1435*22dc650dSSadaf Ebrahimi/^[^ab]/IB,utf
1436*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
1437*22dc650dSSadaf Ebrahimi        Bra
1438*22dc650dSSadaf Ebrahimi        ^
1439*22dc650dSSadaf Ebrahimi        [\x00-`c-\xff] (neg)
1440*22dc650dSSadaf Ebrahimi        Ket
1441*22dc650dSSadaf Ebrahimi        End
1442*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
1443*22dc650dSSadaf EbrahimiCapture group count = 0
1444*22dc650dSSadaf EbrahimiCompile options: utf
1445*22dc650dSSadaf EbrahimiOverall options: anchored utf
1446*22dc650dSSadaf EbrahimiStarting code units: \x00 \x01 \x02 \x03 \x04 \x05 \x06 \x07 \x08 \x09 \x0a
1447*22dc650dSSadaf Ebrahimi  \x0b \x0c \x0d \x0e \x0f \x10 \x11 \x12 \x13 \x14 \x15 \x16 \x17 \x18 \x19
1448*22dc650dSSadaf Ebrahimi  \x1a \x1b \x1c \x1d \x1e \x1f \x20 ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4
1449*22dc650dSSadaf Ebrahimi  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
1450*22dc650dSSadaf Ebrahimi  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
1451*22dc650dSSadaf Ebrahimi  \x80 \x81 \x82 \x83 \x84 \x85 \x86 \x87 \x88 \x89 \x8a \x8b \x8c \x8d \x8e
1452*22dc650dSSadaf Ebrahimi  \x8f \x90 \x91 \x92 \x93 \x94 \x95 \x96 \x97 \x98 \x99 \x9a \x9b \x9c \x9d
1453*22dc650dSSadaf Ebrahimi  \x9e \x9f \xa0 \xa1 \xa2 \xa3 \xa4 \xa5 \xa6 \xa7 \xa8 \xa9 \xaa \xab \xac
1454*22dc650dSSadaf Ebrahimi  \xad \xae \xaf \xb0 \xb1 \xb2 \xb3 \xb4 \xb5 \xb6 \xb7 \xb8 \xb9 \xba \xbb
1455*22dc650dSSadaf Ebrahimi  \xbc \xbd \xbe \xbf \xc0 \xc1 \xc2 \xc3 \xc4 \xc5 \xc6 \xc7 \xc8 \xc9 \xca
1456*22dc650dSSadaf Ebrahimi  \xcb \xcc \xcd \xce \xcf \xd0 \xd1 \xd2 \xd3 \xd4 \xd5 \xd6 \xd7 \xd8 \xd9
1457*22dc650dSSadaf Ebrahimi  \xda \xdb \xdc \xdd \xde \xdf \xe0 \xe1 \xe2 \xe3 \xe4 \xe5 \xe6 \xe7 \xe8
1458*22dc650dSSadaf Ebrahimi  \xe9 \xea \xeb \xec \xed \xee \xef \xf0 \xf1 \xf2 \xf3 \xf4 \xf5 \xf6 \xf7
1459*22dc650dSSadaf Ebrahimi  \xf8 \xf9 \xfa \xfb \xfc \xfd \xfe \xff
1460*22dc650dSSadaf EbrahimiSubject length lower bound = 1
1461*22dc650dSSadaf Ebrahimi    c
1462*22dc650dSSadaf Ebrahimi 0: c
1463*22dc650dSSadaf Ebrahimi    \x{ff}
1464*22dc650dSSadaf Ebrahimi 0: \x{ff}
1465*22dc650dSSadaf Ebrahimi    \x{100}
1466*22dc650dSSadaf Ebrahimi 0: \x{100}
1467*22dc650dSSadaf Ebrahimi\= Expect no match
1468*22dc650dSSadaf Ebrahimi    aaa
1469*22dc650dSSadaf EbrahimiNo match
1470*22dc650dSSadaf Ebrahimi
1471*22dc650dSSadaf Ebrahimi# Offsets are different in 8-bit mode.
1472*22dc650dSSadaf Ebrahimi
1473*22dc650dSSadaf Ebrahimi/(?<=abc)(|def)/g,utf,replace=<$0>,substitute_callout
1474*22dc650dSSadaf Ebrahimi    123abcáyzabcdef789abcሴqr
1475*22dc650dSSadaf Ebrahimi 1(2) Old 6 6 "" New 6 8 "<>"
1476*22dc650dSSadaf Ebrahimi 2(2) Old 12 12 "" New 14 16 "<>"
1477*22dc650dSSadaf Ebrahimi 3(2) Old 12 15 "def" New 16 21 "<def>"
1478*22dc650dSSadaf Ebrahimi 4(2) Old 21 21 "" New 27 29 "<>"
1479*22dc650dSSadaf Ebrahimi 4: 123abc<>\x{e1}yzabc<><def>789abc<>\x{1234}qr
1480*22dc650dSSadaf Ebrahimi
1481*22dc650dSSadaf Ebrahimi# A few script run tests in non-UTF mode (but they need Unicode support)
1482*22dc650dSSadaf Ebrahimi
1483*22dc650dSSadaf Ebrahimi/^(*script_run:.{4})/
1484*22dc650dSSadaf Ebrahimi    \x{3041}\x{30a1}\x{3007}\x{3007}   Hiragana Katakana Han Han
1485*22dc650dSSadaf Ebrahimi 0: \x{3041}\x{30a1}\x{3007}\x{3007}
1486*22dc650dSSadaf Ebrahimi    \x{30a1}\x{3041}\x{3007}\x{3007}   Katakana Hiragana Han Han
1487*22dc650dSSadaf Ebrahimi 0: \x{30a1}\x{3041}\x{3007}\x{3007}
1488*22dc650dSSadaf Ebrahimi    \x{1100}\x{2e80}\x{2e80}\x{1101}   Hangul Han Han Hangul
1489*22dc650dSSadaf Ebrahimi 0: \x{1100}\x{2e80}\x{2e80}\x{1101}
1490*22dc650dSSadaf Ebrahimi
1491*22dc650dSSadaf Ebrahimi/^(*sr:.*)/utf,allow_surrogate_escapes
1492*22dc650dSSadaf Ebrahimi    \x{2e80}\x{3105}\x{2e80}\x{30a1}   Han Bopomofo Han Katakana
1493*22dc650dSSadaf Ebrahimi 0: \x{2e80}\x{3105}\x{2e80}
1494*22dc650dSSadaf Ebrahimi    \x{d800}\x{dfff}                   Surrogates (Unknown) \=no_utf_check
1495*22dc650dSSadaf Ebrahimi 0: \x{d800}
1496*22dc650dSSadaf Ebrahimi
1497*22dc650dSSadaf Ebrahimi/(?(n/utf
1498*22dc650dSSadaf EbrahimiFailed: error 142 at offset 4: syntax error in subpattern name (missing terminator?)
1499*22dc650dSSadaf Ebrahimi
1500*22dc650dSSadaf Ebrahimi/(?(á/utf
1501*22dc650dSSadaf EbrahimiFailed: error 142 at offset 4: syntax error in subpattern name (missing terminator?)
1502*22dc650dSSadaf Ebrahimi
1503*22dc650dSSadaf Ebrahimi# Invalid UTF-16/32 tests.
1504*22dc650dSSadaf Ebrahimi
1505*22dc650dSSadaf Ebrahimi/.../g,match_invalid_utf
1506*22dc650dSSadaf Ebrahimi    abcd\x{df00}wxzy\x{df00}pqrs
1507*22dc650dSSadaf Ebrahimi 0: abc
1508*22dc650dSSadaf Ebrahimi 0: wxz
1509*22dc650dSSadaf Ebrahimi 0: pqr
1510*22dc650dSSadaf Ebrahimi    abcd\x{80}wxzy\x{df00}pqrs
1511*22dc650dSSadaf Ebrahimi 0: abc
1512*22dc650dSSadaf Ebrahimi 0: d\x{80}w
1513*22dc650dSSadaf Ebrahimi 0: xzy
1514*22dc650dSSadaf Ebrahimi 0: pqr
1515*22dc650dSSadaf Ebrahimi
1516*22dc650dSSadaf Ebrahimi/abc/match_invalid_utf
1517*22dc650dSSadaf Ebrahimi    ab\x{df00}ab\=ph
1518*22dc650dSSadaf EbrahimiPartial match: ab
1519*22dc650dSSadaf Ebrahimi\= Expect no match
1520*22dc650dSSadaf Ebrahimi    ab\x{df00}cdef\=ph
1521*22dc650dSSadaf EbrahimiNo match
1522*22dc650dSSadaf Ebrahimi
1523*22dc650dSSadaf Ebrahimi/.a/match_invalid_utf
1524*22dc650dSSadaf Ebrahimi    ab\=ph
1525*22dc650dSSadaf EbrahimiPartial match: b
1526*22dc650dSSadaf Ebrahimi    ab\=ps
1527*22dc650dSSadaf EbrahimiPartial match: b
1528*22dc650dSSadaf Ebrahimi\= Expect no match
1529*22dc650dSSadaf Ebrahimi    b\x{df00}\=ph
1530*22dc650dSSadaf EbrahimiNo match
1531*22dc650dSSadaf Ebrahimi    b\x{df00}\=ps
1532*22dc650dSSadaf EbrahimiNo match
1533*22dc650dSSadaf Ebrahimi
1534*22dc650dSSadaf Ebrahimi/.a$/match_invalid_utf
1535*22dc650dSSadaf Ebrahimi    ab\=ph
1536*22dc650dSSadaf EbrahimiPartial match: b
1537*22dc650dSSadaf Ebrahimi    ab\=ps
1538*22dc650dSSadaf EbrahimiPartial match: b
1539*22dc650dSSadaf Ebrahimi\= Expect no match
1540*22dc650dSSadaf Ebrahimi    b\x{df00}\=ph
1541*22dc650dSSadaf EbrahimiNo match
1542*22dc650dSSadaf Ebrahimi    b\x{df00}\=ps
1543*22dc650dSSadaf EbrahimiNo match
1544*22dc650dSSadaf Ebrahimi
1545*22dc650dSSadaf Ebrahimi/ab$/match_invalid_utf
1546*22dc650dSSadaf Ebrahimi    ab\x{df00}cdeab
1547*22dc650dSSadaf Ebrahimi 0: ab
1548*22dc650dSSadaf Ebrahimi\= Expect no match
1549*22dc650dSSadaf Ebrahimi    ab\x{df00}cde
1550*22dc650dSSadaf EbrahimiNo match
1551*22dc650dSSadaf Ebrahimi
1552*22dc650dSSadaf Ebrahimi/.../g,match_invalid_utf
1553*22dc650dSSadaf Ebrahimi    abcd\x{80}wxzy\x{df00}pqrs
1554*22dc650dSSadaf Ebrahimi 0: abc
1555*22dc650dSSadaf Ebrahimi 0: d\x{80}w
1556*22dc650dSSadaf Ebrahimi 0: xzy
1557*22dc650dSSadaf Ebrahimi 0: pqr
1558*22dc650dSSadaf Ebrahimi
1559*22dc650dSSadaf Ebrahimi/(?<=x)../g,match_invalid_utf
1560*22dc650dSSadaf Ebrahimi    abcd\x{80}wxzy\x{df00}pqrs
1561*22dc650dSSadaf Ebrahimi 0: zy
1562*22dc650dSSadaf Ebrahimi    abcd\x{80}wxzy\x{df00}xpqrs
1563*22dc650dSSadaf Ebrahimi 0: zy
1564*22dc650dSSadaf Ebrahimi 0: pq
1565*22dc650dSSadaf Ebrahimi
1566*22dc650dSSadaf Ebrahimi/X$/match_invalid_utf
1567*22dc650dSSadaf Ebrahimi\= Expect no match
1568*22dc650dSSadaf Ebrahimi    X\x{df00}
1569*22dc650dSSadaf EbrahimiNo match
1570*22dc650dSSadaf Ebrahimi
1571*22dc650dSSadaf Ebrahimi/(?<=..)X/match_invalid_utf,aftertext
1572*22dc650dSSadaf Ebrahimi    AB\x{df00}AQXYZ
1573*22dc650dSSadaf Ebrahimi 0: X
1574*22dc650dSSadaf Ebrahimi 0+ YZ
1575*22dc650dSSadaf Ebrahimi    AB\x{df00}AQXYZ\=offset=5
1576*22dc650dSSadaf Ebrahimi 0: X
1577*22dc650dSSadaf Ebrahimi 0+ YZ
1578*22dc650dSSadaf Ebrahimi    AB\x{df00}\x{df00}AXYZXC\=offset=5
1579*22dc650dSSadaf Ebrahimi 0: X
1580*22dc650dSSadaf Ebrahimi 0+ C
1581*22dc650dSSadaf Ebrahimi\= Expect no match
1582*22dc650dSSadaf Ebrahimi    AB\x{df00}XYZ
1583*22dc650dSSadaf EbrahimiNo match
1584*22dc650dSSadaf Ebrahimi    AB\x{df00}XYZ\=offset=3
1585*22dc650dSSadaf EbrahimiNo match
1586*22dc650dSSadaf Ebrahimi    AB\x{df00}AXYZ
1587*22dc650dSSadaf EbrahimiNo match
1588*22dc650dSSadaf Ebrahimi    AB\x{df00}AXYZ\=offset=4
1589*22dc650dSSadaf EbrahimiNo match
1590*22dc650dSSadaf Ebrahimi    AB\x{df00}\x{df00}AXYZ\=offset=5
1591*22dc650dSSadaf EbrahimiNo match
1592*22dc650dSSadaf Ebrahimi
1593*22dc650dSSadaf Ebrahimi/.../match_invalid_utf
1594*22dc650dSSadaf Ebrahimi\= Expect no match
1595*22dc650dSSadaf Ebrahimi    A\x{d800}B
1596*22dc650dSSadaf EbrahimiNo match
1597*22dc650dSSadaf Ebrahimi    A\x{110000}B
1598*22dc650dSSadaf EbrahimiNo match
1599*22dc650dSSadaf Ebrahimi
1600*22dc650dSSadaf Ebrahimi/aa/utf,ucp,match_invalid_utf,global
1601*22dc650dSSadaf Ebrahimi    aa\x{d800}aa
1602*22dc650dSSadaf Ebrahimi 0: aa
1603*22dc650dSSadaf Ebrahimi 0: aa
1604*22dc650dSSadaf Ebrahimi
1605*22dc650dSSadaf Ebrahimi/aa/utf,ucp,match_invalid_utf,global
1606*22dc650dSSadaf Ebrahimi    \x{d800}aa
1607*22dc650dSSadaf Ebrahimi 0: aa
1608*22dc650dSSadaf Ebrahimi
1609*22dc650dSSadaf Ebrahimi/A\z/utf,match_invalid_utf
1610*22dc650dSSadaf Ebrahimi    A\x{df00}\n
1611*22dc650dSSadaf EbrahimiNo match
1612*22dc650dSSadaf Ebrahimi
1613*22dc650dSSadaf Ebrahimi# ----------------------------------------------------
1614*22dc650dSSadaf Ebrahimi
1615*22dc650dSSadaf Ebrahimi/(*UTF)(?=\x{123})/I
1616*22dc650dSSadaf EbrahimiCapture group count = 0
1617*22dc650dSSadaf EbrahimiMay match empty string
1618*22dc650dSSadaf EbrahimiCompile options: <none>
1619*22dc650dSSadaf EbrahimiOverall options: utf
1620*22dc650dSSadaf EbrahimiFirst code unit = \x{123}
1621*22dc650dSSadaf EbrahimiSubject length lower bound = 1
1622*22dc650dSSadaf Ebrahimi
1623*22dc650dSSadaf Ebrahimi/[\x{c1}\x{e1}]X[\x{145}\x{146}]/I,utf
1624*22dc650dSSadaf EbrahimiCapture group count = 0
1625*22dc650dSSadaf EbrahimiOptions: utf
1626*22dc650dSSadaf EbrahimiFirst code unit = \xc1 (caseless)
1627*22dc650dSSadaf EbrahimiLast code unit = \x{145} (caseless)
1628*22dc650dSSadaf EbrahimiSubject length lower bound = 3
1629*22dc650dSSadaf Ebrahimi
1630*22dc650dSSadaf Ebrahimi/[\xff\x{ffff}]/I,utf
1631*22dc650dSSadaf EbrahimiCapture group count = 0
1632*22dc650dSSadaf EbrahimiOptions: utf
1633*22dc650dSSadaf EbrahimiStarting code units: \xff
1634*22dc650dSSadaf EbrahimiSubject length lower bound = 1
1635*22dc650dSSadaf Ebrahimi
1636*22dc650dSSadaf Ebrahimi/[\xff\x{ff}]/I,utf
1637*22dc650dSSadaf EbrahimiCapture group count = 0
1638*22dc650dSSadaf EbrahimiOptions: utf
1639*22dc650dSSadaf EbrahimiStarting code units: \xff
1640*22dc650dSSadaf EbrahimiSubject length lower bound = 1
1641*22dc650dSSadaf Ebrahimi
1642*22dc650dSSadaf Ebrahimi/[\xff\x{ff}]/I
1643*22dc650dSSadaf EbrahimiCapture group count = 0
1644*22dc650dSSadaf EbrahimiStarting code units: \xff
1645*22dc650dSSadaf EbrahimiSubject length lower bound = 1
1646*22dc650dSSadaf Ebrahimi
1647*22dc650dSSadaf Ebrahimi/[Ss]/I
1648*22dc650dSSadaf EbrahimiCapture group count = 0
1649*22dc650dSSadaf EbrahimiFirst code unit = 'S' (caseless)
1650*22dc650dSSadaf EbrahimiSubject length lower bound = 1
1651*22dc650dSSadaf Ebrahimi
1652*22dc650dSSadaf Ebrahimi/[Ss]/I,utf
1653*22dc650dSSadaf EbrahimiCapture group count = 0
1654*22dc650dSSadaf EbrahimiOptions: utf
1655*22dc650dSSadaf EbrahimiStarting code units: S s
1656*22dc650dSSadaf EbrahimiSubject length lower bound = 1
1657*22dc650dSSadaf Ebrahimi
1658*22dc650dSSadaf Ebrahimi/(?:\x{ff}|\x{3000})/I,utf
1659*22dc650dSSadaf EbrahimiCapture group count = 0
1660*22dc650dSSadaf EbrahimiOptions: utf
1661*22dc650dSSadaf EbrahimiStarting code units: \xff
1662*22dc650dSSadaf EbrahimiSubject length lower bound = 1
1663*22dc650dSSadaf Ebrahimi
1664*22dc650dSSadaf Ebrahimi# ----------------------------------------------------
1665*22dc650dSSadaf Ebrahimi# UCP and casing tests
1666*22dc650dSSadaf Ebrahimi
1667*22dc650dSSadaf Ebrahimi/\x{120}/i,I
1668*22dc650dSSadaf EbrahimiCapture group count = 0
1669*22dc650dSSadaf EbrahimiOptions: caseless
1670*22dc650dSSadaf EbrahimiFirst code unit = \x{120}
1671*22dc650dSSadaf EbrahimiSubject length lower bound = 1
1672*22dc650dSSadaf Ebrahimi
1673*22dc650dSSadaf Ebrahimi/\x{c1}/i,I,ucp
1674*22dc650dSSadaf EbrahimiCapture group count = 0
1675*22dc650dSSadaf EbrahimiOptions: caseless ucp
1676*22dc650dSSadaf EbrahimiFirst code unit = \xc1 (caseless)
1677*22dc650dSSadaf EbrahimiSubject length lower bound = 1
1678*22dc650dSSadaf Ebrahimi
1679*22dc650dSSadaf Ebrahimi/[\x{120}\x{121}]/iB,ucp
1680*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
1681*22dc650dSSadaf Ebrahimi        Bra
1682*22dc650dSSadaf Ebrahimi     /i \x{120}
1683*22dc650dSSadaf Ebrahimi        Ket
1684*22dc650dSSadaf Ebrahimi        End
1685*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
1686*22dc650dSSadaf Ebrahimi
1687*22dc650dSSadaf Ebrahimi/[ab\x{120}]+/iB,ucp
1688*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
1689*22dc650dSSadaf Ebrahimi        Bra
1690*22dc650dSSadaf Ebrahimi        [ABab\x{120}-\x{121}]++
1691*22dc650dSSadaf Ebrahimi        Ket
1692*22dc650dSSadaf Ebrahimi        End
1693*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
1694*22dc650dSSadaf Ebrahimi    aABb\x{121}\x{120}
1695*22dc650dSSadaf Ebrahimi 0: aABb\x{121}\x{120}
1696*22dc650dSSadaf Ebrahimi
1697*22dc650dSSadaf Ebrahimi/\x{c1}/i,no_start_optimize
1698*22dc650dSSadaf Ebrahimi\= Expect no match
1699*22dc650dSSadaf Ebrahimi    \x{e1}
1700*22dc650dSSadaf EbrahimiNo match
1701*22dc650dSSadaf Ebrahimi
1702*22dc650dSSadaf Ebrahimi/\x{120}\x{c1}/i,ucp,no_start_optimize
1703*22dc650dSSadaf Ebrahimi    \x{121}\x{e1}
1704*22dc650dSSadaf Ebrahimi 0: \x{121}\xe1
1705*22dc650dSSadaf Ebrahimi
1706*22dc650dSSadaf Ebrahimi/\x{120}\x{c1}/i,ucp
1707*22dc650dSSadaf Ebrahimi    \x{121}\x{e1}
1708*22dc650dSSadaf Ebrahimi 0: \x{121}\xe1
1709*22dc650dSSadaf Ebrahimi
1710*22dc650dSSadaf Ebrahimi/[^\x{120}]/i,no_start_optimize
1711*22dc650dSSadaf Ebrahimi    \x{121}
1712*22dc650dSSadaf Ebrahimi 0: \x{121}
1713*22dc650dSSadaf Ebrahimi
1714*22dc650dSSadaf Ebrahimi/[^\x{120}]/i,ucp,no_start_optimize
1715*22dc650dSSadaf Ebrahimi\= Expect no match
1716*22dc650dSSadaf Ebrahimi    \x{121}
1717*22dc650dSSadaf EbrahimiNo match
1718*22dc650dSSadaf Ebrahimi
1719*22dc650dSSadaf Ebrahimi/[^\x{120}]/i
1720*22dc650dSSadaf Ebrahimi    \x{121}
1721*22dc650dSSadaf Ebrahimi 0: \x{121}
1722*22dc650dSSadaf Ebrahimi
1723*22dc650dSSadaf Ebrahimi/[^\x{120}]/i,ucp
1724*22dc650dSSadaf Ebrahimi\= Expect no match
1725*22dc650dSSadaf Ebrahimi    \x{121}
1726*22dc650dSSadaf EbrahimiNo match
1727*22dc650dSSadaf Ebrahimi
1728*22dc650dSSadaf Ebrahimi/\x{120}{2}/i,ucp
1729*22dc650dSSadaf Ebrahimi    \x{121}\x{121}
1730*22dc650dSSadaf Ebrahimi 0: \x{121}\x{121}
1731*22dc650dSSadaf Ebrahimi
1732*22dc650dSSadaf Ebrahimi/[^\x{120}]{2}/i,ucp
1733*22dc650dSSadaf Ebrahimi\= Expect no match
1734*22dc650dSSadaf Ebrahimi    \x{121}\x{121}
1735*22dc650dSSadaf EbrahimiNo match
1736*22dc650dSSadaf Ebrahimi
1737*22dc650dSSadaf Ebrahimi/\x{c1}+\x{e1}/iB,ucp
1738*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
1739*22dc650dSSadaf Ebrahimi        Bra
1740*22dc650dSSadaf Ebrahimi     /i \x{c1}+
1741*22dc650dSSadaf Ebrahimi     /i \x{e1}
1742*22dc650dSSadaf Ebrahimi        Ket
1743*22dc650dSSadaf Ebrahimi        End
1744*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
1745*22dc650dSSadaf Ebrahimi    \x{c1}\x{c1}\x{c1}
1746*22dc650dSSadaf Ebrahimi 0: \xc1\xc1\xc1
1747*22dc650dSSadaf Ebrahimi
1748*22dc650dSSadaf Ebrahimi/\x{c1}+\x{e1}/iIB,ucp
1749*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
1750*22dc650dSSadaf Ebrahimi        Bra
1751*22dc650dSSadaf Ebrahimi     /i \x{c1}+
1752*22dc650dSSadaf Ebrahimi     /i \x{e1}
1753*22dc650dSSadaf Ebrahimi        Ket
1754*22dc650dSSadaf Ebrahimi        End
1755*22dc650dSSadaf Ebrahimi------------------------------------------------------------------
1756*22dc650dSSadaf EbrahimiCapture group count = 0
1757*22dc650dSSadaf EbrahimiOptions: caseless ucp
1758*22dc650dSSadaf EbrahimiFirst code unit = \xc1 (caseless)
1759*22dc650dSSadaf EbrahimiLast code unit = \xe1 (caseless)
1760*22dc650dSSadaf EbrahimiSubject length lower bound = 2
1761*22dc650dSSadaf Ebrahimi    \x{c1}\x{c1}\x{c1}
1762*22dc650dSSadaf Ebrahimi 0: \xc1\xc1\xc1
1763*22dc650dSSadaf Ebrahimi    \x{e1}\x{e1}\x{e1}
1764*22dc650dSSadaf Ebrahimi 0: \xe1\xe1\xe1
1765*22dc650dSSadaf Ebrahimi
1766*22dc650dSSadaf Ebrahimi/a|\x{c1}/iI,ucp
1767*22dc650dSSadaf EbrahimiCapture group count = 0
1768*22dc650dSSadaf EbrahimiOptions: caseless ucp
1769*22dc650dSSadaf EbrahimiStarting code units: A a \xc1 \xe1
1770*22dc650dSSadaf EbrahimiSubject length lower bound = 1
1771*22dc650dSSadaf Ebrahimi    \x{e1}xxx
1772*22dc650dSSadaf Ebrahimi 0: \xe1
1773*22dc650dSSadaf Ebrahimi
1774*22dc650dSSadaf Ebrahimi/\x{c1}|\x{e1}/iI,ucp
1775*22dc650dSSadaf EbrahimiCapture group count = 0
1776*22dc650dSSadaf EbrahimiOptions: caseless ucp
1777*22dc650dSSadaf EbrahimiFirst code unit = \xc1 (caseless)
1778*22dc650dSSadaf EbrahimiSubject length lower bound = 1
1779*22dc650dSSadaf Ebrahimi
1780*22dc650dSSadaf Ebrahimi/X(\x{e1})Y/ucp,replace=>\U$1<,substitute_extended
1781*22dc650dSSadaf Ebrahimi    X\x{e1}Y
1782*22dc650dSSadaf Ebrahimi 1: >\xc1<
1783*22dc650dSSadaf Ebrahimi
1784*22dc650dSSadaf Ebrahimi/X(\x{121})Y/ucp,replace=>\U$1<,substitute_extended
1785*22dc650dSSadaf Ebrahimi    X\x{121}Y
1786*22dc650dSSadaf Ebrahimi 1: >\x{120}<
1787*22dc650dSSadaf Ebrahimi
1788*22dc650dSSadaf Ebrahimi/s/i,ucp
1789*22dc650dSSadaf Ebrahimi    \x{17f}
1790*22dc650dSSadaf Ebrahimi 0: \x{17f}
1791*22dc650dSSadaf Ebrahimi
1792*22dc650dSSadaf Ebrahimi/s/i,utf
1793*22dc650dSSadaf Ebrahimi    \x{17f}
1794*22dc650dSSadaf Ebrahimi 0: \x{17f}
1795*22dc650dSSadaf Ebrahimi
1796*22dc650dSSadaf Ebrahimi/[^s]/i,ucp
1797*22dc650dSSadaf Ebrahimi\= Expect no match
1798*22dc650dSSadaf Ebrahimi    \x{17f}
1799*22dc650dSSadaf EbrahimiNo match
1800*22dc650dSSadaf Ebrahimi
1801*22dc650dSSadaf Ebrahimi/[^s]/i,utf
1802*22dc650dSSadaf Ebrahimi\= Expect no match
1803*22dc650dSSadaf Ebrahimi    \x{17f}
1804*22dc650dSSadaf EbrahimiNo match
1805*22dc650dSSadaf Ebrahimi
1806*22dc650dSSadaf Ebrahimi# ----------------------------------------------------
1807*22dc650dSSadaf Ebrahimi
1808*22dc650dSSadaf Ebrahimi# Quantifier after a literal that has the value of META_ACCEPT (not UTF). This
1809*22dc650dSSadaf Ebrahimi# fails in 16-bit mode, but is OK for 32-bit.
1810*22dc650dSSadaf Ebrahimi
1811*22dc650dSSadaf Ebrahimi/\x{802a0000}*/
1812*22dc650dSSadaf Ebrahimi    \x{802a0000}\x{802a0000}
1813*22dc650dSSadaf Ebrahimi 0: \x{802a0000}\x{802a0000}
1814*22dc650dSSadaf Ebrahimi
1815*22dc650dSSadaf Ebrahimi# UTF matching without UTF, check invalid UTF characters
1816*22dc650dSSadaf Ebrahimi/\X++/
1817*22dc650dSSadaf Ebrahimi    a\x{110000}\x{ffffffff}
1818*22dc650dSSadaf Ebrahimi 0: a\x{110000}\x{ffffffff}
1819*22dc650dSSadaf Ebrahimi
1820*22dc650dSSadaf Ebrahimi# This used to loop in 32-bit mode; it will fail in 16-bit mode.
1821*22dc650dSSadaf Ebrahimi/[\x{ffffffff}]/caseless,ucp
1822*22dc650dSSadaf Ebrahimi    \x{ffffffff}xyz
1823*22dc650dSSadaf Ebrahimi 0: \x{ffffffff}
1824*22dc650dSSadaf Ebrahimi
1825*22dc650dSSadaf Ebrahimi# These are 32-bit tests for handing 0xffffffff when in UCP caselsss mode. They
1826*22dc650dSSadaf Ebrahimi# will give errors in 16-bit mode.
1827*22dc650dSSadaf Ebrahimi
1828*22dc650dSSadaf Ebrahimi/k*\x{ffffffff}/caseless,ucp
1829*22dc650dSSadaf Ebrahimi    \x{ffffffff}
1830*22dc650dSSadaf Ebrahimi 0: \x{ffffffff}
1831*22dc650dSSadaf Ebrahimi
1832*22dc650dSSadaf Ebrahimi/k+\x{ffffffff}/caseless,ucp,no_start_optimize
1833*22dc650dSSadaf Ebrahimi    K\x{ffffffff}
1834*22dc650dSSadaf Ebrahimi 0: K\x{ffffffff}
1835*22dc650dSSadaf Ebrahimi\= Expect no match
1836*22dc650dSSadaf Ebrahimi    \x{ffffffff}\x{ffffffff}
1837*22dc650dSSadaf EbrahimiNo match
1838*22dc650dSSadaf Ebrahimi
1839*22dc650dSSadaf Ebrahimi/k{2}\x{ffffffff}/caseless,ucp,no_start_optimize
1840*22dc650dSSadaf Ebrahimi\= Expect no match
1841*22dc650dSSadaf Ebrahimi    \x{ffffffff}\x{ffffffff}\x{ffffffff}
1842*22dc650dSSadaf EbrahimiNo match
1843*22dc650dSSadaf Ebrahimi
1844*22dc650dSSadaf Ebrahimi/k\x{ffffffff}/caseless,ucp,no_start_optimize
1845*22dc650dSSadaf Ebrahimi    K\x{ffffffff}
1846*22dc650dSSadaf Ebrahimi 0: K\x{ffffffff}
1847*22dc650dSSadaf Ebrahimi\= Expect no match
1848*22dc650dSSadaf Ebrahimi    \x{ffffffff}\x{ffffffff}\x{ffffffff}
1849*22dc650dSSadaf EbrahimiNo match
1850*22dc650dSSadaf Ebrahimi
1851*22dc650dSSadaf Ebrahimi/k{2,}?Z/caseless,ucp,no_start_optimize,no_auto_possess
1852*22dc650dSSadaf Ebrahimi\= Expect no match
1853*22dc650dSSadaf Ebrahimi    Kk\x{ffffffff}\x{ffffffff}\x{ffffffff}Z
1854*22dc650dSSadaf EbrahimiNo match
1855*22dc650dSSadaf Ebrahimi
1856*22dc650dSSadaf Ebrahimi# ---------------------------------------------------------
1857*22dc650dSSadaf Ebrahimi
1858*22dc650dSSadaf Ebrahimi# End of testinput12
1859