• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1/-- This set of tests is for Unicode property support. It is compatible with
2    Perl >= 5.10, but not 5.8 because it tests some extra properties that are
3    not in the earlier release. --/
4
5/^\pC\pL\pM\pN\pP\pS\pZ</8
6    \x7f\x{c0}\x{30f}\x{660}\x{66c}\x{f01}\x{1680}<
7 0: \x{7f}\x{c0}\x{30f}\x{660}\x{66c}\x{f01}\x{1680}<
8    \np\x{300}9!\$ <
9 0: \x{0a}p\x{300}9!$ <
10    ** Failers
11No match
12    ap\x{300}9!\$ <
13No match
14
15/^\PC/8
16    X
17 0: X
18    ** Failers
19 0: *
20    \x7f
21No match
22
23/^\PL/8
24    9
25 0: 9
26    ** Failers
27 0: *
28    \x{c0}
29No match
30
31/^\PM/8
32    X
33 0: X
34    ** Failers
35 0: *
36    \x{30f}
37No match
38
39/^\PN/8
40    X
41 0: X
42    ** Failers
43 0: *
44    \x{660}
45No match
46
47/^\PP/8
48    X
49 0: X
50    ** Failers
51No match
52    \x{66c}
53No match
54
55/^\PS/8
56    X
57 0: X
58    ** Failers
59 0: *
60    \x{f01}
61No match
62
63/^\PZ/8
64    X
65 0: X
66    ** Failers
67 0: *
68    \x{1680}
69No match
70
71/^\p{Cc}/8
72    \x{017}
73 0: \x{17}
74    \x{09f}
75 0: \x{9f}
76    ** Failers
77No match
78    \x{0600}
79No match
80
81/^\p{Cf}/8
82    \x{601}
83 0: \x{601}
84    ** Failers
85No match
86    \x{09f}
87No match
88
89/^\p{Cn}/8
90    \x{e0000}
91 0: \x{e0000}
92    ** Failers
93No match
94    \x{09f}
95No match
96
97/^\p{Co}/8
98    \x{f8ff}
99 0: \x{f8ff}
100    ** Failers
101No match
102    \x{09f}
103No match
104
105/^\p{Ll}/8
106    a
107 0: a
108    ** Failers
109No match
110    Z
111No match
112    \x{e000}
113No match
114
115/^\p{Lm}/8
116    \x{2b0}
117 0: \x{2b0}
118    ** Failers
119No match
120    a
121No match
122
123/^\p{Lo}/8
124    \x{1bb}
125 0: \x{1bb}
126    \x{3400}
127 0: \x{3400}
128    \x{3401}
129 0: \x{3401}
130    \x{4d00}
131 0: \x{4d00}
132    \x{4db4}
133 0: \x{4db4}
134    \x{4db5}
135 0: \x{4db5}
136    ** Failers
137No match
138    a
139No match
140    \x{2b0}
141No match
142    \x{4db6}
143No match
144
145/^\p{Lt}/8
146    \x{1c5}
147 0: \x{1c5}
148    ** Failers
149No match
150    a
151No match
152    \x{2b0}
153No match
154
155/^\p{Lu}/8
156    A
157 0: A
158    ** Failers
159No match
160    \x{2b0}
161No match
162
163/^\p{Mc}/8
164    \x{903}
165 0: \x{903}
166    ** Failers
167No match
168    X
169No match
170    \x{300}
171No match
172
173/^\p{Me}/8
174    \x{488}
175 0: \x{488}
176    ** Failers
177No match
178    X
179No match
180    \x{903}
181No match
182    \x{300}
183No match
184
185/^\p{Mn}/8
186    \x{300}
187 0: \x{300}
188    ** Failers
189No match
190    X
191No match
192    \x{903}
193No match
194
195/^\p{Nd}+/8
196    0123456789\x{660}\x{661}\x{662}\x{663}\x{664}\x{665}\x{666}\x{667}\x{668}\x{669}\x{66a}
197 0: 0123456789\x{660}\x{661}\x{662}\x{663}\x{664}\x{665}\x{666}\x{667}\x{668}\x{669}
198    \x{6f0}\x{6f1}\x{6f2}\x{6f3}\x{6f4}\x{6f5}\x{6f6}\x{6f7}\x{6f8}\x{6f9}\x{6fa}
199 0: \x{6f0}\x{6f1}\x{6f2}\x{6f3}\x{6f4}\x{6f5}\x{6f6}\x{6f7}\x{6f8}\x{6f9}
200    \x{966}\x{967}\x{968}\x{969}\x{96a}\x{96b}\x{96c}\x{96d}\x{96e}\x{96f}\x{970}
201 0: \x{966}\x{967}\x{968}\x{969}\x{96a}\x{96b}\x{96c}\x{96d}\x{96e}\x{96f}
202    ** Failers
203No match
204    X
205No match
206
207/^\p{Nl}/8
208    \x{16ee}
209 0: \x{16ee}
210    ** Failers
211No match
212    X
213No match
214    \x{966}
215No match
216
217/^\p{No}/8
218    \x{b2}
219 0: \x{b2}
220    \x{b3}
221 0: \x{b3}
222    ** Failers
223No match
224    X
225No match
226    \x{16ee}
227No match
228
229/^\p{Pc}/8
230    \x5f
231 0: _
232    \x{203f}
233 0: \x{203f}
234    ** Failers
235No match
236    X
237No match
238    -
239No match
240    \x{58a}
241No match
242
243/^\p{Pd}/8
244    -
245 0: -
246    \x{58a}
247 0: \x{58a}
248    ** Failers
249No match
250    X
251No match
252    \x{203f}
253No match
254
255/^\p{Pe}/8
256    )
257 0: )
258    ]
259 0: ]
260    }
261 0: }
262    \x{f3b}
263 0: \x{f3b}
264    ** Failers
265No match
266    X
267No match
268    \x{203f}
269No match
270    (
271No match
272    [
273No match
274    {
275No match
276    \x{f3c}
277No match
278
279/^\p{Pf}/8
280    \x{bb}
281 0: \x{bb}
282    \x{2019}
283 0: \x{2019}
284    ** Failers
285No match
286    X
287No match
288    \x{203f}
289No match
290
291/^\p{Pi}/8
292    \x{ab}
293 0: \x{ab}
294    \x{2018}
295 0: \x{2018}
296    ** Failers
297No match
298    X
299No match
300    \x{203f}
301No match
302
303/^\p{Po}/8
304    !
305 0: !
306    \x{37e}
307 0: \x{37e}
308    ** Failers
309 0: *
310    X
311No match
312    \x{203f}
313No match
314
315/^\p{Ps}/8
316    (
317 0: (
318    [
319 0: [
320    {
321 0: {
322    \x{f3c}
323 0: \x{f3c}
324    ** Failers
325No match
326    X
327No match
328    )
329No match
330    ]
331No match
332    }
333No match
334    \x{f3b}
335No match
336
337/^\p{Sk}/8
338    \x{2c2}
339 0: \x{2c2}
340    ** Failers
341No match
342    X
343No match
344    \x{9f2}
345No match
346
347/^\p{Sm}+/8
348    +<|~\x{ac}\x{2044}
349 0: +<|~\x{ac}\x{2044}
350    ** Failers
351No match
352    X
353No match
354    \x{9f2}
355No match
356
357/^\p{So}/8
358    \x{a6}
359 0: \x{a6}
360    \x{482}
361 0: \x{482}
362    ** Failers
363No match
364    X
365No match
366    \x{9f2}
367No match
368
369/^\p{Zl}/8
370    \x{2028}
371 0: \x{2028}
372    ** Failers
373No match
374    X
375No match
376    \x{2029}
377No match
378
379/^\p{Zp}/8
380    \x{2029}
381 0: \x{2029}
382    ** Failers
383No match
384    X
385No match
386    \x{2028}
387No match
388
389/\p{Nd}+(..)/8
390      \x{660}\x{661}\x{662}ABC
391 0: \x{660}\x{661}\x{662}AB
392 1: AB
393
394/\p{Nd}+?(..)/8
395      \x{660}\x{661}\x{662}ABC
396 0: \x{660}\x{661}\x{662}
397 1: \x{661}\x{662}
398
399/\p{Nd}{2,}(..)/8
400      \x{660}\x{661}\x{662}ABC
401 0: \x{660}\x{661}\x{662}AB
402 1: AB
403
404/\p{Nd}{2,}?(..)/8
405      \x{660}\x{661}\x{662}ABC
406 0: \x{660}\x{661}\x{662}A
407 1: \x{662}A
408
409/\p{Nd}*(..)/8
410      \x{660}\x{661}\x{662}ABC
411 0: \x{660}\x{661}\x{662}AB
412 1: AB
413
414/\p{Nd}*?(..)/8
415      \x{660}\x{661}\x{662}ABC
416 0: \x{660}\x{661}
417 1: \x{660}\x{661}
418
419/\p{Nd}{2}(..)/8
420      \x{660}\x{661}\x{662}ABC
421 0: \x{660}\x{661}\x{662}A
422 1: \x{662}A
423
424/\p{Nd}{2,3}(..)/8
425      \x{660}\x{661}\x{662}ABC
426 0: \x{660}\x{661}\x{662}AB
427 1: AB
428
429/\p{Nd}{2,3}?(..)/8
430      \x{660}\x{661}\x{662}ABC
431 0: \x{660}\x{661}\x{662}A
432 1: \x{662}A
433
434/\p{Nd}?(..)/8
435      \x{660}\x{661}\x{662}ABC
436 0: \x{660}\x{661}\x{662}
437 1: \x{661}\x{662}
438
439/\p{Nd}??(..)/8
440      \x{660}\x{661}\x{662}ABC
441 0: \x{660}\x{661}
442 1: \x{660}\x{661}
443
444/\p{Nd}*+(..)/8
445      \x{660}\x{661}\x{662}ABC
446 0: \x{660}\x{661}\x{662}AB
447 1: AB
448
449/\p{Nd}*+(...)/8
450      \x{660}\x{661}\x{662}ABC
451 0: \x{660}\x{661}\x{662}ABC
452 1: ABC
453
454/\p{Nd}*+(....)/8
455      ** Failers
456 0: ** F
457 1: ** F
458      \x{660}\x{661}\x{662}ABC
459No match
460
461/(?<=A\p{Nd})XYZ/8
462    A2XYZ
463 0: XYZ
464    123A5XYZPQR
465 0: XYZ
466    ABA\x{660}XYZpqr
467 0: XYZ
468    ** Failers
469No match
470    AXYZ
471No match
472    XYZ
473No match
474
475/(?<!\pL)XYZ/8
476    1XYZ
477 0: XYZ
478    AB=XYZ..
479 0: XYZ
480    XYZ
481 0: XYZ
482    ** Failers
483No match
484    WXYZ
485No match
486
487/[\P{Nd}]+/8
488    abcd
489 0: abcd
490    ** Failers
491 0: ** Failers
492    1234
493No match
494
495/\D+/8
496    11111111111111111111111111111111111111111111111111111111111111111111111
497No match
498    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
499 0: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
500
501/\P{Nd}+/8
502    11111111111111111111111111111111111111111111111111111111111111111111111
503No match
504    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
505 0: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
506
507/[\D]+/8
508    11111111111111111111111111111111111111111111111111111111111111111111111
509No match
510    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
511 0: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
512
513/[\P{Nd}]+/8
514    11111111111111111111111111111111111111111111111111111111111111111111111
515No match
516    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
517 0: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
518
519/[\D\P{Nd}]+/8
520    11111111111111111111111111111111111111111111111111111111111111111111111
521No match
522    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
523 0: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
524
525/\pL/8
526    a
527 0: a
528    A
529 0: A
530
531/\pL/8i
532    a
533 0: a
534    A
535 0: A
536
537/\p{Lu}/8
538    A
539 0: A
540    aZ
541 0: Z
542    ** Failers
543 0: F
544    abc
545No match
546
547/\p{Lu}/8i
548    A
549 0: A
550    aZ
551 0: Z
552    ** Failers
553 0: F
554    abc
555No match
556
557/\p{Ll}/8
558    a
559 0: a
560    Az
561 0: z
562    ** Failers
563 0: a
564    ABC
565No match
566
567/A\x{391}\x{10427}\x{ff3a}\x{1fb0}/8
568    A\x{391}\x{10427}\x{ff3a}\x{1fb0}
569 0: A\x{391}\x{10427}\x{ff3a}\x{1fb0}
570    ** Failers
571No match
572    a\x{391}\x{10427}\x{ff3a}\x{1fb0}
573No match
574    A\x{3b1}\x{10427}\x{ff3a}\x{1fb0}
575No match
576    A\x{391}\x{1044F}\x{ff3a}\x{1fb0}
577No match
578    A\x{391}\x{10427}\x{ff5a}\x{1fb0}
579No match
580    A\x{391}\x{10427}\x{ff3a}\x{1fb8}
581No match
582
583/A\x{391}\x{10427}\x{ff3a}\x{1fb0}/8i
584    A\x{391}\x{10427}\x{ff3a}\x{1fb0}
585 0: A\x{391}\x{10427}\x{ff3a}\x{1fb0}
586    a\x{391}\x{10427}\x{ff3a}\x{1fb0}
587 0: a\x{391}\x{10427}\x{ff3a}\x{1fb0}
588    A\x{3b1}\x{10427}\x{ff3a}\x{1fb0}
589 0: A\x{3b1}\x{10427}\x{ff3a}\x{1fb0}
590    A\x{391}\x{1044F}\x{ff3a}\x{1fb0}
591 0: A\x{391}\x{1044f}\x{ff3a}\x{1fb0}
592    A\x{391}\x{10427}\x{ff5a}\x{1fb0}
593 0: A\x{391}\x{10427}\x{ff5a}\x{1fb0}
594    A\x{391}\x{10427}\x{ff3a}\x{1fb8}
595 0: A\x{391}\x{10427}\x{ff3a}\x{1fb8}
596
597/\x{391}+/8i
598    \x{391}\x{3b1}\x{3b1}\x{3b1}\x{391}
599 0: \x{391}\x{3b1}\x{3b1}\x{3b1}\x{391}
600
601/\x{391}{3,5}(.)/8i
602    \x{391}\x{3b1}\x{3b1}\x{3b1}\x{391}X
603 0: \x{391}\x{3b1}\x{3b1}\x{3b1}\x{391}X
604 1: X
605
606/\x{391}{3,5}?(.)/8i
607    \x{391}\x{3b1}\x{3b1}\x{3b1}\x{391}X
608 0: \x{391}\x{3b1}\x{3b1}\x{3b1}
609 1: \x{3b1}
610
611/[\x{391}\x{ff3a}]/8i
612    \x{391}
613 0: \x{391}
614    \x{ff3a}
615 0: \x{ff3a}
616    \x{3b1}
617 0: \x{3b1}
618    \x{ff5a}
619 0: \x{ff5a}
620
621/^[\X]/8
622    X123
623 0: X
624    *** Failers
625No match
626    AXYZ
627No match
628
629/^(\X*)C/8
630    A\x{300}\x{301}\x{302}BCA\x{300}\x{301}
631 0: A\x{300}\x{301}\x{302}BC
632 1: A\x{300}\x{301}\x{302}B
633    A\x{300}\x{301}\x{302}BCA\x{300}\x{301}C
634 0: A\x{300}\x{301}\x{302}BCA\x{300}\x{301}C
635 1: A\x{300}\x{301}\x{302}BCA\x{300}\x{301}
636
637/^(\X*?)C/8
638    A\x{300}\x{301}\x{302}BCA\x{300}\x{301}
639 0: A\x{300}\x{301}\x{302}BC
640 1: A\x{300}\x{301}\x{302}B
641    A\x{300}\x{301}\x{302}BCA\x{300}\x{301}C
642 0: A\x{300}\x{301}\x{302}BC
643 1: A\x{300}\x{301}\x{302}B
644
645/^(\X*)(.)/8
646    A\x{300}\x{301}\x{302}BCA\x{300}\x{301}
647 0: A\x{300}\x{301}\x{302}BCA
648 1: A\x{300}\x{301}\x{302}BC
649 2: A
650    A\x{300}\x{301}\x{302}BCA\x{300}\x{301}C
651 0: A\x{300}\x{301}\x{302}BCA\x{300}\x{301}C
652 1: A\x{300}\x{301}\x{302}BCA\x{300}\x{301}
653 2: C
654
655/^(\X*?)(.)/8
656    A\x{300}\x{301}\x{302}BCA\x{300}\x{301}
657 0: A
658 1:
659 2: A
660    A\x{300}\x{301}\x{302}BCA\x{300}\x{301}C
661 0: A
662 1:
663 2: A
664
665/^\X(.)/8
666    *** Failers
667 0: **
668 1: *
669    A\x{300}\x{301}\x{302}
670No match
671
672/^\X{2,3}(.)/8
673    A\x{300}\x{301}B\x{300}X
674 0: A\x{300}\x{301}B\x{300}X
675 1: X
676    A\x{300}\x{301}B\x{300}C\x{300}\x{301}
677 0: A\x{300}\x{301}B\x{300}C
678 1: C
679    A\x{300}\x{301}B\x{300}C\x{300}\x{301}X
680 0: A\x{300}\x{301}B\x{300}C\x{300}\x{301}X
681 1: X
682    A\x{300}\x{301}B\x{300}C\x{300}\x{301}DA\x{300}X
683 0: A\x{300}\x{301}B\x{300}C\x{300}\x{301}D
684 1: D
685
686/^\X{2,3}?(.)/8
687    A\x{300}\x{301}B\x{300}X
688 0: A\x{300}\x{301}B\x{300}X
689 1: X
690    A\x{300}\x{301}B\x{300}C\x{300}\x{301}
691 0: A\x{300}\x{301}B\x{300}C
692 1: C
693    A\x{300}\x{301}B\x{300}C\x{300}\x{301}X
694 0: A\x{300}\x{301}B\x{300}C
695 1: C
696    A\x{300}\x{301}B\x{300}C\x{300}\x{301}DA\x{300}X
697 0: A\x{300}\x{301}B\x{300}C
698 1: C
699
700/^\p{Han}+/8
701    \x{2e81}\x{3007}\x{2f804}\x{31a0}
702 0: \x{2e81}\x{3007}\x{2f804}
703    ** Failers
704No match
705    \x{2e7f}
706No match
707
708/^\P{Katakana}+/8
709    \x{3105}
710 0: \x{3105}
711    ** Failers
712 0: ** Failers
713    \x{30ff}
714No match
715
716/^[\p{Arabic}]/8
717    \x{06e9}
718 0: \x{6e9}
719    \x{060b}
720 0: \x{60b}
721    ** Failers
722No match
723    X\x{06e9}
724No match
725
726/^[\P{Yi}]/8
727    \x{2f800}
728 0: \x{2f800}
729    ** Failers
730 0: *
731    \x{a014}
732No match
733    \x{a4c6}
734No match
735
736/^\p{Any}X/8
737    AXYZ
738 0: AX
739    \x{1234}XYZ
740 0: \x{1234}X
741    ** Failers
742No match
743    X
744No match
745
746/^\P{Any}X/8
747    ** Failers
748No match
749    AX
750No match
751
752/^\p{Any}?X/8
753    XYZ
754 0: X
755    AXYZ
756 0: AX
757    \x{1234}XYZ
758 0: \x{1234}X
759    ** Failers
760No match
761    ABXYZ
762No match
763
764/^\P{Any}?X/8
765    XYZ
766 0: X
767    ** Failers
768No match
769    AXYZ
770No match
771    \x{1234}XYZ
772No match
773    ABXYZ
774No match
775
776/^\p{Any}+X/8
777    AXYZ
778 0: AX
779    \x{1234}XYZ
780 0: \x{1234}X
781    A\x{1234}XYZ
782 0: A\x{1234}X
783    ** Failers
784No match
785    XYZ
786No match
787
788/^\P{Any}+X/8
789    ** Failers
790No match
791    AXYZ
792No match
793    \x{1234}XYZ
794No match
795    A\x{1234}XYZ
796No match
797    XYZ
798No match
799
800/^\p{Any}*X/8
801    XYZ
802 0: X
803    AXYZ
804 0: AX
805    \x{1234}XYZ
806 0: \x{1234}X
807    A\x{1234}XYZ
808 0: A\x{1234}X
809    ** Failers
810No match
811
812/^\P{Any}*X/8
813    XYZ
814 0: X
815    ** Failers
816No match
817    AXYZ
818No match
819    \x{1234}XYZ
820No match
821    A\x{1234}XYZ
822No match
823
824/^[\p{Any}]X/8
825    AXYZ
826 0: AX
827    \x{1234}XYZ
828 0: \x{1234}X
829    ** Failers
830No match
831    X
832No match
833
834/^[\P{Any}]X/8
835    ** Failers
836No match
837    AX
838No match
839
840/^[\p{Any}]?X/8
841    XYZ
842 0: X
843    AXYZ
844 0: AX
845    \x{1234}XYZ
846 0: \x{1234}X
847    ** Failers
848No match
849    ABXYZ
850No match
851
852/^[\P{Any}]?X/8
853    XYZ
854 0: X
855    ** Failers
856No match
857    AXYZ
858No match
859    \x{1234}XYZ
860No match
861    ABXYZ
862No match
863
864/^[\p{Any}]+X/8
865    AXYZ
866 0: AX
867    \x{1234}XYZ
868 0: \x{1234}X
869    A\x{1234}XYZ
870 0: A\x{1234}X
871    ** Failers
872No match
873    XYZ
874No match
875
876/^[\P{Any}]+X/8
877    ** Failers
878No match
879    AXYZ
880No match
881    \x{1234}XYZ
882No match
883    A\x{1234}XYZ
884No match
885    XYZ
886No match
887
888/^[\p{Any}]*X/8
889    XYZ
890 0: X
891    AXYZ
892 0: AX
893    \x{1234}XYZ
894 0: \x{1234}X
895    A\x{1234}XYZ
896 0: A\x{1234}X
897    ** Failers
898No match
899
900/^[\P{Any}]*X/8
901    XYZ
902 0: X
903    ** Failers
904No match
905    AXYZ
906No match
907    \x{1234}XYZ
908No match
909    A\x{1234}XYZ
910No match
911
912/^\p{Any}{3,5}?/8
913    abcdefgh
914 0: abc
915    \x{1234}\n\r\x{3456}xyz
916 0: \x{1234}\x{0a}\x{0d}
917
918/^\p{Any}{3,5}/8
919    abcdefgh
920 0: abcde
921    \x{1234}\n\r\x{3456}xyz
922 0: \x{1234}\x{0a}\x{0d}\x{3456}x
923
924/^\P{Any}{3,5}?/8
925    ** Failers
926No match
927    abcdefgh
928No match
929    \x{1234}\n\r\x{3456}xyz
930No match
931
932/^\p{L&}X/8
933     AXY
934 0: AX
935     aXY
936 0: aX
937     \x{1c5}XY
938 0: \x{1c5}X
939     ** Failers
940No match
941     \x{1bb}XY
942No match
943     \x{2b0}XY
944No match
945     !XY
946No match
947
948/^[\p{L&}]X/8
949     AXY
950 0: AX
951     aXY
952 0: aX
953     \x{1c5}XY
954 0: \x{1c5}X
955     ** Failers
956No match
957     \x{1bb}XY
958No match
959     \x{2b0}XY
960No match
961     !XY
962No match
963
964/^\p{L&}+X/8
965     AXY
966 0: AX
967     aXY
968 0: aX
969     AbcdeXyz
970 0: AbcdeX
971     \x{1c5}AbXY
972 0: \x{1c5}AbX
973     abcDEXypqreXlmn
974 0: abcDEXypqreX
975     ** Failers
976No match
977     \x{1bb}XY
978No match
979     \x{2b0}XY
980No match
981     !XY
982No match
983
984/^[\p{L&}]+X/8
985     AXY
986 0: AX
987     aXY
988 0: aX
989     AbcdeXyz
990 0: AbcdeX
991     \x{1c5}AbXY
992 0: \x{1c5}AbX
993     abcDEXypqreXlmn
994 0: abcDEXypqreX
995     ** Failers
996No match
997     \x{1bb}XY
998No match
999     \x{2b0}XY
1000No match
1001     !XY
1002No match
1003
1004/^\p{L&}+?X/8
1005     AXY
1006 0: AX
1007     aXY
1008 0: aX
1009     AbcdeXyz
1010 0: AbcdeX
1011     \x{1c5}AbXY
1012 0: \x{1c5}AbX
1013     abcDEXypqreXlmn
1014 0: abcDEX
1015     ** Failers
1016No match
1017     \x{1bb}XY
1018No match
1019     \x{2b0}XY
1020No match
1021     !XY
1022No match
1023
1024/^[\p{L&}]+?X/8
1025     AXY
1026 0: AX
1027     aXY
1028 0: aX
1029     AbcdeXyz
1030 0: AbcdeX
1031     \x{1c5}AbXY
1032 0: \x{1c5}AbX
1033     abcDEXypqreXlmn
1034 0: abcDEX
1035     ** Failers
1036No match
1037     \x{1bb}XY
1038No match
1039     \x{2b0}XY
1040No match
1041     !XY
1042No match
1043
1044/^\P{L&}X/8
1045     !XY
1046 0: !X
1047     \x{1bb}XY
1048 0: \x{1bb}X
1049     \x{2b0}XY
1050 0: \x{2b0}X
1051     ** Failers
1052No match
1053     \x{1c5}XY
1054No match
1055     AXY
1056No match
1057
1058/^[\P{L&}]X/8
1059     !XY
1060 0: !X
1061     \x{1bb}XY
1062 0: \x{1bb}X
1063     \x{2b0}XY
1064 0: \x{2b0}X
1065     ** Failers
1066No match
1067     \x{1c5}XY
1068No match
1069     AXY
1070No match
1071
1072/^(\p{Z}[^\p{C}\p{Z}]+)*$/
1073    \xa0!
1074 0: \xa0!
1075 1: \xa0!
1076
1077/^[\pL](abc)(?1)/
1078    AabcabcYZ
1079 0: Aabcabc
1080 1: abc
1081
1082/([\pL]=(abc))*X/
1083    L=abcX
1084 0: L=abcX
1085 1: L=abc
1086 2: abc
1087
1088/^\p{Balinese}\p{Cuneiform}\p{Nko}\p{Phags_Pa}\p{Phoenician}/8
1089    \x{1b00}\x{12000}\x{7c0}\x{a840}\x{10900}
1090 0: \x{1b00}\x{12000}\x{7c0}\x{a840}\x{10900}
1091
1092/Check property support in non-UTF-8 mode/
1093
1094/\p{L}{4}/
1095    123abcdefg
1096 0: abcd
1097    123abc\xc4\xc5zz
1098 0: abc\xc4
1099
1100/\X{1,3}\d/
1101  \x8aBCD
1102No match
1103
1104/\X?\d/
1105  \x8aBCD
1106No match
1107
1108/\P{L}?\d/
1109  \x8aBCD
1110No match
1111
1112/[\PPP\x8a]{1,}\x80/
1113    A\x80
1114 0: A\x80
1115
1116/^[\p{Arabic}]/8
1117    \x{60e}
1118 0: \x{60e}
1119    \x{656}
1120 0: \x{656}
1121    \x{657}
1122 0: \x{657}
1123    \x{658}
1124 0: \x{658}
1125    \x{659}
1126 0: \x{659}
1127    \x{65a}
1128 0: \x{65a}
1129    \x{65b}
1130 0: \x{65b}
1131    \x{65c}
1132 0: \x{65c}
1133    \x{65d}
1134 0: \x{65d}
1135    \x{65e}
1136 0: \x{65e}
1137    \x{66a}
1138 0: \x{66a}
1139    \x{6e9}
1140 0: \x{6e9}
1141    \x{6ef}
1142 0: \x{6ef}
1143    \x{6fa}
1144 0: \x{6fa}
1145    ** Failers
1146No match
1147    \x{600}
1148No match
1149    \x{650}
1150No match
1151    \x{651}
1152No match
1153    \x{652}
1154No match
1155    \x{653}
1156No match
1157    \x{654}
1158No match
1159    \x{655}
1160No match
1161    \x{65f}
1162No match
1163
1164/^\p{Cyrillic}/8
1165    \x{1d2b}
1166 0: \x{1d2b}
1167
1168/^\p{Common}/8
1169    \x{589}
1170 0: \x{589}
1171    \x{60c}
1172 0: \x{60c}
1173    \x{61f}
1174 0: \x{61f}
1175    \x{964}
1176 0: \x{964}
1177    \x{965}
1178 0: \x{965}
1179    \x{970}
1180 0: \x{970}
1181
1182/^\p{Inherited}/8
1183    \x{64b}
1184 0: \x{64b}
1185    \x{654}
1186 0: \x{654}
1187    \x{655}
1188 0: \x{655}
1189    \x{200c}
1190 0: \x{200c}
1191    ** Failers
1192No match
1193    \x{64a}
1194No match
1195    \x{656}
1196No match
1197
1198/^\p{Shavian}/8
1199    \x{10450}
1200 0: \x{10450}
1201    \x{1047f}
1202 0: \x{1047f}
1203
1204/^\p{Deseret}/8
1205    \x{10400}
1206 0: \x{10400}
1207    \x{1044f}
1208 0: \x{1044f}
1209
1210/^\p{Osmanya}/8
1211    \x{10480}
1212 0: \x{10480}
1213    \x{1049d}
1214 0: \x{1049d}
1215    \x{104a0}
1216 0: \x{104a0}
1217    \x{104a9}
1218 0: \x{104a9}
1219    ** Failers
1220No match
1221    \x{1049e}
1222No match
1223    \x{1049f}
1224No match
1225    \x{104aa}
1226No match
1227
1228/\p{Carian}\p{Cham}\p{Kayah_Li}\p{Lepcha}\p{Lycian}\p{Lydian}\p{Ol_Chiki}\p{Rejang}\p{Saurashtra}\p{Sundanese}\p{Vai}/8
1229    \x{102A4}\x{AA52}\x{A91D}\x{1C46}\x{10283}\x{1092E}\x{1C6B}\x{A93B}\x{A8BF}\x{1BA0}\x{A50A}====
1230 0: \x{102a4}\x{aa52}\x{a91d}\x{1c46}\x{10283}\x{1092e}\x{1c6b}\x{a93b}\x{a8bf}\x{1ba0}\x{a50a}
1231
1232/\x{a77d}\x{1d79}/8i
1233    \x{a77d}\x{1d79}
1234 0: \x{a77d}\x{1d79}
1235    \x{1d79}\x{a77d}
1236 0: \x{1d79}\x{a77d}
1237
1238/\x{a77d}\x{1d79}/8
1239    \x{a77d}\x{1d79}
1240 0: \x{a77d}\x{1d79}
1241    ** Failers
1242No match
1243    \x{1d79}\x{a77d}
1244No match
1245
1246/(A)\1/8i
1247    AA
1248 0: AA
1249 1: A
1250    Aa
1251 0: Aa
1252 1: A
1253    aa
1254 0: aa
1255 1: a
1256    aA
1257 0: aA
1258 1: a
1259
1260/(\x{10a})\1/8i
1261    \x{10a}\x{10a}
1262 0: \x{10a}\x{10a}
1263 1: \x{10a}
1264    \x{10a}\x{10b}
1265 0: \x{10a}\x{10b}
1266 1: \x{10a}
1267    \x{10b}\x{10b}
1268 0: \x{10b}\x{10b}
1269 1: \x{10b}
1270    \x{10b}\x{10a}
1271 0: \x{10b}\x{10a}
1272 1: \x{10b}
1273
1274/The next two tests are for property support in non-UTF-8 mode/
1275
1276/(?:\p{Lu}|\x20)+/
1277    \x41\x20\x50\xC2\x54\xC9\x20\x54\x4F\x44\x41\x59
1278 0: A P\xc2T\xc9 TODAY
1279
1280/[\p{Lu}\x20]+/
1281    \x41\x20\x50\xC2\x54\xC9\x20\x54\x4F\x44\x41\x59
1282 0: A P\xc2T\xc9 TODAY
1283
1284/\p{Avestan}\p{Bamum}\p{Egyptian_Hieroglyphs}\p{Imperial_Aramaic}\p{Inscriptional_Pahlavi}\p{Inscriptional_Parthian}\p{Javanese}\p{Kaithi}\p{Lisu}\p{Meetei_Mayek}\p{Old_South_Arabian}\p{Old_Turkic}\p{Samaritan}\p{Tai_Tham}\p{Tai_Viet}/8
1285    \x{10b00}\x{a6ef}\x{13007}\x{10857}\x{10b78}\x{10b58}\x{a980}\x{110c1}\x{a4ff}\x{abc0}\x{10a7d}\x{10c48}\x{0800}\x{1aad}\x{aac0}
1286 0: \x{10b00}\x{a6ef}\x{13007}\x{10857}\x{10b78}\x{10b58}\x{a980}\x{110c1}\x{a4ff}\x{abc0}\x{10a7d}\x{10c48}\x{800}\x{1aad}\x{aac0}
1287
1288/^\w+/8W
1289    Az_\x{aa}\x{c0}\x{1c5}\x{2b0}\x{3b6}\x{1d7c9}\x{2fa1d}1\x{660}\x{bef}\x{16ee}
1290 0: Az_\x{aa}\x{c0}\x{1c5}\x{2b0}\x{3b6}\x{1d7c9}\x{2fa1d}1\x{660}\x{bef}\x{16ee}
1291
1292/^[[:xdigit:]]*/8W
1293    1a\x{660}\x{bef}\x{16ee}
1294 0: 1a
1295
1296/^\d+/8W
1297    1\x{660}\x{bef}\x{16ee}
1298 0: 1\x{660}\x{bef}
1299
1300/^[[:digit:]]+/8W
1301    1\x{660}\x{bef}\x{16ee}
1302 0: 1\x{660}\x{bef}
1303
1304/^>\s+/8W
1305    >\x{20}\x{a0}\x{1680}\x{2028}\x{2029}\x{202f}\x{9}\x{b}
1306 0: > \x{a0}\x{1680}\x{2028}\x{2029}\x{202f}\x{09}
1307
1308/^>\pZ+/8W
1309    >\x{20}\x{a0}\x{1680}\x{2028}\x{2029}\x{202f}\x{9}\x{b}
1310 0: > \x{a0}\x{1680}\x{2028}\x{2029}\x{202f}
1311
1312/^>[[:space:]]*/8W
1313    >\x{20}\x{a0}\x{1680}\x{2028}\x{2029}\x{202f}\x{9}\x{b}
1314 0: > \x{a0}\x{1680}\x{2028}\x{2029}\x{202f}\x{09}\x{0b}
1315
1316/^>[[:blank:]]*/8W
1317    >\x{20}\x{a0}\x{1680}\x{180e}\x{2000}\x{202f}\x{9}\x{b}\x{2028}
1318 0: > \x{a0}\x{1680}\x{180e}\x{2000}\x{202f}\x{09}
1319
1320/^[[:alpha:]]*/8W
1321    Az\x{aa}\x{c0}\x{1c5}\x{2b0}\x{3b6}\x{1d7c9}\x{2fa1d}
1322 0: Az\x{aa}\x{c0}\x{1c5}\x{2b0}\x{3b6}\x{1d7c9}\x{2fa1d}
1323
1324/^[[:alnum:]]*/8W
1325    Az\x{aa}\x{c0}\x{1c5}\x{2b0}\x{3b6}\x{1d7c9}\x{2fa1d}1\x{660}\x{bef}\x{16ee}
1326 0: Az\x{aa}\x{c0}\x{1c5}\x{2b0}\x{3b6}\x{1d7c9}\x{2fa1d}1\x{660}\x{bef}\x{16ee}
1327
1328/^[[:cntrl:]]*/8W
1329    \x{0}\x{09}\x{1f}\x{7f}\x{9f}
1330 0: \x{00}\x{09}\x{1f}\x{7f}
1331
1332/^[[:graph:]]*/8W
1333    A\x{a1}\x{a0}
1334 0: A
1335
1336/^[[:print:]]*/8W
1337    A z\x{a0}\x{a1}
1338 0: A z
1339
1340/^[[:punct:]]*/8W
1341    .+\x{a1}\x{a0}
1342 0: .+
1343
1344/\p{Zs}*?\R/
1345    ** Failers
1346No match
1347    a\xFCb
1348No match
1349
1350/\p{Zs}*\R/
1351    ** Failers
1352No match
1353    a\xFCb
1354No match
1355
1356/-- End of testinput6 --/
1357