chiark / gitweb /
pcre3 (2:8.35-3.3) unstable; urgency=medium
[pcre3.git] / testdata / testoutput10
1 /-- This set of tests check Unicode property support with the DFA matching 
2     functionality of pcre_dfa_exec(). The -dfa flag must be used with pcretest
3     when running it. --/
4
5 /\pL\P{Nd}/8
6     AB
7  0: AB
8     *** Failers
9  0: Fa
10     A0
11 No match
12     00   
13 No match
14
15 /\X./8
16     AB
17  0: AB
18     A\x{300}BC 
19  0: A\x{300}B
20     A\x{300}\x{301}\x{302}BC 
21  0: A\x{300}\x{301}\x{302}B
22     *** Failers
23  0: **
24     \x{300}  
25 No match
26
27 /\X\X/8
28     ABC
29  0: AB
30     A\x{300}B\x{300}\x{301}C 
31  0: A\x{300}B\x{300}\x{301}
32     A\x{300}\x{301}\x{302}BC 
33  0: A\x{300}\x{301}\x{302}B
34     *** Failers
35  0: **
36     \x{300}  
37 No match
38
39 /^\pL+/8
40     abcd
41  0: abcd
42     a 
43  0: a
44     *** Failers 
45 No match
46
47 /^\PL+/8
48     1234
49  0: 1234
50     = 
51  0: =
52     *** Failers 
53  0: *** 
54     abcd 
55 No match
56
57 /^\X+/8
58     abcdA\x{300}\x{301}\x{302}
59  0: abcdA\x{300}\x{301}\x{302}
60     A\x{300}\x{301}\x{302}
61  0: A\x{300}\x{301}\x{302}
62     A\x{300}\x{301}\x{302}A\x{300}\x{301}\x{302}
63  0: A\x{300}\x{301}\x{302}A\x{300}\x{301}\x{302}
64     a 
65  0: a
66     *** Failers 
67  0: *** Failers
68     \x{300}\x{301}\x{302}
69  0: \x{300}\x{301}\x{302}
70
71 /\X?abc/8
72     abc
73  0: abc
74     A\x{300}abc
75  0: A\x{300}abc
76     A\x{300}\x{301}\x{302}A\x{300}A\x{300}A\x{300}abcxyz
77  0: A\x{300}abc
78     \x{300}abc  
79  0: \x{300}abc
80     *** Failers
81 No match
82
83 /^\X?abc/8
84     abc
85  0: abc
86     A\x{300}abc
87  0: A\x{300}abc
88     *** Failers
89 No match
90     A\x{300}\x{301}\x{302}A\x{300}A\x{300}A\x{300}abcxyz
91 No match
92     \x{300}abc  
93  0: \x{300}abc
94
95 /\X*abc/8
96     abc
97  0: abc
98     A\x{300}abc
99  0: A\x{300}abc
100     A\x{300}\x{301}\x{302}A\x{300}A\x{300}A\x{300}abcxyz
101  0: A\x{300}\x{301}\x{302}A\x{300}A\x{300}A\x{300}abc
102     \x{300}abc  
103  0: \x{300}abc
104     *** Failers
105 No match
106
107 /^\X*abc/8
108     abc
109  0: abc
110     A\x{300}abc
111  0: A\x{300}abc
112     A\x{300}\x{301}\x{302}A\x{300}A\x{300}A\x{300}abcxyz
113  0: A\x{300}\x{301}\x{302}A\x{300}A\x{300}A\x{300}abc
114     *** Failers
115 No match
116     \x{300}abc  
117  0: \x{300}abc
118
119 /^\pL?=./8
120     A=b
121  0: A=b
122     =c 
123  0: =c
124     *** Failers
125 No match
126     1=2 
127 No match
128     AAAA=b  
129 No match
130
131 /^\pL*=./8
132     AAAA=b
133  0: AAAA=b
134     =c 
135  0: =c
136     *** Failers
137 No match
138     1=2  
139 No match
140
141 /^\X{2,3}X/8
142     A\x{300}\x{301}\x{302}A\x{300}\x{301}\x{302}X
143  0: A\x{300}\x{301}\x{302}A\x{300}\x{301}\x{302}X
144     A\x{300}\x{301}\x{302}A\x{300}\x{301}\x{302}A\x{300}\x{301}\x{302}X 
145  0: A\x{300}\x{301}\x{302}A\x{300}\x{301}\x{302}A\x{300}\x{301}\x{302}X
146     *** Failers
147 No match
148     X
149 No match
150     A\x{300}\x{301}\x{302}X
151 No match
152     A\x{300}\x{301}\x{302}A\x{300}\x{301}\x{302}A\x{300}\x{301}\x{302}A\x{300}\x{301}\x{302}X
153 No match
154
155 /^\pC\pL\pM\pN\pP\pS\pZ</8
156     \x7f\x{c0}\x{30f}\x{660}\x{66c}\x{f01}\x{1680}<
157  0: \x{7f}\x{c0}\x{30f}\x{660}\x{66c}\x{f01}\x{1680}<
158     \np\x{300}9!\$ < 
159  0: \x{0a}p\x{300}9!$ <
160     ** Failers 
161 No match
162     ap\x{300}9!\$ < 
163 No match
164   
165 /^\PC/8
166     X
167  0: X
168     ** Failers 
169  0: *
170     \x7f
171 No match
172   
173 /^\PL/8
174     9
175  0: 9
176     ** Failers 
177  0: *
178     \x{c0}
179 No match
180   
181 /^\PM/8
182     X
183  0: X
184     ** Failers 
185  0: *
186     \x{30f}
187 No match
188   
189 /^\PN/8
190     X
191  0: X
192     ** Failers 
193  0: *
194     \x{660}
195 No match
196   
197 /^\PP/8
198     X
199  0: X
200     ** Failers 
201 No match
202     \x{66c}
203 No match
204   
205 /^\PS/8
206     X
207  0: X
208     ** Failers 
209  0: *
210     \x{f01}
211 No match
212   
213 /^\PZ/8
214     X
215  0: X
216     ** Failers 
217  0: *
218     \x{1680}
219 No match
220     
221 /^\p{Cc}/8
222     \x{017}
223  0: \x{17}
224     \x{09f} 
225  0: \x{9f}
226     ** Failers
227 No match
228     \x{0600} 
229 No match
230   
231 /^\p{Cf}/8
232     \x{601}
233  0: \x{601}
234     \x{180e}
235  0: \x{180e}
236     \x{061c}
237  0: \x{61c}
238     \x{2066}
239  0: \x{2066}
240     \x{2067}
241  0: \x{2067}
242     \x{2068}
243  0: \x{2068}
244     \x{2069}
245  0: \x{2069}
246     ** Failers
247 No match
248     \x{09f} 
249 No match
250   
251 /^\p{Cn}/8
252     ** Failers
253 No match
254     \x{09f} 
255 No match
256   
257 /^\p{Co}/8
258     \x{f8ff}
259  0: \x{f8ff}
260     ** Failers
261 No match
262     \x{09f} 
263 No match
264   
265 /^\p{Cs}/8
266     \?\x{dfff}
267  0: \x{dfff}
268     ** Failers
269 No match
270     \x{09f} 
271 No match
272   
273 /^\p{Ll}/8
274     a
275  0: a
276     ** Failers 
277 No match
278     Z
279 No match
280     \x{e000}  
281 No match
282   
283 /^\p{Lm}/8
284     \x{2b0}
285  0: \x{2b0}
286     ** Failers
287 No match
288     a 
289 No match
290   
291 /^\p{Lo}/8
292     \x{1bb}
293  0: \x{1bb}
294     ** Failers
295 No match
296     a 
297 No match
298     \x{2b0}
299 No match
300   
301 /^\p{Lt}/8
302     \x{1c5}
303  0: \x{1c5}
304     ** Failers
305 No match
306     a 
307 No match
308     \x{2b0}
309 No match
310   
311 /^\p{Lu}/8
312     A
313  0: A
314     ** Failers
315 No match
316     \x{2b0}
317 No match
318   
319 /^\p{Mc}/8
320     \x{903}
321  0: \x{903}
322     ** Failers
323 No match
324     X
325 No match
326     \x{300}
327 No match
328        
329 /^\p{Me}/8
330     \x{488}
331  0: \x{488}
332     ** Failers
333 No match
334     X
335 No match
336     \x{903}
337 No match
338     \x{300}
339 No match
340   
341 /^\p{Mn}/8
342     \x{300}
343  0: \x{300}
344     \x{1a1b}
345  0: \x{1a1b}
346     ** Failers
347 No match
348     X
349 No match
350     \x{903}
351 No match
352   
353 /^\p{Nd}+/8O
354     0123456789\x{660}\x{661}\x{662}\x{663}\x{664}\x{665}\x{666}\x{667}\x{668}\x{669}\x{66a}
355  0: 0123456789\x{660}\x{661}\x{662}\x{663}\x{664}\x{665}\x{666}\x{667}\x{668}\x{669}
356  1: 0123456789\x{660}\x{661}\x{662}\x{663}\x{664}\x{665}\x{666}\x{667}\x{668}
357  2: 0123456789\x{660}\x{661}\x{662}\x{663}\x{664}\x{665}\x{666}\x{667}
358  3: 0123456789\x{660}\x{661}\x{662}\x{663}\x{664}\x{665}\x{666}
359  4: 0123456789\x{660}\x{661}\x{662}\x{663}\x{664}\x{665}
360  5: 0123456789\x{660}\x{661}\x{662}\x{663}\x{664}
361  6: 0123456789\x{660}\x{661}\x{662}\x{663}
362  7: 0123456789\x{660}\x{661}\x{662}
363  8: 0123456789\x{660}\x{661}
364  9: 0123456789\x{660}
365 10: 0123456789
366 11: 012345678
367 12: 01234567
368 13: 0123456
369 14: 012345
370 15: 01234
371 16: 0123
372 17: 012
373 18: 01
374 19: 0
375     \x{6f0}\x{6f1}\x{6f2}\x{6f3}\x{6f4}\x{6f5}\x{6f6}\x{6f7}\x{6f8}\x{6f9}\x{6fa}
376  0: \x{6f0}\x{6f1}\x{6f2}\x{6f3}\x{6f4}\x{6f5}\x{6f6}\x{6f7}\x{6f8}\x{6f9}
377  1: \x{6f0}\x{6f1}\x{6f2}\x{6f3}\x{6f4}\x{6f5}\x{6f6}\x{6f7}\x{6f8}
378  2: \x{6f0}\x{6f1}\x{6f2}\x{6f3}\x{6f4}\x{6f5}\x{6f6}\x{6f7}
379  3: \x{6f0}\x{6f1}\x{6f2}\x{6f3}\x{6f4}\x{6f5}\x{6f6}
380  4: \x{6f0}\x{6f1}\x{6f2}\x{6f3}\x{6f4}\x{6f5}
381  5: \x{6f0}\x{6f1}\x{6f2}\x{6f3}\x{6f4}
382  6: \x{6f0}\x{6f1}\x{6f2}\x{6f3}
383  7: \x{6f0}\x{6f1}\x{6f2}
384  8: \x{6f0}\x{6f1}
385  9: \x{6f0}
386     \x{966}\x{967}\x{968}\x{969}\x{96a}\x{96b}\x{96c}\x{96d}\x{96e}\x{96f}\x{970}
387  0: \x{966}\x{967}\x{968}\x{969}\x{96a}\x{96b}\x{96c}\x{96d}\x{96e}\x{96f}
388  1: \x{966}\x{967}\x{968}\x{969}\x{96a}\x{96b}\x{96c}\x{96d}\x{96e}
389  2: \x{966}\x{967}\x{968}\x{969}\x{96a}\x{96b}\x{96c}\x{96d}
390  3: \x{966}\x{967}\x{968}\x{969}\x{96a}\x{96b}\x{96c}
391  4: \x{966}\x{967}\x{968}\x{969}\x{96a}\x{96b}
392  5: \x{966}\x{967}\x{968}\x{969}\x{96a}
393  6: \x{966}\x{967}\x{968}\x{969}
394  7: \x{966}\x{967}\x{968}
395  8: \x{966}\x{967}
396  9: \x{966}
397     ** Failers
398 No match
399     X
400 No match
401   
402 /^\p{Nl}/8
403     \x{16ee}
404  0: \x{16ee}
405     ** Failers
406 No match
407     X
408 No match
409     \x{966}
410 No match
411   
412 /^\p{No}/8
413     \x{b2}
414  0: \x{b2}
415     \x{b3}
416  0: \x{b3}
417     ** Failers
418 No match
419     X
420 No match
421     \x{16ee}
422 No match
423   
424 /^\p{Pc}/8
425     \x5f
426  0: _
427     \x{203f}
428  0: \x{203f}
429     ** Failers
430 No match
431     X
432 No match
433     -
434 No match
435     \x{58a}
436 No match
437   
438 /^\p{Pd}/8
439     -
440  0: -
441     \x{58a}
442  0: \x{58a}
443     ** Failers
444 No match
445     X
446 No match
447     \x{203f}
448 No match
449   
450 /^\p{Pe}/8
451     )
452  0: )
453     ]
454  0: ]
455     }
456  0: }
457     \x{f3b}
458  0: \x{f3b}
459     \x{2309}
460  0: \x{2309}
461     \x{230b}
462  0: \x{230b}
463     ** Failers
464 No match
465     X
466 No match
467     \x{203f}
468 No match
469     (
470 No match
471     [
472 No match
473     {
474 No match
475     \x{f3c}
476 No match
477
478 /^\p{Pf}/8
479     \x{bb}
480  0: \x{bb}
481     \x{2019}
482  0: \x{2019}
483     ** Failers
484 No match
485     X
486 No match
487     \x{203f}
488 No match
489   
490 /^\p{Pi}/8
491     \x{ab}
492  0: \x{ab}
493     \x{2018}
494  0: \x{2018}
495     ** Failers
496 No match
497     X
498 No match
499     \x{203f}
500 No match
501   
502 /^\p{Po}/8
503     !
504  0: !
505     \x{37e}
506  0: \x{37e}
507     ** Failers
508  0: *
509     X
510 No match
511     \x{203f}
512 No match
513   
514 /^\p{Ps}/8
515     (
516  0: (
517     [
518  0: [
519     {
520  0: {
521     \x{f3c}
522  0: \x{f3c}
523     \x{2308}
524  0: \x{2308}
525     \x{230a}
526  0: \x{230a}
527     ** Failers
528 No match
529     X
530 No match
531     )
532 No match
533     ]
534 No match
535     }
536 No match
537     \x{f3b}
538 No match
539   
540 /^\p{Sc}+/8
541     $\x{a2}\x{a3}\x{a4}\x{a5}\x{a6}
542  0: $\x{a2}\x{a3}\x{a4}\x{a5}
543     \x{9f2}
544  0: \x{9f2}
545     ** Failers
546 No match
547     X
548 No match
549     \x{2c2}
550 No match
551   
552 /^\p{Sk}/8
553     \x{2c2}
554  0: \x{2c2}
555     ** Failers
556 No match
557     X
558 No match
559     \x{9f2}
560 No match
561   
562 /^\p{Sm}+/8
563     +<|~\x{ac}\x{2044}
564  0: +<|~\x{ac}\x{2044}
565     ** Failers
566 No match
567     X
568 No match
569     \x{9f2}
570 No match
571   
572 /^\p{So}/8
573     \x{a6}
574  0: \x{a6}
575     \x{482} 
576  0: \x{482}
577     ** Failers
578 No match
579     X
580 No match
581     \x{9f2}
582 No match
583   
584 /^\p{Zl}/8
585     \x{2028}
586  0: \x{2028}
587     ** Failers
588 No match
589     X
590 No match
591     \x{2029}
592 No match
593   
594 /^\p{Zp}/8
595     \x{2029}
596  0: \x{2029}
597     ** Failers
598 No match
599     X
600 No match
601     \x{2028}
602 No match
603   
604 /^\p{Zs}/8
605     \ \
606  0:  
607     \x{a0}
608  0: \x{a0}
609     \x{1680}
610  0: \x{1680}
611     \x{2000}
612  0: \x{2000}
613     \x{2001}     
614  0: \x{2001}
615     ** Failers
616 No match
617     \x{2028}
618 No match
619     \x{200d} 
620 No match
621   
622 /\p{Nd}+(..)/8
623       \x{660}\x{661}\x{662}ABC
624  0: \x{660}\x{661}\x{662}AB
625  1: \x{660}\x{661}\x{662}A
626  2: \x{660}\x{661}\x{662}
627   
628 /\p{Nd}+?(..)/8
629       \x{660}\x{661}\x{662}ABC
630  0: \x{660}\x{661}\x{662}AB
631  1: \x{660}\x{661}\x{662}A
632  2: \x{660}\x{661}\x{662}
633   
634 /\p{Nd}{2,}(..)/8
635       \x{660}\x{661}\x{662}ABC
636  0: \x{660}\x{661}\x{662}AB
637  1: \x{660}\x{661}\x{662}A
638   
639 /\p{Nd}{2,}?(..)/8
640       \x{660}\x{661}\x{662}ABC
641  0: \x{660}\x{661}\x{662}AB
642  1: \x{660}\x{661}\x{662}A
643   
644 /\p{Nd}*(..)/8
645       \x{660}\x{661}\x{662}ABC
646  0: \x{660}\x{661}\x{662}AB
647  1: \x{660}\x{661}\x{662}A
648  2: \x{660}\x{661}\x{662}
649  3: \x{660}\x{661}
650   
651 /\p{Nd}*?(..)/8
652       \x{660}\x{661}\x{662}ABC
653  0: \x{660}\x{661}\x{662}AB
654  1: \x{660}\x{661}\x{662}A
655  2: \x{660}\x{661}\x{662}
656  3: \x{660}\x{661}
657   
658 /\p{Nd}{2}(..)/8
659       \x{660}\x{661}\x{662}ABC
660  0: \x{660}\x{661}\x{662}A
661   
662 /\p{Nd}{2,3}(..)/8
663       \x{660}\x{661}\x{662}ABC
664  0: \x{660}\x{661}\x{662}AB
665  1: \x{660}\x{661}\x{662}A
666   
667 /\p{Nd}{2,3}?(..)/8
668       \x{660}\x{661}\x{662}ABC
669  0: \x{660}\x{661}\x{662}AB
670  1: \x{660}\x{661}\x{662}A
671   
672 /\p{Nd}?(..)/8
673       \x{660}\x{661}\x{662}ABC
674  0: \x{660}\x{661}\x{662}
675  1: \x{660}\x{661}
676   
677 /\p{Nd}??(..)/8
678       \x{660}\x{661}\x{662}ABC
679  0: \x{660}\x{661}\x{662}
680  1: \x{660}\x{661}
681   
682 /\p{Nd}*+(..)/8
683       \x{660}\x{661}\x{662}ABC
684  0: \x{660}\x{661}\x{662}AB
685   
686 /\p{Nd}*+(...)/8
687       \x{660}\x{661}\x{662}ABC
688  0: \x{660}\x{661}\x{662}ABC
689   
690 /\p{Nd}*+(....)/8
691       ** Failers
692  0: ** F
693       \x{660}\x{661}\x{662}ABC
694 No match
695   
696 /\p{Lu}/8i
697     A
698  0: A
699     a\x{10a0}B 
700  0: \x{10a0}
701     ** Failers 
702  0: F
703     a
704 No match
705     \x{1d00}  
706 No match
707
708 /\p{^Lu}/8i
709     1234
710  0: 1
711     ** Failers
712  0: *
713     ABC 
714 No match
715
716 /\P{Lu}/8i
717     1234
718  0: 1
719     ** Failers
720  0: *
721     ABC 
722 No match
723
724 /(?<=A\p{Nd})XYZ/8
725     A2XYZ
726  0: XYZ
727     123A5XYZPQR
728  0: XYZ
729     ABA\x{660}XYZpqr
730  0: XYZ
731     ** Failers
732 No match
733     AXYZ
734 No match
735     XYZ     
736 No match
737     
738 /(?<!\pL)XYZ/8
739     1XYZ
740  0: XYZ
741     AB=XYZ.. 
742  0: XYZ
743     XYZ 
744  0: XYZ
745     ** Failers
746 No match
747     WXYZ 
748 No match
749
750 /[\p{Nd}]/8
751     1234
752  0: 1
753
754 /[\p{Nd}+-]+/8
755     1234
756  0: 1234
757     12-34
758  0: 12-34
759     12+\x{661}-34  
760  0: 12+\x{661}-34
761     ** Failers
762 No match
763     abcd  
764 No match
765
766 /[\P{Nd}]+/8
767     abcd
768  0: abcd
769     ** Failers
770  0: ** Failers
771     1234
772 No match
773
774 /\D+/8O
775     11111111111111111111111111111111111111111111111111111111111111111111111
776 No match
777     aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
778 Matched, but offsets vector is too small to show all matches
779  0: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
780  1: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
781  2: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
782  3: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
783  4: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
784  5: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
785  6: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
786  7: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
787  8: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
788  9: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
789 10: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
790 11: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
791 12: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
792 13: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
793 14: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
794 15: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
795 16: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
796 17: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
797 18: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
798 19: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
799 20: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
800 21: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
801      
802 /\P{Nd}+/8O
803     11111111111111111111111111111111111111111111111111111111111111111111111
804 No match
805     aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
806 Matched, but offsets vector is too small to show all matches
807  0: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
808  1: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
809  2: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
810  3: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
811  4: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
812  5: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
813  6: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
814  7: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
815  8: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
816  9: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
817 10: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
818 11: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
819 12: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
820 13: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
821 14: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
822 15: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
823 16: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
824 17: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
825 18: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
826 19: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
827 20: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
828 21: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
829
830 /[\D]+/8O
831     11111111111111111111111111111111111111111111111111111111111111111111111
832 No match
833     aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
834 Matched, but offsets vector is too small to show all matches
835  0: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
836  1: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
837  2: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
838  3: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
839  4: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
840  5: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
841  6: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
842  7: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
843  8: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
844  9: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
845 10: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
846 11: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
847 12: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
848 13: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
849 14: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
850 15: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
851 16: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
852 17: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
853 18: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
854 19: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
855 20: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
856 21: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
857
858 /[\P{Nd}]+/8O
859     11111111111111111111111111111111111111111111111111111111111111111111111
860 No match
861     aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
862 Matched, but offsets vector is too small to show all matches
863  0: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
864  1: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
865  2: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
866  3: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
867  4: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
868  5: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
869  6: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
870  7: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
871  8: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
872  9: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
873 10: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
874 11: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
875 12: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
876 13: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
877 14: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
878 15: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
879 16: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
880 17: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
881 18: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
882 19: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
883 20: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
884 21: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
885
886 /[\D\P{Nd}]+/8O
887     11111111111111111111111111111111111111111111111111111111111111111111111
888 No match
889     aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
890 Matched, but offsets vector is too small to show all matches
891  0: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
892  1: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
893  2: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
894  3: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
895  4: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
896  5: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
897  6: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
898  7: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
899  8: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
900  9: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
901 10: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
902 11: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
903 12: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
904 13: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
905 14: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
906 15: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
907 16: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
908 17: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
909 18: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
910 19: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
911 20: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
912 21: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
913
914 /\pL/8
915     a
916  0: a
917     A 
918  0: A
919
920 /\pL/8i
921     a
922  0: a
923     A 
924  0: A
925     
926 /\p{Lu}/8 
927     A
928  0: A
929     aZ
930  0: Z
931     ** Failers
932  0: F
933     abc   
934 No match
935
936 /\p{Lu}/8i
937     A
938  0: A
939     aZ
940  0: Z
941     ** Failers
942  0: F
943     abc   
944 No match
945
946 /\p{Ll}/8 
947     a
948  0: a
949     Az
950  0: z
951     ** Failers
952  0: a
953     ABC   
954 No match
955
956 /\p{Ll}/8i 
957     a
958  0: a
959     Az
960  0: z
961     ** Failers
962  0: a
963     ABC   
964 No match
965
966 /^\x{c0}$/8i
967     \x{c0}
968  0: \x{c0}
969     \x{e0} 
970  0: \x{e0}
971
972 /^\x{e0}$/8i
973     \x{c0}
974  0: \x{c0}
975     \x{e0} 
976  0: \x{e0}
977
978 /A\x{391}\x{10427}\x{ff3a}\x{1fb0}/8
979     A\x{391}\x{10427}\x{ff3a}\x{1fb0}
980  0: A\x{391}\x{10427}\x{ff3a}\x{1fb0}
981     ** Failers
982 No match
983     a\x{391}\x{10427}\x{ff3a}\x{1fb0}   
984 No match
985     A\x{3b1}\x{10427}\x{ff3a}\x{1fb0}
986 No match
987     A\x{391}\x{1044F}\x{ff3a}\x{1fb0}
988 No match
989     A\x{391}\x{10427}\x{ff5a}\x{1fb0}
990 No match
991     A\x{391}\x{10427}\x{ff3a}\x{1fb8}
992 No match
993
994 /A\x{391}\x{10427}\x{ff3a}\x{1fb0}/8i
995     A\x{391}\x{10427}\x{ff3a}\x{1fb0}
996  0: A\x{391}\x{10427}\x{ff3a}\x{1fb0}
997     a\x{391}\x{10427}\x{ff3a}\x{1fb0}   
998  0: a\x{391}\x{10427}\x{ff3a}\x{1fb0}
999     A\x{3b1}\x{10427}\x{ff3a}\x{1fb0}
1000  0: A\x{3b1}\x{10427}\x{ff3a}\x{1fb0}
1001     A\x{391}\x{1044F}\x{ff3a}\x{1fb0}
1002  0: A\x{391}\x{1044f}\x{ff3a}\x{1fb0}
1003     A\x{391}\x{10427}\x{ff5a}\x{1fb0}
1004  0: A\x{391}\x{10427}\x{ff5a}\x{1fb0}
1005     A\x{391}\x{10427}\x{ff3a}\x{1fb8}
1006  0: A\x{391}\x{10427}\x{ff3a}\x{1fb8}
1007
1008 /\x{391}+/8i
1009     \x{391}\x{3b1}\x{3b1}\x{3b1}\x{391}
1010  0: \x{391}\x{3b1}\x{3b1}\x{3b1}\x{391}
1011
1012 /\x{391}{3,5}(.)/8i
1013     \x{391}\x{3b1}\x{3b1}\x{3b1}\x{391}X
1014  0: \x{391}\x{3b1}\x{3b1}\x{3b1}\x{391}X
1015  1: \x{391}\x{3b1}\x{3b1}\x{3b1}\x{391}
1016  2: \x{391}\x{3b1}\x{3b1}\x{3b1}
1017
1018 /\x{391}{3,5}?(.)/8i
1019     \x{391}\x{3b1}\x{3b1}\x{3b1}\x{391}X
1020  0: \x{391}\x{3b1}\x{3b1}\x{3b1}\x{391}X
1021  1: \x{391}\x{3b1}\x{3b1}\x{3b1}\x{391}
1022  2: \x{391}\x{3b1}\x{3b1}\x{3b1}
1023
1024 /[\x{391}\x{ff3a}]/8i
1025     \x{391}
1026  0: \x{391}
1027     \x{ff3a}
1028  0: \x{ff3a}
1029     \x{3b1}
1030  0: \x{3b1}
1031     \x{ff5a}   
1032  0: \x{ff5a}
1033     
1034 /[\x{c0}\x{391}]/8i
1035     \x{c0}
1036  0: \x{c0}
1037     \x{e0} 
1038  0: \x{e0}
1039
1040 /[\x{105}-\x{109}]/8i
1041     \x{104}
1042  0: \x{104}
1043     \x{105}
1044  0: \x{105}
1045     \x{109}  
1046  0: \x{109}
1047     ** Failers
1048 No match
1049     \x{100}
1050 No match
1051     \x{10a} 
1052 No match
1053     
1054 /[z-\x{100}]/8i 
1055     Z
1056  0: Z
1057     z
1058  0: z
1059     \x{39c}
1060  0: \x{39c}
1061     \x{178}
1062  0: \x{178}
1063     |
1064  0: |
1065     \x{80}
1066  0: \x{80}
1067     \x{ff}
1068  0: \x{ff}
1069     \x{100}
1070  0: \x{100}
1071     \x{101} 
1072  0: \x{101}
1073     ** Failers
1074 No match
1075     \x{102}
1076 No match
1077     Y
1078 No match
1079     y           
1080 No match
1081
1082 /[z-\x{100}]/8i
1083
1084 /^\X/8
1085     A
1086  0: A
1087     A\x{300}BC 
1088  0: A\x{300}
1089     A\x{300}\x{301}\x{302}BC 
1090  0: A\x{300}\x{301}\x{302}
1091     *** Failers
1092  0: *
1093     \x{300}  
1094  0: \x{300}
1095
1096 /^[\X]/8
1097     X123
1098  0: X
1099     *** Failers
1100 No match
1101     AXYZ
1102 No match
1103
1104 /^(\X*)C/8
1105     A\x{300}\x{301}\x{302}BCA\x{300}\x{301} 
1106  0: A\x{300}\x{301}\x{302}BC
1107     A\x{300}\x{301}\x{302}BCA\x{300}\x{301}C 
1108  0: A\x{300}\x{301}\x{302}BCA\x{300}\x{301}C
1109  1: A\x{300}\x{301}\x{302}BC
1110
1111 /^(\X*?)C/8
1112     A\x{300}\x{301}\x{302}BCA\x{300}\x{301} 
1113  0: A\x{300}\x{301}\x{302}BC
1114     A\x{300}\x{301}\x{302}BCA\x{300}\x{301}C 
1115  0: A\x{300}\x{301}\x{302}BCA\x{300}\x{301}C
1116  1: A\x{300}\x{301}\x{302}BC
1117
1118 /^(\X*)(.)/8
1119     A\x{300}\x{301}\x{302}BCA\x{300}\x{301} 
1120  0: A\x{300}\x{301}\x{302}BCA
1121  1: A\x{300}\x{301}\x{302}BC
1122  2: A\x{300}\x{301}\x{302}B
1123  3: A
1124     A\x{300}\x{301}\x{302}BCA\x{300}\x{301}C 
1125  0: A\x{300}\x{301}\x{302}BCA\x{300}\x{301}C
1126  1: A\x{300}\x{301}\x{302}BCA
1127  2: A\x{300}\x{301}\x{302}BC
1128  3: A\x{300}\x{301}\x{302}B
1129  4: A
1130
1131 /^(\X*?)(.)/8
1132     A\x{300}\x{301}\x{302}BCA\x{300}\x{301} 
1133  0: A\x{300}\x{301}\x{302}BCA
1134  1: A\x{300}\x{301}\x{302}BC
1135  2: A\x{300}\x{301}\x{302}B
1136  3: A
1137     A\x{300}\x{301}\x{302}BCA\x{300}\x{301}C 
1138  0: A\x{300}\x{301}\x{302}BCA\x{300}\x{301}C
1139  1: A\x{300}\x{301}\x{302}BCA
1140  2: A\x{300}\x{301}\x{302}BC
1141  3: A\x{300}\x{301}\x{302}B
1142  4: A
1143
1144 /^\X(.)/8
1145     *** Failers
1146  0: **
1147     A\x{300}\x{301}\x{302}
1148 No match
1149
1150 /^\X{2,3}(.)/8
1151     A\x{300}\x{301}B\x{300}X
1152  0: A\x{300}\x{301}B\x{300}X
1153     A\x{300}\x{301}B\x{300}C\x{300}\x{301}
1154  0: A\x{300}\x{301}B\x{300}C
1155     A\x{300}\x{301}B\x{300}C\x{300}\x{301}X
1156  0: A\x{300}\x{301}B\x{300}C\x{300}\x{301}X
1157  1: A\x{300}\x{301}B\x{300}C
1158     A\x{300}\x{301}B\x{300}C\x{300}\x{301}DA\x{300}X
1159  0: A\x{300}\x{301}B\x{300}C\x{300}\x{301}D
1160  1: A\x{300}\x{301}B\x{300}C
1161     
1162 /^\X{2,3}?(.)/8
1163     A\x{300}\x{301}B\x{300}X
1164  0: A\x{300}\x{301}B\x{300}X
1165     A\x{300}\x{301}B\x{300}C\x{300}\x{301}
1166  0: A\x{300}\x{301}B\x{300}C
1167     A\x{300}\x{301}B\x{300}C\x{300}\x{301}X
1168  0: A\x{300}\x{301}B\x{300}C\x{300}\x{301}X
1169  1: A\x{300}\x{301}B\x{300}C
1170     A\x{300}\x{301}B\x{300}C\x{300}\x{301}DA\x{300}X
1171  0: A\x{300}\x{301}B\x{300}C\x{300}\x{301}D
1172  1: A\x{300}\x{301}B\x{300}C
1173
1174 /^\pN{2,3}X/
1175     12X
1176  0: 12X
1177     123X
1178  0: 123X
1179     *** Failers
1180 No match
1181     X
1182 No match
1183     1X
1184 No match
1185     1234X     
1186 No match
1187
1188 /\x{100}/i8
1189     \x{100}   
1190  0: \x{100}
1191     \x{101} 
1192  0: \x{101}
1193     
1194 /^\p{Han}+/8
1195     \x{2e81}\x{3007}\x{2f804}\x{31a0}
1196  0: \x{2e81}\x{3007}\x{2f804}
1197     ** Failers
1198 No match
1199     \x{2e7f}  
1200 No match
1201
1202 /^\P{Katakana}+/8
1203     \x{3105}
1204  0: \x{3105}
1205     ** Failers
1206  0: ** Failers
1207     \x{30ff}  
1208 No match
1209
1210 /^[\p{Arabic}]/8
1211     \x{06e9}
1212  0: \x{6e9}
1213     \x{060b}
1214  0: \x{60b}
1215     ** Failers
1216 No match
1217     X\x{06e9}   
1218 No match
1219
1220 /^[\P{Yi}]/8
1221     \x{2f800}
1222  0: \x{2f800}
1223     ** Failers
1224  0: *
1225     \x{a014}
1226 No match
1227     \x{a4c6}   
1228 No match
1229
1230 /^\p{Any}X/8
1231     AXYZ
1232  0: AX
1233     \x{1234}XYZ 
1234  0: \x{1234}X
1235     ** Failers
1236 No match
1237     X  
1238 No match
1239     
1240 /^\P{Any}X/8
1241     ** Failers
1242 No match
1243     AX
1244 No match
1245     
1246 /^\p{Any}?X/8
1247     XYZ
1248  0: X
1249     AXYZ
1250  0: AX
1251     \x{1234}XYZ 
1252  0: \x{1234}X
1253     ** Failers
1254 No match
1255     ABXYZ   
1256 No match
1257
1258 /^\P{Any}?X/8
1259     XYZ
1260  0: X
1261     ** Failers
1262 No match
1263     AXYZ
1264 No match
1265     \x{1234}XYZ 
1266 No match
1267     ABXYZ   
1268 No match
1269
1270 /^\p{Any}+X/8
1271     AXYZ
1272  0: AX
1273     \x{1234}XYZ
1274  0: \x{1234}X
1275     A\x{1234}XYZ
1276  0: A\x{1234}X
1277     ** Failers
1278 No match
1279     XYZ
1280 No match
1281
1282 /^\P{Any}+X/8
1283     ** Failers
1284 No match
1285     AXYZ
1286 No match
1287     \x{1234}XYZ
1288 No match
1289     A\x{1234}XYZ
1290 No match
1291     XYZ
1292 No match
1293
1294 /^\p{Any}*X/8
1295     XYZ
1296  0: X
1297     AXYZ
1298  0: AX
1299     \x{1234}XYZ
1300  0: \x{1234}X
1301     A\x{1234}XYZ
1302  0: A\x{1234}X
1303     ** Failers
1304 No match
1305
1306 /^\P{Any}*X/8
1307     XYZ
1308  0: X
1309     ** Failers
1310 No match
1311     AXYZ
1312 No match
1313     \x{1234}XYZ
1314 No match
1315     A\x{1234}XYZ
1316 No match
1317
1318 /^[\p{Any}]X/8
1319     AXYZ
1320  0: AX
1321     \x{1234}XYZ 
1322  0: \x{1234}X
1323     ** Failers
1324 No match
1325     X  
1326 No match
1327     
1328 /^[\P{Any}]X/8
1329     ** Failers
1330 No match
1331     AX
1332 No match
1333     
1334 /^[\p{Any}]?X/8
1335     XYZ
1336  0: X
1337     AXYZ
1338  0: AX
1339     \x{1234}XYZ 
1340  0: \x{1234}X
1341     ** Failers
1342 No match
1343     ABXYZ   
1344 No match
1345
1346 /^[\P{Any}]?X/8
1347     XYZ
1348  0: X
1349     ** Failers
1350 No match
1351     AXYZ
1352 No match
1353     \x{1234}XYZ 
1354 No match
1355     ABXYZ   
1356 No match
1357
1358 /^[\p{Any}]+X/8
1359     AXYZ
1360  0: AX
1361     \x{1234}XYZ
1362  0: \x{1234}X
1363     A\x{1234}XYZ
1364  0: A\x{1234}X
1365     ** Failers
1366 No match
1367     XYZ
1368 No match
1369
1370 /^[\P{Any}]+X/8
1371     ** Failers
1372 No match
1373     AXYZ
1374 No match
1375     \x{1234}XYZ
1376 No match
1377     A\x{1234}XYZ
1378 No match
1379     XYZ
1380 No match
1381
1382 /^[\p{Any}]*X/8
1383     XYZ
1384  0: X
1385     AXYZ
1386  0: AX
1387     \x{1234}XYZ
1388  0: \x{1234}X
1389     A\x{1234}XYZ
1390  0: A\x{1234}X
1391     ** Failers
1392 No match
1393
1394 /^[\P{Any}]*X/8
1395     XYZ
1396  0: X
1397     ** Failers
1398 No match
1399     AXYZ
1400 No match
1401     \x{1234}XYZ
1402 No match
1403     A\x{1234}XYZ
1404 No match
1405
1406 /^\p{Any}{3,5}?/8
1407     abcdefgh
1408  0: abcde
1409  1: abcd
1410  2: abc
1411     \x{1234}\n\r\x{3456}xyz 
1412  0: \x{1234}\x{0a}\x{0d}\x{3456}x
1413  1: \x{1234}\x{0a}\x{0d}\x{3456}
1414  2: \x{1234}\x{0a}\x{0d}
1415
1416 /^\p{Any}{3,5}/8
1417     abcdefgh
1418  0: abcde
1419     \x{1234}\n\r\x{3456}xyz 
1420  0: \x{1234}\x{0a}\x{0d}\x{3456}x
1421
1422 /^\P{Any}{3,5}?/8
1423     ** Failers
1424 No match
1425     abcdefgh
1426 No match
1427     \x{1234}\n\r\x{3456}xyz 
1428 No match
1429
1430 /^\p{L&}X/8
1431      AXY
1432  0: AX
1433      aXY
1434  0: aX
1435      \x{1c5}XY
1436  0: \x{1c5}X
1437      ** Failers
1438 No match
1439      \x{1bb}XY
1440 No match
1441      \x{2b0}XY
1442 No match
1443      !XY      
1444 No match
1445
1446 /^[\p{L&}]X/8
1447      AXY
1448  0: AX
1449      aXY
1450  0: aX
1451      \x{1c5}XY
1452  0: \x{1c5}X
1453      ** Failers
1454 No match
1455      \x{1bb}XY
1456 No match
1457      \x{2b0}XY
1458 No match
1459      !XY      
1460 No match
1461
1462 /^\p{L&}+X/8
1463      AXY
1464  0: AX
1465      aXY
1466  0: aX
1467      AbcdeXyz 
1468  0: AbcdeX
1469      \x{1c5}AbXY
1470  0: \x{1c5}AbX
1471      abcDEXypqreXlmn 
1472  0: abcDEXypqreX
1473  1: abcDEX
1474      ** Failers
1475 No match
1476      \x{1bb}XY
1477 No match
1478      \x{2b0}XY
1479 No match
1480      !XY      
1481 No match
1482
1483 /^[\p{L&}]+X/8
1484      AXY
1485  0: AX
1486      aXY
1487  0: aX
1488      AbcdeXyz 
1489  0: AbcdeX
1490      \x{1c5}AbXY
1491  0: \x{1c5}AbX
1492      abcDEXypqreXlmn 
1493  0: abcDEXypqreX
1494  1: abcDEX
1495      ** Failers
1496 No match
1497      \x{1bb}XY
1498 No match
1499      \x{2b0}XY
1500 No match
1501      !XY      
1502 No match
1503
1504 /^\p{L&}+?X/8
1505      AXY
1506  0: AX
1507      aXY
1508  0: aX
1509      AbcdeXyz 
1510  0: AbcdeX
1511      \x{1c5}AbXY
1512  0: \x{1c5}AbX
1513      abcDEXypqreXlmn 
1514  0: abcDEXypqreX
1515  1: abcDEX
1516      ** Failers
1517 No match
1518      \x{1bb}XY
1519 No match
1520      \x{2b0}XY
1521 No match
1522      !XY      
1523 No match
1524
1525 /^[\p{L&}]+?X/8
1526      AXY
1527  0: AX
1528      aXY
1529  0: aX
1530      AbcdeXyz 
1531  0: AbcdeX
1532      \x{1c5}AbXY
1533  0: \x{1c5}AbX
1534      abcDEXypqreXlmn 
1535  0: abcDEXypqreX
1536  1: abcDEX
1537      ** Failers
1538 No match
1539      \x{1bb}XY
1540 No match
1541      \x{2b0}XY
1542 No match
1543      !XY      
1544 No match
1545
1546 /^\P{L&}X/8
1547      !XY
1548  0: !X
1549      \x{1bb}XY
1550  0: \x{1bb}X
1551      \x{2b0}XY
1552  0: \x{2b0}X
1553      ** Failers
1554 No match
1555      \x{1c5}XY
1556 No match
1557      AXY      
1558 No match
1559
1560 /^[\P{L&}]X/8
1561      !XY
1562  0: !X
1563      \x{1bb}XY
1564  0: \x{1bb}X
1565      \x{2b0}XY
1566  0: \x{2b0}X
1567      ** Failers
1568 No match
1569      \x{1c5}XY
1570 No match
1571      AXY      
1572 No match
1573
1574 /^\x{023a}+?(\x{0130}+)/8i
1575   \x{023a}\x{2c65}\x{0130}
1576  0: \x{23a}\x{2c65}\x{130}
1577   
1578 /^\x{023a}+([^X])/8i
1579   \x{023a}\x{2c65}X
1580  0: \x{23a}\x{2c65}
1581  
1582 /\x{c0}+\x{116}+/8i
1583     \x{c0}\x{e0}\x{116}\x{117}
1584  0: \x{c0}\x{e0}\x{116}\x{117}
1585
1586 /[\x{c0}\x{116}]+/8i
1587     \x{c0}\x{e0}\x{116}\x{117}
1588  0: \x{c0}\x{e0}\x{116}\x{117}
1589
1590 /Check property support in non-UTF-8 mode/
1591  
1592 /\p{L}{4}/
1593     123abcdefg
1594  0: abcd
1595     123abc\xc4\xc5zz
1596  0: abc\xc4
1597
1598 /\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
1599     \x{102A4}\x{AA52}\x{A91D}\x{1C46}\x{10283}\x{1092E}\x{1C6B}\x{A93B}\x{A8BF}\x{1BA0}\x{A50A}====
1600  0: \x{102a4}\x{aa52}\x{a91d}\x{1c46}\x{10283}\x{1092e}\x{1c6b}\x{a93b}\x{a8bf}\x{1ba0}\x{a50a}
1601
1602 /\x{a77d}\x{1d79}/8i
1603     \x{a77d}\x{1d79}
1604  0: \x{a77d}\x{1d79}
1605     \x{1d79}\x{a77d} 
1606  0: \x{1d79}\x{a77d}
1607
1608 /\x{a77d}\x{1d79}/8
1609     \x{a77d}\x{1d79}
1610  0: \x{a77d}\x{1d79}
1611     ** Failers 
1612 No match
1613     \x{1d79}\x{a77d} 
1614 No match
1615
1616 /^\p{Xan}/8
1617     ABCD
1618  0: A
1619     1234
1620  0: 1
1621     \x{6ca}
1622  0: \x{6ca}
1623     \x{a6c}
1624  0: \x{a6c}
1625     \x{10a7}   
1626  0: \x{10a7}
1627     ** Failers
1628 No match
1629     _ABC   
1630 No match
1631
1632 /^\p{Xan}+/8
1633     ABCD1234\x{6ca}\x{a6c}\x{10a7}_
1634  0: ABCD1234\x{6ca}\x{a6c}\x{10a7}
1635     ** Failers
1636 No match
1637     _ABC   
1638 No match
1639
1640 /^\p{Xan}*/8
1641     ABCD1234\x{6ca}\x{a6c}\x{10a7}_
1642  0: ABCD1234\x{6ca}\x{a6c}\x{10a7}
1643     
1644 /^\p{Xan}{2,9}/8
1645     ABCD1234\x{6ca}\x{a6c}\x{10a7}_
1646  0: ABCD1234\x{6ca}
1647     
1648 /^[\p{Xan}]/8
1649     ABCD1234_
1650  0: A
1651     1234abcd_
1652  0: 1
1653     \x{6ca}
1654  0: \x{6ca}
1655     \x{a6c}
1656  0: \x{a6c}
1657     \x{10a7}   
1658  0: \x{10a7}
1659     ** Failers
1660 No match
1661     _ABC   
1662 No match
1663  
1664 /^[\p{Xan}]+/8
1665     ABCD1234\x{6ca}\x{a6c}\x{10a7}_
1666  0: ABCD1234\x{6ca}\x{a6c}\x{10a7}
1667     ** Failers
1668 No match
1669     _ABC   
1670 No match
1671
1672 /^>\p{Xsp}/8
1673     >\x{1680}\x{2028}\x{0b}
1674  0: >\x{1680}
1675     ** Failers
1676 No match
1677     \x{0b} 
1678 No match
1679
1680 /^>\p{Xsp}+/8O
1681     > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b}
1682  0: > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b}
1683  1: > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}
1684  2: > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}
1685  3: > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}
1686  4: > \x{09}\x{0a}\x{0c}\x{0d}
1687  5: > \x{09}\x{0a}\x{0c}
1688  6: > \x{09}\x{0a}
1689  7: > \x{09}
1690  8: > 
1691
1692 /^>\p{Xsp}*/8O
1693     > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b}
1694  0: > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b}
1695  1: > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}
1696  2: > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}
1697  3: > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}
1698  4: > \x{09}\x{0a}\x{0c}\x{0d}
1699  5: > \x{09}\x{0a}\x{0c}
1700  6: > \x{09}\x{0a}
1701  7: > \x{09}
1702  8: > 
1703  9: >
1704     
1705 /^>\p{Xsp}{2,9}/8O
1706     > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b}
1707  0: > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b}
1708  1: > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}
1709  2: > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}
1710  3: > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}
1711  4: > \x{09}\x{0a}\x{0c}\x{0d}
1712  5: > \x{09}\x{0a}\x{0c}
1713  6: > \x{09}\x{0a}
1714  7: > \x{09}
1715     
1716 /^>[\p{Xsp}]/8O
1717     >\x{2028}\x{0b}
1718  0: >\x{2028}
1719  
1720 /^>[\p{Xsp}]+/8O
1721     > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b}
1722  0: > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b}
1723  1: > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}
1724  2: > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}
1725  3: > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}
1726  4: > \x{09}\x{0a}\x{0c}\x{0d}
1727  5: > \x{09}\x{0a}\x{0c}
1728  6: > \x{09}\x{0a}
1729  7: > \x{09}
1730  8: > 
1731
1732 /^>\p{Xps}/8
1733     >\x{1680}\x{2028}\x{0b}
1734  0: >\x{1680}
1735     >\x{a0} 
1736  0: >\x{a0}
1737     ** Failers
1738 No match
1739     \x{0b} 
1740 No match
1741
1742 /^>\p{Xps}+/8
1743     > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b}
1744  0: > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b}
1745
1746 /^>\p{Xps}+?/8
1747     >\x{1680}\x{2028}\x{0b}
1748  0: >\x{1680}\x{2028}\x{0b}
1749  1: >\x{1680}\x{2028}
1750  2: >\x{1680}
1751
1752 /^>\p{Xps}*/8
1753     > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b}
1754  0: > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b}
1755     
1756 /^>\p{Xps}{2,9}/8
1757     > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b}
1758  0: > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b}
1759     
1760 /^>\p{Xps}{2,9}?/8
1761     > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b}
1762  0: > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b}
1763  1: > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}
1764  2: > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}
1765  3: > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}
1766  4: > \x{09}\x{0a}\x{0c}\x{0d}
1767  5: > \x{09}\x{0a}\x{0c}
1768  6: > \x{09}\x{0a}
1769  7: > \x{09}
1770     
1771 /^>[\p{Xps}]/8
1772     >\x{2028}\x{0b}
1773  0: >\x{2028}
1774  
1775 /^>[\p{Xps}]+/8
1776     > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b}
1777  0: > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b}
1778
1779 /^\p{Xwd}/8
1780     ABCD
1781  0: A
1782     1234
1783  0: 1
1784     \x{6ca}
1785  0: \x{6ca}
1786     \x{a6c}
1787  0: \x{a6c}
1788     \x{10a7}
1789  0: \x{10a7}
1790     _ABC    
1791  0: _
1792     ** Failers
1793 No match
1794     [] 
1795 No match
1796
1797 /^\p{Xwd}+/8
1798     ABCD1234\x{6ca}\x{a6c}\x{10a7}_
1799  0: ABCD1234\x{6ca}\x{a6c}\x{10a7}_
1800
1801 /^\p{Xwd}*/8
1802     ABCD1234\x{6ca}\x{a6c}\x{10a7}_
1803  0: ABCD1234\x{6ca}\x{a6c}\x{10a7}_
1804     
1805 /^\p{Xwd}{2,9}/8
1806     A_12\x{6ca}\x{a6c}\x{10a7}
1807  0: A_12\x{6ca}\x{a6c}\x{10a7}
1808     
1809 /^[\p{Xwd}]/8
1810     ABCD1234_
1811  0: A
1812     1234abcd_
1813  0: 1
1814     \x{6ca}
1815  0: \x{6ca}
1816     \x{a6c}
1817  0: \x{a6c}
1818     \x{10a7}   
1819  0: \x{10a7}
1820     _ABC 
1821  0: _
1822     ** Failers
1823 No match
1824     []   
1825 No match
1826  
1827 /^[\p{Xwd}]+/8
1828     ABCD1234\x{6ca}\x{a6c}\x{10a7}_
1829  0: ABCD1234\x{6ca}\x{a6c}\x{10a7}_
1830
1831 /-- Unicode properties for \b abd \B --/
1832
1833 /\b...\B/8W
1834     abc_
1835  0: abc
1836     \x{37e}abc\x{376} 
1837  0: abc
1838     \x{37e}\x{376}\x{371}\x{393}\x{394} 
1839  0: \x{376}\x{371}\x{393}
1840     !\x{c0}++\x{c1}\x{c2} 
1841  0: ++\x{c1}
1842     !\x{c0}+++++ 
1843  0: \x{c0}++
1844
1845 /-- Without PCRE_UCP, non-ASCII always fail, even if < 256  --/
1846
1847 /\b...\B/8
1848     abc_
1849  0: abc
1850     ** Failers 
1851  0: Fai
1852     \x{37e}abc\x{376} 
1853 No match
1854     \x{37e}\x{376}\x{371}\x{393}\x{394} 
1855 No match
1856     !\x{c0}++\x{c1}\x{c2} 
1857 No match
1858     !\x{c0}+++++ 
1859 No match
1860
1861 /-- With PCRE_UCP, non-UTF8 chars that are < 256 still check properties  --/
1862
1863 /\b...\B/W
1864     abc_
1865  0: abc
1866     !\x{c0}++\x{c1}\x{c2} 
1867  0: ++\xc1
1868     !\x{c0}+++++ 
1869  0: \xc0++
1870     
1871 /-- Caseless single negated characters > 127 need UCP support --/
1872
1873 /[^\x{100}]/8i
1874     \x{100}\x{101}X
1875  0: X
1876
1877 /[^\x{100}]+/8i
1878     \x{100}\x{101}XX
1879  0: XX
1880
1881 /^\X/8
1882     A\P
1883  0: A
1884     A\P\P 
1885 Partial match: A
1886     A\x{300}\x{301}\P
1887  0: A\x{300}\x{301}
1888     A\x{300}\x{301}\P\P  
1889 Partial match: A\x{300}\x{301}
1890     A\x{301}\P
1891  0: A\x{301}
1892     A\x{301}\P\P  
1893 Partial match: A\x{301}
1894     
1895 /^\X{2,3}/8
1896     A\P
1897 Partial match: A
1898     A\P\P 
1899 Partial match: A
1900     AA\P
1901  0: AA
1902     AA\P\P  
1903 Partial match: AA
1904     A\x{300}\x{301}\P
1905 Partial match: A\x{300}\x{301}
1906     A\x{300}\x{301}\P\P  
1907 Partial match: A\x{300}\x{301}
1908     A\x{300}\x{301}A\x{300}\x{301}\P
1909  0: A\x{300}\x{301}A\x{300}\x{301}
1910     A\x{300}\x{301}A\x{300}\x{301}\P\P  
1911 Partial match: A\x{300}\x{301}A\x{300}\x{301}
1912
1913 /^\X{2}/8
1914     AA\P
1915  0: AA
1916     AA\P\P  
1917 Partial match: AA
1918     A\x{300}\x{301}A\x{300}\x{301}\P
1919  0: A\x{300}\x{301}A\x{300}\x{301}
1920     A\x{300}\x{301}A\x{300}\x{301}\P\P  
1921 Partial match: A\x{300}\x{301}A\x{300}\x{301}
1922     
1923 /^\X+/8
1924     AA\P
1925  0: AA
1926     AA\P\P  
1927 Partial match: AA
1928
1929 /^\X+?Z/8
1930     AA\P
1931 Partial match: AA
1932     AA\P\P 
1933 Partial match: AA
1934
1935 /-- These are tests for extended grapheme clusters --/ 
1936
1937 /^\X/8+
1938     G\x{34e}\x{34e}X
1939  0: G\x{34e}\x{34e}
1940  0+ X
1941     \x{34e}\x{34e}X
1942  0: \x{34e}\x{34e}
1943  0+ X
1944     \x04X
1945  0: \x{04}
1946  0+ X
1947     \x{1100}X
1948  0: \x{1100}
1949  0+ X
1950     \x{1100}\x{34e}X
1951  0: \x{1100}\x{34e}
1952  0+ X
1953     \x{1b04}\x{1b04}X 
1954  0: \x{1b04}\x{1b04}
1955  0+ X
1956     *These match up to the roman letters
1957  0: *
1958  0+ These match up to the roman letters
1959     \x{1111}\x{1111}L,L
1960  0: \x{1111}\x{1111}
1961  0+ L,L
1962     \x{1111}\x{1111}\x{1169}L,L,V
1963  0: \x{1111}\x{1111}\x{1169}
1964  0+ L,L,V
1965     \x{1111}\x{ae4c}L, LV
1966  0: \x{1111}\x{ae4c}
1967  0+ L, LV
1968     \x{1111}\x{ad89}L, LVT
1969  0: \x{1111}\x{ad89}
1970  0+ L, LVT
1971     \x{1111}\x{ae4c}\x{1169}L, LV, V
1972  0: \x{1111}\x{ae4c}\x{1169}
1973  0+ L, LV, V
1974     \x{1111}\x{ae4c}\x{1169}\x{1169}L, LV, V, V
1975  0: \x{1111}\x{ae4c}\x{1169}\x{1169}
1976  0+ L, LV, V, V
1977     \x{1111}\x{ae4c}\x{1169}\x{11fe}L, LV, V, T
1978  0: \x{1111}\x{ae4c}\x{1169}\x{11fe}
1979  0+ L, LV, V, T
1980     \x{1111}\x{ad89}\x{11fe}L, LVT, T
1981  0: \x{1111}\x{ad89}\x{11fe}
1982  0+ L, LVT, T
1983     \x{1111}\x{ad89}\x{11fe}\x{11fe}L, LVT, T, T
1984  0: \x{1111}\x{ad89}\x{11fe}\x{11fe}
1985  0+ L, LVT, T, T
1986     \x{ad89}\x{11fe}\x{11fe}LVT, T, T
1987  0: \x{ad89}\x{11fe}\x{11fe}
1988  0+ LVT, T, T
1989     *These match just the first codepoint (invalid sequence)
1990  0: *
1991  0+ These match just the first codepoint (invalid sequence)
1992     \x{1111}\x{11fe}L, T
1993  0: \x{1111}
1994  0+ \x{11fe}L, T
1995     \x{ae4c}\x{1111}LV, L
1996  0: \x{ae4c}
1997  0+ \x{1111}LV, L
1998     \x{ae4c}\x{ae4c}LV, LV
1999  0: \x{ae4c}
2000  0+ \x{ae4c}LV, LV
2001     \x{ae4c}\x{ad89}LV, LVT
2002  0: \x{ae4c}
2003  0+ \x{ad89}LV, LVT
2004     \x{1169}\x{1111}V, L
2005  0: \x{1169}
2006  0+ \x{1111}V, L
2007     \x{1169}\x{ae4c}V, LV
2008  0: \x{1169}
2009  0+ \x{ae4c}V, LV
2010     \x{1169}\x{ad89}V, LVT
2011  0: \x{1169}
2012  0+ \x{ad89}V, LVT
2013     \x{ad89}\x{1111}LVT, L
2014  0: \x{ad89}
2015  0+ \x{1111}LVT, L
2016     \x{ad89}\x{1169}LVT, V
2017  0: \x{ad89}
2018  0+ \x{1169}LVT, V
2019     \x{ad89}\x{ae4c}LVT, LV
2020  0: \x{ad89}
2021  0+ \x{ae4c}LVT, LV
2022     \x{ad89}\x{ad89}LVT, LVT
2023  0: \x{ad89}
2024  0+ \x{ad89}LVT, LVT
2025     \x{11fe}\x{1111}T, L
2026  0: \x{11fe}
2027  0+ \x{1111}T, L
2028     \x{11fe}\x{1169}T, V
2029  0: \x{11fe}
2030  0+ \x{1169}T, V
2031     \x{11fe}\x{ae4c}T, LV
2032  0: \x{11fe}
2033  0+ \x{ae4c}T, LV
2034     \x{11fe}\x{ad89}T, LVT
2035  0: \x{11fe}
2036  0+ \x{ad89}T, LVT
2037     *Test extend and spacing mark
2038  0: *
2039  0+ Test extend and spacing mark
2040     \x{1111}\x{ae4c}\x{0711}L, LV, extend
2041  0: \x{1111}\x{ae4c}\x{711}
2042  0+ L, LV, extend
2043     \x{1111}\x{ae4c}\x{1b04}L, LV, spacing mark
2044  0: \x{1111}\x{ae4c}\x{1b04}
2045  0+ L, LV, spacing mark
2046     \x{1111}\x{ae4c}\x{1b04}\x{0711}\x{1b04}L, LV, spacing mark, extend, spacing mark
2047  0: \x{1111}\x{ae4c}\x{1b04}\x{711}\x{1b04}
2048  0+ L, LV, spacing mark, extend, spacing mark
2049     *Test CR, LF, and control
2050  0: *
2051  0+ Test CR, LF, and control
2052     \x0d\x{0711}CR, extend
2053  0: \x{0d}
2054  0+ \x{711}CR, extend
2055     \x0d\x{1b04}CR, spacingmark
2056  0: \x{0d}
2057  0+ \x{1b04}CR, spacingmark
2058     \x0a\x{0711}LF, extend
2059  0: \x{0a}
2060  0+ \x{711}LF, extend
2061     \x0a\x{1b04}LF, spacingmark
2062  0: \x{0a}
2063  0+ \x{1b04}LF, spacingmark
2064     \x0b\x{0711}Control, extend
2065  0: \x{0b}
2066  0+ \x{711}Control, extend
2067     \x09\x{1b04}Control, spacingmark
2068  0: \x{09}
2069  0+ \x{1b04}Control, spacingmark
2070     *There are no Prepend characters, so we can't test Prepend, CR
2071  0: *
2072  0+ There are no Prepend characters, so we can't test Prepend, CR
2073     
2074 /^(?>\X{2})X/8+
2075     \x{1111}\x{ae4c}\x{1111}\x{ae4c}X
2076  0: \x{1111}\x{ae4c}\x{1111}\x{ae4c}X
2077  0+ 
2078     
2079 /^\X{2,4}X/8+
2080     \x{1111}\x{ae4c}\x{1111}\x{ae4c}X
2081  0: \x{1111}\x{ae4c}\x{1111}\x{ae4c}X
2082  0+ 
2083     \x{1111}\x{ae4c}\x{1111}\x{ae4c}\x{1111}\x{ae4c}X
2084  0: \x{1111}\x{ae4c}\x{1111}\x{ae4c}\x{1111}\x{ae4c}X
2085  0+ 
2086     \x{1111}\x{ae4c}\x{1111}\x{ae4c}\x{1111}\x{ae4c}\x{1111}\x{ae4c}X
2087  0: \x{1111}\x{ae4c}\x{1111}\x{ae4c}\x{1111}\x{ae4c}\x{1111}\x{ae4c}X
2088  0+ 
2089
2090 /^\X{2,4}?X/8+
2091     \x{1111}\x{ae4c}\x{1111}\x{ae4c}X
2092  0: \x{1111}\x{ae4c}\x{1111}\x{ae4c}X
2093  0+ 
2094     \x{1111}\x{ae4c}\x{1111}\x{ae4c}\x{1111}\x{ae4c}X
2095  0: \x{1111}\x{ae4c}\x{1111}\x{ae4c}\x{1111}\x{ae4c}X
2096  0+ 
2097     \x{1111}\x{ae4c}\x{1111}\x{ae4c}\x{1111}\x{ae4c}\x{1111}\x{ae4c}X
2098  0: \x{1111}\x{ae4c}\x{1111}\x{ae4c}\x{1111}\x{ae4c}\x{1111}\x{ae4c}X
2099  0+ 
2100
2101 /-- --/
2102
2103 /\x{1e9e}+/8i
2104     \x{1e9e}\x{00df}
2105  0: \x{1e9e}\x{df}
2106
2107 /[z\x{1e9e}]+/8i
2108     \x{1e9e}\x{00df}
2109  0: \x{1e9e}\x{df}
2110
2111 /\x{00df}+/8i
2112     \x{1e9e}\x{00df}
2113  0: \x{1e9e}\x{df}
2114
2115 /[z\x{00df}]+/8i
2116     \x{1e9e}\x{00df}
2117  0: \x{1e9e}\x{df}
2118
2119 /\x{1f88}+/8i
2120     \x{1f88}\x{1f80} 
2121  0: \x{1f88}\x{1f80}
2122
2123 /[z\x{1f88}]+/8i
2124     \x{1f88}\x{1f80} 
2125  0: \x{1f88}\x{1f80}
2126
2127 /-- Perl matches these --/
2128
2129 /\x{00b5}+/8i
2130     \x{00b5}\x{039c}\x{03bc}
2131  0: \x{b5}\x{39c}\x{3bc}
2132
2133 /\x{039c}+/8i
2134     \x{00b5}\x{039c}\x{03bc}
2135  0: \x{b5}\x{39c}\x{3bc}
2136
2137 /\x{03bc}+/8i
2138     \x{00b5}\x{039c}\x{03bc}
2139  0: \x{b5}\x{39c}\x{3bc}
2140
2141
2142 /\x{00c5}+/8i
2143     \x{00c5}\x{00e5}\x{212b}
2144  0: \x{c5}\x{e5}\x{212b}
2145
2146 /\x{00e5}+/8i
2147     \x{00c5}\x{00e5}\x{212b}
2148  0: \x{c5}\x{e5}\x{212b}
2149
2150 /\x{212b}+/8i
2151     \x{00c5}\x{00e5}\x{212b}
2152  0: \x{c5}\x{e5}\x{212b}
2153
2154
2155 /\x{01c4}+/8i
2156     \x{01c4}\x{01c5}\x{01c6}
2157  0: \x{1c4}\x{1c5}\x{1c6}
2158
2159 /\x{01c5}+/8i
2160     \x{01c4}\x{01c5}\x{01c6}
2161  0: \x{1c4}\x{1c5}\x{1c6}
2162
2163 /\x{01c6}+/8i
2164     \x{01c4}\x{01c5}\x{01c6}
2165  0: \x{1c4}\x{1c5}\x{1c6}
2166
2167
2168 /\x{01c7}+/8i
2169     \x{01c7}\x{01c8}\x{01c9}
2170  0: \x{1c7}\x{1c8}\x{1c9}
2171
2172 /\x{01c8}+/8i
2173     \x{01c7}\x{01c8}\x{01c9}
2174  0: \x{1c7}\x{1c8}\x{1c9}
2175
2176 /\x{01c9}+/8i
2177     \x{01c7}\x{01c8}\x{01c9}
2178  0: \x{1c7}\x{1c8}\x{1c9}
2179
2180
2181 /\x{01ca}+/8i
2182     \x{01ca}\x{01cb}\x{01cc}
2183  0: \x{1ca}\x{1cb}\x{1cc}
2184
2185 /\x{01cb}+/8i
2186     \x{01ca}\x{01cb}\x{01cc}
2187  0: \x{1ca}\x{1cb}\x{1cc}
2188
2189 /\x{01cc}+/8i
2190     \x{01ca}\x{01cb}\x{01cc}
2191  0: \x{1ca}\x{1cb}\x{1cc}
2192
2193
2194 /\x{01f1}+/8i
2195     \x{01f1}\x{01f2}\x{01f3}
2196  0: \x{1f1}\x{1f2}\x{1f3}
2197
2198 /\x{01f2}+/8i
2199     \x{01f1}\x{01f2}\x{01f3}
2200  0: \x{1f1}\x{1f2}\x{1f3}
2201
2202 /\x{01f3}+/8i
2203     \x{01f1}\x{01f2}\x{01f3}
2204  0: \x{1f1}\x{1f2}\x{1f3}
2205
2206
2207 /\x{0345}+/8i
2208     \x{0345}\x{0399}\x{03b9}\x{1fbe}
2209  0: \x{345}\x{399}\x{3b9}\x{1fbe}
2210
2211 /\x{0399}+/8i
2212     \x{0345}\x{0399}\x{03b9}\x{1fbe}
2213  0: \x{345}\x{399}\x{3b9}\x{1fbe}
2214
2215 /\x{03b9}+/8i
2216     \x{0345}\x{0399}\x{03b9}\x{1fbe}
2217  0: \x{345}\x{399}\x{3b9}\x{1fbe}
2218
2219 /\x{1fbe}+/8i
2220     \x{0345}\x{0399}\x{03b9}\x{1fbe}
2221  0: \x{345}\x{399}\x{3b9}\x{1fbe}
2222
2223
2224 /\x{0392}+/8i
2225     \x{0392}\x{03b2}\x{03d0}
2226  0: \x{392}\x{3b2}\x{3d0}
2227
2228 /\x{03b2}+/8i
2229     \x{0392}\x{03b2}\x{03d0}
2230  0: \x{392}\x{3b2}\x{3d0}
2231
2232 /\x{03d0}+/8i
2233     \x{0392}\x{03b2}\x{03d0}
2234  0: \x{392}\x{3b2}\x{3d0}
2235     
2236
2237 /\x{0395}+/8i
2238     \x{0395}\x{03b5}\x{03f5}
2239  0: \x{395}\x{3b5}\x{3f5}
2240
2241 /\x{03b5}+/8i
2242     \x{0395}\x{03b5}\x{03f5}
2243  0: \x{395}\x{3b5}\x{3f5}
2244
2245 /\x{03f5}+/8i
2246     \x{0395}\x{03b5}\x{03f5}
2247  0: \x{395}\x{3b5}\x{3f5}
2248
2249
2250 /\x{0398}+/8i
2251     \x{0398}\x{03b8}\x{03d1}\x{03f4}
2252  0: \x{398}\x{3b8}\x{3d1}\x{3f4}
2253
2254 /\x{03b8}+/8i
2255     \x{0398}\x{03b8}\x{03d1}\x{03f4}
2256  0: \x{398}\x{3b8}\x{3d1}\x{3f4}
2257
2258 /\x{03d1}+/8i
2259     \x{0398}\x{03b8}\x{03d1}\x{03f4}
2260  0: \x{398}\x{3b8}\x{3d1}\x{3f4}
2261
2262 /\x{03f4}+/8i
2263     \x{0398}\x{03b8}\x{03d1}\x{03f4}
2264  0: \x{398}\x{3b8}\x{3d1}\x{3f4}
2265     
2266
2267 /\x{039a}+/8i
2268     \x{039a}\x{03ba}\x{03f0}
2269  0: \x{39a}\x{3ba}\x{3f0}
2270
2271 /\x{03ba}+/8i
2272     \x{039a}\x{03ba}\x{03f0}
2273  0: \x{39a}\x{3ba}\x{3f0}
2274
2275 /\x{03f0}+/8i
2276     \x{039a}\x{03ba}\x{03f0}
2277  0: \x{39a}\x{3ba}\x{3f0}
2278     
2279
2280 /\x{03a0}+/8i
2281     \x{03a0}\x{03c0}\x{03d6} 
2282  0: \x{3a0}\x{3c0}\x{3d6}
2283
2284 /\x{03c0}+/8i
2285     \x{03a0}\x{03c0}\x{03d6} 
2286  0: \x{3a0}\x{3c0}\x{3d6}
2287
2288 /\x{03d6}+/8i
2289     \x{03a0}\x{03c0}\x{03d6} 
2290  0: \x{3a0}\x{3c0}\x{3d6}
2291
2292
2293 /\x{03a1}+/8i
2294     \x{03a1}\x{03c1}\x{03f1}
2295  0: \x{3a1}\x{3c1}\x{3f1}
2296
2297 /\x{03c1}+/8i
2298     \x{03a1}\x{03c1}\x{03f1}
2299  0: \x{3a1}\x{3c1}\x{3f1}
2300
2301 /\x{03f1}+/8i
2302     \x{03a1}\x{03c1}\x{03f1}
2303  0: \x{3a1}\x{3c1}\x{3f1}
2304
2305
2306 /\x{03a3}+/8i
2307     \x{03A3}\x{03C2}\x{03C3}
2308  0: \x{3a3}\x{3c2}\x{3c3}
2309
2310 /\x{03c2}+/8i
2311     \x{03A3}\x{03C2}\x{03C3}
2312  0: \x{3a3}\x{3c2}\x{3c3}
2313
2314 /\x{03c3}+/8i
2315     \x{03A3}\x{03C2}\x{03C3}
2316  0: \x{3a3}\x{3c2}\x{3c3}
2317     
2318
2319 /\x{03a6}+/8i
2320     \x{03a6}\x{03c6}\x{03d5} 
2321  0: \x{3a6}\x{3c6}\x{3d5}
2322
2323 /\x{03c6}+/8i
2324     \x{03a6}\x{03c6}\x{03d5} 
2325  0: \x{3a6}\x{3c6}\x{3d5}
2326
2327 /\x{03d5}+/8i
2328     \x{03a6}\x{03c6}\x{03d5} 
2329  0: \x{3a6}\x{3c6}\x{3d5}
2330
2331
2332 /\x{03c9}+/8i
2333     \x{03c9}\x{03a9}\x{2126}
2334  0: \x{3c9}\x{3a9}\x{2126}
2335
2336 /\x{03a9}+/8i
2337     \x{03c9}\x{03a9}\x{2126}
2338  0: \x{3c9}\x{3a9}\x{2126}
2339
2340 /\x{2126}+/8i
2341     \x{03c9}\x{03a9}\x{2126}
2342  0: \x{3c9}\x{3a9}\x{2126}
2343     
2344
2345 /\x{1e60}+/8i
2346     \x{1e60}\x{1e61}\x{1e9b}
2347  0: \x{1e60}\x{1e61}\x{1e9b}
2348
2349 /\x{1e61}+/8i
2350     \x{1e60}\x{1e61}\x{1e9b}
2351  0: \x{1e60}\x{1e61}\x{1e9b}
2352
2353 /\x{1e9b}+/8i
2354     \x{1e60}\x{1e61}\x{1e9b}
2355  0: \x{1e60}\x{1e61}\x{1e9b}
2356     
2357
2358 /\x{1e9e}+/8i
2359     \x{1e9e}\x{00df}
2360  0: \x{1e9e}\x{df}
2361
2362 /\x{00df}+/8i
2363     \x{1e9e}\x{00df}
2364  0: \x{1e9e}\x{df}
2365     
2366
2367 /\x{1f88}+/8i
2368     \x{1f88}\x{1f80} 
2369  0: \x{1f88}\x{1f80}
2370
2371 /\x{1f80}+/8i
2372     \x{1f88}\x{1f80} 
2373  0: \x{1f88}\x{1f80}
2374
2375 /\x{004b}+/8i
2376     \x{004b}\x{006b}\x{212a}
2377  0: Kk\x{212a}
2378
2379 /\x{006b}+/8i
2380     \x{004b}\x{006b}\x{212a}
2381  0: Kk\x{212a}
2382
2383 /\x{212a}+/8i
2384     \x{004b}\x{006b}\x{212a}
2385  0: Kk\x{212a}
2386
2387
2388 /\x{0053}+/8i
2389     \x{0053}\x{0073}\x{017f}
2390  0: Ss\x{17f}
2391
2392 /\x{0073}+/8i
2393     \x{0053}\x{0073}\x{017f}
2394  0: Ss\x{17f}
2395
2396 /\x{017f}+/8i
2397     \x{0053}\x{0073}\x{017f}
2398  0: Ss\x{17f}
2399
2400 /ist/8i
2401     ikt
2402 No match
2403
2404 /is+t/8i
2405     iSs\x{17f}t
2406  0: iSs\x{17f}t
2407     ikt
2408 No match
2409
2410 /is+?t/8i
2411     ikt
2412 No match
2413
2414 /is?t/8i
2415     ikt
2416 No match
2417
2418 /is{2}t/8i
2419     iskt
2420 No match
2421
2422 /^\p{Xuc}/8
2423     $abc
2424  0: $
2425     @abc
2426  0: @
2427     `abc
2428  0: `
2429     \x{1234}abc
2430  0: \x{1234}
2431     ** Failers
2432 No match
2433     abc     
2434 No match
2435
2436 /^\p{Xuc}+/8
2437     $@`\x{a0}\x{1234}\x{e000}**
2438  0: $@`\x{a0}\x{1234}\x{e000}
2439     ** Failers
2440 No match
2441     \x{9f}
2442 No match
2443
2444 /^\p{Xuc}+?/8
2445     $@`\x{a0}\x{1234}\x{e000}**
2446  0: $@`\x{a0}\x{1234}\x{e000}
2447  1: $@`\x{a0}\x{1234}
2448  2: $@`\x{a0}
2449  3: $@`
2450  4: $@
2451  5: $
2452     ** Failers
2453 No match
2454     \x{9f}
2455 No match
2456
2457 /^\p{Xuc}+?\*/8
2458     $@`\x{a0}\x{1234}\x{e000}**
2459  0: $@`\x{a0}\x{1234}\x{e000}*
2460     ** Failers
2461 No match
2462     \x{9f}
2463 No match
2464
2465 /^\p{Xuc}++/8
2466     $@`\x{a0}\x{1234}\x{e000}**
2467  0: $@`\x{a0}\x{1234}\x{e000}
2468     ** Failers
2469 No match
2470     \x{9f}
2471 No match
2472
2473 /^\p{Xuc}{3,5}/8
2474     $@`\x{a0}\x{1234}\x{e000}**
2475  0: $@`\x{a0}\x{1234}
2476     ** Failers
2477 No match
2478     \x{9f}
2479 No match
2480
2481 /^\p{Xuc}{3,5}?/8
2482     $@`\x{a0}\x{1234}\x{e000}**
2483  0: $@`\x{a0}\x{1234}
2484  1: $@`\x{a0}
2485  2: $@`
2486     ** Failers
2487 No match
2488     \x{9f}
2489 No match
2490
2491 /^[\p{Xuc}]/8
2492     $@`\x{a0}\x{1234}\x{e000}**
2493  0: $
2494     ** Failers
2495 No match
2496     \x{9f}
2497 No match
2498
2499 /^[\p{Xuc}]+/8
2500     $@`\x{a0}\x{1234}\x{e000}**
2501  0: $@`\x{a0}\x{1234}\x{e000}
2502     ** Failers
2503 No match
2504     \x{9f}
2505 No match
2506
2507 /^\P{Xuc}/8
2508     abc
2509  0: a
2510     ** Failers
2511  0: *
2512     $abc
2513 No match
2514     @abc
2515 No match
2516     `abc
2517 No match
2518     \x{1234}abc
2519 No match
2520
2521 /^[\P{Xuc}]/8
2522     abc
2523  0: a
2524     ** Failers
2525  0: *
2526     $abc
2527 No match
2528     @abc
2529 No match
2530     `abc
2531 No match
2532     \x{1234}abc
2533 No match
2534
2535 /^A\s+Z/8W
2536     A\x{2005}Z
2537  0: A\x{2005}Z
2538     A\x{85}\x{180e}\x{2005}Z
2539  0: A\x{85}\x{180e}\x{2005}Z
2540
2541 /^A[\s]+Z/8W
2542     A\x{2005}Z
2543  0: A\x{2005}Z
2544     A\x{85}\x{180e}\x{2005}Z
2545  0: A\x{85}\x{180e}\x{2005}Z
2546
2547 /-- End of testinput10 --/