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