• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1/-- This set of tests if for UTF-8 support, excluding Unicode properties. It is
2    compatible with all versions of Perl 5. --/
3
4/a.b/8
5    acb
6 0: acb
7    a\x7fb
8 0: a\x{7f}b
9    a\x{100}b
10 0: a\x{100}b
11    *** Failers
12No match
13    a\nb
14No match
15
16/a(.{3})b/8
17    a\x{4000}xyb
18 0: a\x{4000}xyb
19 1: \x{4000}xy
20    a\x{4000}\x7fyb
21 0: a\x{4000}\x{7f}yb
22 1: \x{4000}\x{7f}y
23    a\x{4000}\x{100}yb
24 0: a\x{4000}\x{100}yb
25 1: \x{4000}\x{100}y
26    *** Failers
27No match
28    a\x{4000}b
29No match
30    ac\ncb
31No match
32
33/a(.*?)(.)/
34    a\xc0\x88b
35 0: a\xc0
36 1:
37 2: \xc0
38
39/a(.*?)(.)/8
40    a\x{100}b
41 0: a\x{100}
42 1:
43 2: \x{100}
44
45/a(.*)(.)/
46    a\xc0\x88b
47 0: a\xc0\x88b
48 1: \xc0\x88
49 2: b
50
51/a(.*)(.)/8
52    a\x{100}b
53 0: a\x{100}b
54 1: \x{100}
55 2: b
56
57/a(.)(.)/
58    a\xc0\x92bcd
59 0: a\xc0\x92
60 1: \xc0
61 2: \x92
62
63/a(.)(.)/8
64    a\x{240}bcd
65 0: a\x{240}b
66 1: \x{240}
67 2: b
68
69/a(.?)(.)/
70    a\xc0\x92bcd
71 0: a\xc0\x92
72 1: \xc0
73 2: \x92
74
75/a(.?)(.)/8
76    a\x{240}bcd
77 0: a\x{240}b
78 1: \x{240}
79 2: b
80
81/a(.??)(.)/
82    a\xc0\x92bcd
83 0: a\xc0
84 1:
85 2: \xc0
86
87/a(.??)(.)/8
88    a\x{240}bcd
89 0: a\x{240}
90 1:
91 2: \x{240}
92
93/a(.{3})b/8
94    a\x{1234}xyb
95 0: a\x{1234}xyb
96 1: \x{1234}xy
97    a\x{1234}\x{4321}yb
98 0: a\x{1234}\x{4321}yb
99 1: \x{1234}\x{4321}y
100    a\x{1234}\x{4321}\x{3412}b
101 0: a\x{1234}\x{4321}\x{3412}b
102 1: \x{1234}\x{4321}\x{3412}
103    *** Failers
104No match
105    a\x{1234}b
106No match
107    ac\ncb
108No match
109
110/a(.{3,})b/8
111    a\x{1234}xyb
112 0: a\x{1234}xyb
113 1: \x{1234}xy
114    a\x{1234}\x{4321}yb
115 0: a\x{1234}\x{4321}yb
116 1: \x{1234}\x{4321}y
117    a\x{1234}\x{4321}\x{3412}b
118 0: a\x{1234}\x{4321}\x{3412}b
119 1: \x{1234}\x{4321}\x{3412}
120    axxxxbcdefghijb
121 0: axxxxbcdefghijb
122 1: xxxxbcdefghij
123    a\x{1234}\x{4321}\x{3412}\x{3421}b
124 0: a\x{1234}\x{4321}\x{3412}\x{3421}b
125 1: \x{1234}\x{4321}\x{3412}\x{3421}
126    *** Failers
127No match
128    a\x{1234}b
129No match
130
131/a(.{3,}?)b/8
132    a\x{1234}xyb
133 0: a\x{1234}xyb
134 1: \x{1234}xy
135    a\x{1234}\x{4321}yb
136 0: a\x{1234}\x{4321}yb
137 1: \x{1234}\x{4321}y
138    a\x{1234}\x{4321}\x{3412}b
139 0: a\x{1234}\x{4321}\x{3412}b
140 1: \x{1234}\x{4321}\x{3412}
141    axxxxbcdefghijb
142 0: axxxxb
143 1: xxxx
144    a\x{1234}\x{4321}\x{3412}\x{3421}b
145 0: a\x{1234}\x{4321}\x{3412}\x{3421}b
146 1: \x{1234}\x{4321}\x{3412}\x{3421}
147    *** Failers
148No match
149    a\x{1234}b
150No match
151
152/a(.{3,5})b/8
153    a\x{1234}xyb
154 0: a\x{1234}xyb
155 1: \x{1234}xy
156    a\x{1234}\x{4321}yb
157 0: a\x{1234}\x{4321}yb
158 1: \x{1234}\x{4321}y
159    a\x{1234}\x{4321}\x{3412}b
160 0: a\x{1234}\x{4321}\x{3412}b
161 1: \x{1234}\x{4321}\x{3412}
162    axxxxbcdefghijb
163 0: axxxxb
164 1: xxxx
165    a\x{1234}\x{4321}\x{3412}\x{3421}b
166 0: a\x{1234}\x{4321}\x{3412}\x{3421}b
167 1: \x{1234}\x{4321}\x{3412}\x{3421}
168    axbxxbcdefghijb
169 0: axbxxb
170 1: xbxx
171    axxxxxbcdefghijb
172 0: axxxxxb
173 1: xxxxx
174    *** Failers
175No match
176    a\x{1234}b
177No match
178    axxxxxxbcdefghijb
179No match
180
181/a(.{3,5}?)b/8
182    a\x{1234}xyb
183 0: a\x{1234}xyb
184 1: \x{1234}xy
185    a\x{1234}\x{4321}yb
186 0: a\x{1234}\x{4321}yb
187 1: \x{1234}\x{4321}y
188    a\x{1234}\x{4321}\x{3412}b
189 0: a\x{1234}\x{4321}\x{3412}b
190 1: \x{1234}\x{4321}\x{3412}
191    axxxxbcdefghijb
192 0: axxxxb
193 1: xxxx
194    a\x{1234}\x{4321}\x{3412}\x{3421}b
195 0: a\x{1234}\x{4321}\x{3412}\x{3421}b
196 1: \x{1234}\x{4321}\x{3412}\x{3421}
197    axbxxbcdefghijb
198 0: axbxxb
199 1: xbxx
200    axxxxxbcdefghijb
201 0: axxxxxb
202 1: xxxxx
203    *** Failers
204No match
205    a\x{1234}b
206No match
207    axxxxxxbcdefghijb
208No match
209
210/^[a\x{c0}]/8
211    *** Failers
212No match
213    \x{100}
214No match
215
216/(?<=aXb)cd/8
217    aXbcd
218 0: cd
219
220/(?<=a\x{100}b)cd/8
221    a\x{100}bcd
222 0: cd
223
224/(?<=a\x{100000}b)cd/8
225    a\x{100000}bcd
226 0: cd
227
228/(?:\x{100}){3}b/8
229    \x{100}\x{100}\x{100}b
230 0: \x{100}\x{100}\x{100}b
231    *** Failers
232No match
233    \x{100}\x{100}b
234No match
235
236/\x{ab}/8
237    \x{ab}
238 0: \x{ab}
239    \xc2\xab
240 0: \x{ab}
241    *** Failers
242No match
243    \x00{ab}
244No match
245
246/(?<=(.))X/8
247    WXYZ
248 0: X
249 1: W
250    \x{256}XYZ
251 0: X
252 1: \x{256}
253    *** Failers
254No match
255    XYZ
256No match
257
258/X(\C{3})/8
259    X\x{1234}
260 0: X\x{1234}
261 1: \x{1234}
262
263/X(\C{4})/8
264    X\x{1234}YZ
265 0: X\x{1234}Y
266 1: \x{1234}Y
267
268/X\C*/8
269    XYZabcdce
270 0: XYZabcdce
271
272/X\C*?/8
273    XYZabcde
274 0: X
275
276/X\C{3,5}/8
277    Xabcdefg
278 0: Xabcde
279    X\x{1234}
280 0: X\x{1234}
281    X\x{1234}YZ
282 0: X\x{1234}YZ
283    X\x{1234}\x{512}
284 0: X\x{1234}\x{512}
285    X\x{1234}\x{512}YZ
286 0: X\x{1234}\x{512}
287
288/X\C{3,5}?/8
289    Xabcdefg
290 0: Xabc
291    X\x{1234}
292 0: X\x{1234}
293    X\x{1234}YZ
294 0: X\x{1234}
295    X\x{1234}\x{512}
296 0: X\x{1234}
297
298/[^a]+/8g
299    bcd
300 0: bcd
301    \x{100}aY\x{256}Z
302 0: \x{100}
303 0: Y\x{256}Z
304
305/^[^a]{2}/8
306    \x{100}bc
307 0: \x{100}b
308
309/^[^a]{2,}/8
310    \x{100}bcAa
311 0: \x{100}bcA
312
313/^[^a]{2,}?/8
314    \x{100}bca
315 0: \x{100}b
316
317/[^a]+/8ig
318    bcd
319 0: bcd
320    \x{100}aY\x{256}Z
321 0: \x{100}
322 0: Y\x{256}Z
323
324/^[^a]{2}/8i
325    \x{100}bc
326 0: \x{100}b
327
328/^[^a]{2,}/8i
329    \x{100}bcAa
330 0: \x{100}bc
331
332/^[^a]{2,}?/8i
333    \x{100}bca
334 0: \x{100}b
335
336/\x{100}{0,0}/8
337    abcd
338 0:
339
340/\x{100}?/8
341    abcd
342 0:
343    \x{100}\x{100}
344 0: \x{100}
345
346/\x{100}{0,3}/8
347    \x{100}\x{100}
348 0: \x{100}\x{100}
349    \x{100}\x{100}\x{100}\x{100}
350 0: \x{100}\x{100}\x{100}
351
352/\x{100}*/8
353    abce
354 0:
355    \x{100}\x{100}\x{100}\x{100}
356 0: \x{100}\x{100}\x{100}\x{100}
357
358/\x{100}{1,1}/8
359    abcd\x{100}\x{100}\x{100}\x{100}
360 0: \x{100}
361
362/\x{100}{1,3}/8
363    abcd\x{100}\x{100}\x{100}\x{100}
364 0: \x{100}\x{100}\x{100}
365
366/\x{100}+/8
367    abcd\x{100}\x{100}\x{100}\x{100}
368 0: \x{100}\x{100}\x{100}\x{100}
369
370/\x{100}{3}/8
371    abcd\x{100}\x{100}\x{100}XX
372 0: \x{100}\x{100}\x{100}
373
374/\x{100}{3,5}/8
375    abcd\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}XX
376 0: \x{100}\x{100}\x{100}\x{100}\x{100}
377
378/\x{100}{3,}/8
379    abcd\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}XX
380 0: \x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}
381
382/(?<=a\x{100}{2}b)X/8+
383    Xyyya\x{100}\x{100}bXzzz
384 0: X
385 0+ zzz
386
387/\D*/8
388  aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
389 0: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
390
391/\D*/8
392  \x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}
393 0: \x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}
394
395/\D/8
396    1X2
397 0: X
398    1\x{100}2
399 0: \x{100}
400
401/>\S/8
402    > >X Y
403 0: >X
404    > >\x{100} Y
405 0: >\x{100}
406
407/\d/8
408    \x{100}3
409 0: 3
410
411/\s/8
412    \x{100} X
413 0:
414
415/\D+/8
416    12abcd34
417 0: abcd
418    *** Failers
419 0: *** Failers
420    1234
421No match
422
423/\D{2,3}/8
424    12abcd34
425 0: abc
426    12ab34
427 0: ab
428    *** Failers
429 0: ***
430    1234
431No match
432    12a34
433No match
434
435/\D{2,3}?/8
436    12abcd34
437 0: ab
438    12ab34
439 0: ab
440    *** Failers
441 0: **
442    1234
443No match
444    12a34
445No match
446
447/\d+/8
448    12abcd34
449 0: 12
450    *** Failers
451No match
452
453/\d{2,3}/8
454    12abcd34
455 0: 12
456    1234abcd
457 0: 123
458    *** Failers
459No match
460    1.4
461No match
462
463/\d{2,3}?/8
464    12abcd34
465 0: 12
466    1234abcd
467 0: 12
468    *** Failers
469No match
470    1.4
471No match
472
473/\S+/8
474    12abcd34
475 0: 12abcd34
476    *** Failers
477 0: ***
478    \    \
479No match
480
481/\S{2,3}/8
482    12abcd34
483 0: 12a
484    1234abcd
485 0: 123
486    *** Failers
487 0: ***
488    \     \
489No match
490
491/\S{2,3}?/8
492    12abcd34
493 0: 12
494    1234abcd
495 0: 12
496    *** Failers
497 0: **
498    \     \
499No match
500
501/>\s+</8+
502    12>      <34
503 0: >      <
504 0+ 34
505    *** Failers
506No match
507
508/>\s{2,3}</8+
509    ab>  <cd
510 0: >  <
511 0+ cd
512    ab>   <ce
513 0: >   <
514 0+ ce
515    *** Failers
516No match
517    ab>    <cd
518No match
519
520/>\s{2,3}?</8+
521    ab>  <cd
522 0: >  <
523 0+ cd
524    ab>   <ce
525 0: >   <
526 0+ ce
527    *** Failers
528No match
529    ab>    <cd
530No match
531
532/\w+/8
533    12      34
534 0: 12
535    *** Failers
536 0: Failers
537    +++=*!
538No match
539
540/\w{2,3}/8
541    ab  cd
542 0: ab
543    abcd ce
544 0: abc
545    *** Failers
546 0: Fai
547    a.b.c
548No match
549
550/\w{2,3}?/8
551    ab  cd
552 0: ab
553    abcd ce
554 0: ab
555    *** Failers
556 0: Fa
557    a.b.c
558No match
559
560/\W+/8
561    12====34
562 0: ====
563    *** Failers
564 0: ***
565    abcd
566No match
567
568/\W{2,3}/8
569    ab====cd
570 0: ===
571    ab==cd
572 0: ==
573    *** Failers
574 0: ***
575    a.b.c
576No match
577
578/\W{2,3}?/8
579    ab====cd
580 0: ==
581    ab==cd
582 0: ==
583    *** Failers
584 0: **
585    a.b.c
586No match
587
588/[\x{100}]/8
589    \x{100}
590 0: \x{100}
591    Z\x{100}
592 0: \x{100}
593    \x{100}Z
594 0: \x{100}
595    *** Failers
596No match
597
598/[Z\x{100}]/8
599    Z\x{100}
600 0: Z
601    \x{100}
602 0: \x{100}
603    \x{100}Z
604 0: \x{100}
605    *** Failers
606No match
607
608/[\x{100}\x{200}]/8
609   ab\x{100}cd
610 0: \x{100}
611   ab\x{200}cd
612 0: \x{200}
613   *** Failers
614No match
615
616/[\x{100}-\x{200}]/8
617   ab\x{100}cd
618 0: \x{100}
619   ab\x{200}cd
620 0: \x{200}
621   ab\x{111}cd
622 0: \x{111}
623   *** Failers
624No match
625
626/[z-\x{200}]/8
627   ab\x{100}cd
628 0: \x{100}
629   ab\x{200}cd
630 0: \x{200}
631   ab\x{111}cd
632 0: \x{111}
633   abzcd
634 0: z
635   ab|cd
636 0: |
637   *** Failers
638No match
639
640/[Q\x{100}\x{200}]/8
641   ab\x{100}cd
642 0: \x{100}
643   ab\x{200}cd
644 0: \x{200}
645   Q?
646 0: Q
647   *** Failers
648No match
649
650/[Q\x{100}-\x{200}]/8
651   ab\x{100}cd
652 0: \x{100}
653   ab\x{200}cd
654 0: \x{200}
655   ab\x{111}cd
656 0: \x{111}
657   Q?
658 0: Q
659   *** Failers
660No match
661
662/[Qz-\x{200}]/8
663   ab\x{100}cd
664 0: \x{100}
665   ab\x{200}cd
666 0: \x{200}
667   ab\x{111}cd
668 0: \x{111}
669   abzcd
670 0: z
671   ab|cd
672 0: |
673   Q?
674 0: Q
675   *** Failers
676No match
677
678/[\x{100}\x{200}]{1,3}/8
679   ab\x{100}cd
680 0: \x{100}
681   ab\x{200}cd
682 0: \x{200}
683   ab\x{200}\x{100}\x{200}\x{100}cd
684 0: \x{200}\x{100}\x{200}
685   *** Failers
686No match
687
688/[\x{100}\x{200}]{1,3}?/8
689   ab\x{100}cd
690 0: \x{100}
691   ab\x{200}cd
692 0: \x{200}
693   ab\x{200}\x{100}\x{200}\x{100}cd
694 0: \x{200}
695   *** Failers
696No match
697
698/[Q\x{100}\x{200}]{1,3}/8
699   ab\x{100}cd
700 0: \x{100}
701   ab\x{200}cd
702 0: \x{200}
703   ab\x{200}\x{100}\x{200}\x{100}cd
704 0: \x{200}\x{100}\x{200}
705   *** Failers
706No match
707
708/[Q\x{100}\x{200}]{1,3}?/8
709   ab\x{100}cd
710 0: \x{100}
711   ab\x{200}cd
712 0: \x{200}
713   ab\x{200}\x{100}\x{200}\x{100}cd
714 0: \x{200}
715   *** Failers
716No match
717
718/(?<=[\x{100}\x{200}])X/8
719    abc\x{200}X
720 0: X
721    abc\x{100}X
722 0: X
723    *** Failers
724No match
725    X
726No match
727
728/(?<=[Q\x{100}\x{200}])X/8
729    abc\x{200}X
730 0: X
731    abc\x{100}X
732 0: X
733    abQX
734 0: X
735    *** Failers
736No match
737    X
738No match
739
740/(?<=[\x{100}\x{200}]{3})X/8
741    abc\x{100}\x{200}\x{100}X
742 0: X
743    *** Failers
744No match
745    abc\x{200}X
746No match
747    X
748No match
749
750/[^\x{100}\x{200}]X/8
751    AX
752 0: AX
753    \x{150}X
754 0: \x{150}X
755    \x{500}X
756 0: \x{500}X
757    *** Failers
758No match
759    \x{100}X
760No match
761    \x{200}X
762No match
763
764/[^Q\x{100}\x{200}]X/8
765    AX
766 0: AX
767    \x{150}X
768 0: \x{150}X
769    \x{500}X
770 0: \x{500}X
771    *** Failers
772No match
773    \x{100}X
774No match
775    \x{200}X
776No match
777    QX
778No match
779
780/[^\x{100}-\x{200}]X/8
781    AX
782 0: AX
783    \x{500}X
784 0: \x{500}X
785    *** Failers
786No match
787    \x{100}X
788No match
789    \x{150}X
790No match
791    \x{200}X
792No match
793
794/a\Cb/
795    aXb
796 0: aXb
797    a\nb
798 0: a\x0ab
799
800/a\Cb/8
801    aXb
802 0: aXb
803    a\nb
804 0: a\x{0a}b
805
806/a\C\Cb/8
807    a\x{100}b
808 0: a\x{100}b
809
810/[z-\x{100}]/8i
811    z
812 0: z
813    Z
814 0: Z
815    \x{100}
816 0: \x{100}
817    *** Failers
818No match
819    \x{102}
820No match
821    y
822No match
823
824/[\xFF]/
825    >\xff<
826 0: \xff
827
828/[\xff]/8
829    >\x{ff}<
830 0: \x{ff}
831
832/[^\xFF]/
833    XYZ
834 0: X
835
836/[^\xff]/8
837    XYZ
838 0: X
839    \x{123}
840 0: \x{123}
841
842/^[ac]*b/8
843  xb
844No match
845
846/^[ac\x{100}]*b/8
847  xb
848No match
849
850/^[^x]*b/8i
851  xb
852No match
853
854/^[^x]*b/8
855  xb
856No match
857
858/^\d*b/8
859  xb
860No match
861
862/(|a)/g8
863    catac
864 0:
865 1:
866 0:
867 1:
868 0: a
869 1: a
870 0:
871 1:
872 0:
873 1:
874 0: a
875 1: a
876 0:
877 1:
878 0:
879 1:
880    a\x{256}a
881 0:
882 1:
883 0: a
884 1: a
885 0:
886 1:
887 0:
888 1:
889 0: a
890 1: a
891 0:
892 1:
893
894/^\x{85}$/8i
895    \x{85}
896 0: \x{85}
897
898/^ሴ/8
899900 0: \x{1234}
901
902/^\ሴ/8
903904 0: \x{1234}
905
906"(?s)(.{1,5})"8
907    abcdefg
908 0: abcde
909 1: abcde
910    ab
911 0: ab
912 1: ab
913
914/a*\x{100}*\w/8
915    a
916 0: a
917
918/\S\S/8g
919    A\x{a3}BC
920 0: A\x{a3}
921 0: BC
922
923/\S{2}/8g
924    A\x{a3}BC
925 0: A\x{a3}
926 0: BC
927
928/\W\W/8g
929    +\x{a3}==
930 0: +\x{a3}
931 0: ==
932
933/\W{2}/8g
934    +\x{a3}==
935 0: +\x{a3}
936 0: ==
937
938/\S/8g
939    \x{442}\x{435}\x{441}\x{442}
940 0: \x{442}
941 0: \x{435}
942 0: \x{441}
943 0: \x{442}
944
945/[\S]/8g
946    \x{442}\x{435}\x{441}\x{442}
947 0: \x{442}
948 0: \x{435}
949 0: \x{441}
950 0: \x{442}
951
952/\D/8g
953    \x{442}\x{435}\x{441}\x{442}
954 0: \x{442}
955 0: \x{435}
956 0: \x{441}
957 0: \x{442}
958
959/[\D]/8g
960    \x{442}\x{435}\x{441}\x{442}
961 0: \x{442}
962 0: \x{435}
963 0: \x{441}
964 0: \x{442}
965
966/\W/8g
967    \x{2442}\x{2435}\x{2441}\x{2442}
968 0: \x{2442}
969 0: \x{2435}
970 0: \x{2441}
971 0: \x{2442}
972
973/[\W]/8g
974    \x{2442}\x{2435}\x{2441}\x{2442}
975 0: \x{2442}
976 0: \x{2435}
977 0: \x{2441}
978 0: \x{2442}
979
980/[\S\s]*/8
981    abc\n\r\x{442}\x{435}\x{441}\x{442}xyz
982 0: abc\x{0a}\x{0d}\x{442}\x{435}\x{441}\x{442}xyz
983
984/[\x{41f}\S]/8g
985    \x{442}\x{435}\x{441}\x{442}
986 0: \x{442}
987 0: \x{435}
988 0: \x{441}
989 0: \x{442}
990
991/.[^\S]./8g
992    abc def\x{442}\x{443}xyz\npqr
993 0: c d
994 0: z\x{0a}p
995
996/.[^\S\n]./8g
997    abc def\x{442}\x{443}xyz\npqr
998 0: c d
999
1000/[[:^alnum:]]/8g
1001    +\x{2442}
1002 0: +
1003 0: \x{2442}
1004
1005/[[:^alpha:]]/8g
1006    +\x{2442}
1007 0: +
1008 0: \x{2442}
1009
1010/[[:^ascii:]]/8g
1011    A\x{442}
1012 0: \x{442}
1013
1014/[[:^blank:]]/8g
1015    A\x{442}
1016 0: A
1017 0: \x{442}
1018
1019/[[:^cntrl:]]/8g
1020    A\x{442}
1021 0: A
1022 0: \x{442}
1023
1024/[[:^digit:]]/8g
1025    A\x{442}
1026 0: A
1027 0: \x{442}
1028
1029/[[:^graph:]]/8g
1030    \x19\x{e01ff}
1031 0: \x{19}
1032 0: \x{e01ff}
1033
1034/[[:^lower:]]/8g
1035    A\x{422}
1036 0: A
1037 0: \x{422}
1038
1039/[[:^print:]]/8g
1040    \x{19}\x{e01ff}
1041 0: \x{19}
1042 0: \x{e01ff}
1043
1044/[[:^punct:]]/8g
1045    A\x{442}
1046 0: A
1047 0: \x{442}
1048
1049/[[:^space:]]/8g
1050    A\x{442}
1051 0: A
1052 0: \x{442}
1053
1054/[[:^upper:]]/8g
1055    a\x{442}
1056 0: a
1057 0: \x{442}
1058
1059/[[:^word:]]/8g
1060    +\x{2442}
1061 0: +
1062 0: \x{2442}
1063
1064/[[:^xdigit:]]/8g
1065    M\x{442}
1066 0: M
1067 0: \x{442}
1068
1069/[^ABCDEFGHIJKLMNOPQRSTUVWXYZÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞĀĂĄĆĈĊČĎĐĒĔĖĘĚĜĞĠĢĤĦĨĪĬĮİIJĴĶĹĻĽĿŁŃŅŇŊŌŎŐŒŔŖŘŚŜŞŠŢŤŦŨŪŬŮŰŲŴŶŸŹŻŽƁƂƄƆƇƉƊƋƎƏƐƑƓƔƖƗƘƜƝƟƠƢƤƦƧƩƬƮƯƱƲƳƵƷƸƼDŽLJNJǍǏǑǓǕǗǙǛǞǠǢǤǦǨǪǬǮDZǴǶǷǸǺǼǾȀȂȄȆȈȊȌȎȐȒȔȖȘȚȜȞȠȢȤȦȨȪȬȮȰȲȺȻȽȾɁΆΈΉΊΌΎΏΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡΣΤΥΦΧΨΩΪΫϒϓϔϘϚϜϞϠϢϤϦϨϪϬϮϴϷϹϺϽϾϿЀЁЂЃЄЅІЇЈЉЊЋЌЍЎЏАБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯѠѢѤѦѨѪѬѮѰѲѴѶѸѺѼѾҀҊҌҎҐҒҔҖҘҚҜҞҠҢҤҦҨҪҬҮҰҲҴҶҸҺҼҾӀӁӃӅӇӉӋӍӐӒӔӖӘӚӜӞӠӢӤӦӨӪӬӮӰӲӴӶӸԀԂԄԆԈԊԌԎԱԲԳԴԵԶԷԸԹԺԻԼԽԾԿՀՁՂՃՄՅՆՇՈՉՊՋՌՍՎՏՐՑՒՓՔՕՖႠႡႢႣႤႥႦႧႨႩႪႫႬႭႮႯႰႱႲႳႴႵႶႷႸႹႺႻႼႽႾႿჀჁჂჃჄჅḀḂḄḆḈḊḌḎḐḒḔḖḘḚḜḞḠḢḤḦḨḪḬḮḰḲḴḶḸḺḼḾṀṂṄṆṈṊṌṎṐṒṔṖṘṚṜṞṠṢṤṦṨṪṬṮṰṲṴṶṸṺṼṾẀẂẄẆẈẊẌẎẐẒẔẠẢẤẦẨẪẬẮẰẲẴẶẸẺẼẾỀỂỄỆỈỊỌỎỐỒỔỖỘỚỜỞỠỢỤỦỨỪỬỮỰỲỴỶỸἈἉἊἋἌἍἎἏἘἙἚἛἜἝἨἩἪἫἬἭἮἯἸἹἺἻἼἽἾἿὈὉὊὋὌὍὙὛὝὟὨὩὪὫὬὭὮὯᾸᾹᾺΆῈΈῊΉῘῙῚΊῨῩῪΎῬῸΌῺΏabcdefghijklmnopqrstuvwxyzªµºßàáâãäåæçèéêëìíîïðñòóôõöøùúûüýþÿāăąćĉċčďđēĕėęěĝğġģĥħĩīĭįıijĵķĸĺļľŀłńņňʼnŋōŏőœŕŗřśŝşšţťŧũūŭůűųŵŷźżžſƀƃƅƈƌƍƒƕƙƚƛƞơƣƥƨƪƫƭưƴƶƹƺƽƾƿdžljnjǎǐǒǔǖǘǚǜǝǟǡǣǥǧǩǫǭǯǰdzǵǹǻǽǿȁȃȅȇȉȋȍȏȑȓȕȗșțȝȟȡȣȥȧȩȫȭȯȱȳȴȵȶȷȸȹȼȿɀɐɑɒɓɔɕɖɗɘəɚɛɜɝɞɟɠɡɢɣɤɥɦɧɨɩɪɫɬɭɮɯɰɱɲɳɴɵɶɷɸɹɺɻɼɽɾɿʀʁʂʃʄʅʆʇʈʉʊʋʌʍʎʏʐʑʒʓʔʕʖʗʘʙʚʛʜʝʞʟʠʡʢʣʤʥʦʧʨʩʪʫʬʭʮʯΐάέήίΰαβγδεζηθικλμνξοπρςστυφχψωϊϋόύώϐϑϕϖϗϙϛϝϟϡϣϥϧϩϫϭϯϰϱϲϳϵϸϻϼабвгдежзийклмнопрстуфхцчшщъыьэюяѐёђѓєѕіїјљњћќѝўџѡѣѥѧѩѫѭѯѱѳѵѷѹѻѽѿҁҋҍҏґғҕҗҙқҝҟҡңҥҧҩҫҭүұҳҵҷҹһҽҿӂӄӆӈӊӌӎӑӓӕӗәӛӝӟӡӣӥӧөӫӭӯӱӳӵӷӹԁԃԅԇԉԋԍԏաբգդեզէըթժիլխծկհձղճմյնշոչպջռսվտրցւփքօֆևᴀᴁᴂᴃᴄᴅᴆᴇᴈᴉᴊᴋᴌᴍᴎᴏᴐᴑᴒᴓᴔᴕᴖᴗᴘᴙᴚᴛᴜᴝᴞᴟᴠᴡᴢᴣᴤᴥᴦᴧᴨᴩᴪᴫᵢᵣᵤᵥᵦᵧᵨᵩᵪᵫᵬᵭᵮᵯᵰᵱᵲᵳᵴᵵᵶᵷᵹᵺᵻᵼᵽᵾᵿᶀᶁᶂᶃᶄᶅᶆᶇᶈᶉᶊᶋᶌᶍᶎᶏᶐᶑᶒᶓᶔᶕᶖᶗᶘᶙᶚḁḃḅḇḉḋḍḏḑḓḕḗḙḛḝḟḡḣḥḧḩḫḭḯḱḳḵḷḹḻḽḿṁṃṅṇṉṋṍṏṑṓṕṗṙṛṝṟṡṣṥṧṩṫṭṯṱṳṵṷṹṻṽṿẁẃẅẇẉẋẍẏẑẓẕẖẗẘẙẚẛạảấầẩẫậắằẳẵặẹẻẽếềểễệỉịọỏốồổỗộớờởỡợụủứừửữựỳỵỷỹἀἁἂἃἄἅἆἇἐἑἒἓἔἕἠἡἢἣἤἥἦἧἰἱἲἳἴἵἶἷὀὁὂὃὄὅὐὑὒὓὔὕὖὗὠὡὢὣὤὥὦὧὰάὲέὴήὶίὸόὺύὼώᾀᾁᾂᾃᾄᾅᾆᾇᾐᾑᾒᾓᾔᾕᾖᾗᾠᾡᾢᾣᾤᾥᾦᾧᾰᾱᾲᾳᾴᾶᾷιῂῃῄῆῇῐῑῒΐῖῗῠῡῢΰῤῥῦῧῲῳῴῶῷⲁⲃⲅⲇⲉⲋⲍⲏⲑⲓⲕⲗⲙⲛⲝⲟⲡⲣⲥⲧⲩⲫⲭⲯⲱⲳⲵⲷⲹⲻⲽⲿⳁⳃⳅⳇⳉⳋⳍⳏⳑⳓⳕⳗⳙⳛⳝⳟⳡⳣⳤⴀⴁⴂⴃⴄⴅⴆⴇⴈⴉⴊⴋⴌⴍⴎⴏⴐⴑⴒⴓⴔⴕⴖⴗⴘⴙⴚⴛⴜⴝⴞⴟⴠⴡⴢⴣⴤⴥfffiflffifflſtstﬓﬔﬕﬖﬗ\d-_^]/8
1070
1071/^[^d]*?$/
1072    abc
1073 0: abc
1074
1075/^[^d]*?$/8
1076    abc
1077 0: abc
1078
1079/^[^d]*?$/i
1080    abc
1081 0: abc
1082
1083/^[^d]*?$/8i
1084    abc
1085 0: abc
1086
1087/(?i)[\xc3\xa9\xc3\xbd]|[\xc3\xa9\xc3\xbdA]/8
1088
1089/^[a\x{c0}]b/8
1090    \x{c0}b
1091 0: \x{c0}b
1092
1093/^([a\x{c0}]*?)aa/8
1094    a\x{c0}aaaa/
1095 0: a\x{c0}aa
1096 1: a\x{c0}
1097
1098/^([a\x{c0}]*?)aa/8
1099    a\x{c0}aaaa/
1100 0: a\x{c0}aa
1101 1: a\x{c0}
1102    a\x{c0}a\x{c0}aaa/
1103 0: a\x{c0}a\x{c0}aa
1104 1: a\x{c0}a\x{c0}
1105
1106/^([a\x{c0}]*)aa/8
1107    a\x{c0}aaaa/
1108 0: a\x{c0}aaaa
1109 1: a\x{c0}aa
1110    a\x{c0}a\x{c0}aaa/
1111 0: a\x{c0}a\x{c0}aaa
1112 1: a\x{c0}a\x{c0}a
1113
1114/^([a\x{c0}]*)a\x{c0}/8
1115    a\x{c0}aaaa/
1116 0: a\x{c0}
1117 1:
1118    a\x{c0}a\x{c0}aaa/
1119 0: a\x{c0}a\x{c0}
1120 1: a\x{c0}
1121
1122/A*/g8
1123    AAB\x{123}BAA
1124 0: AA
1125 0:
1126 0:
1127 0:
1128 0: AA
1129 0:
1130
1131/-- End of testinput4 --/
1132