Lines Matching +full:- +full:x

1 # This set of tests checks the API, internals, and non-Perl stuff for UTF
3 # results in 8-bit, 16-bit, and 32-bit modes are excluded (see tests 10 and
11 # However, it *is* in that file for Unicode 10, but when I came to re-check,
14 # 2066-2069 are graphic and printable according to Perl, though they are
19 \x{061c}
23 \x{61c}
24 \x{2066}
25 \x{2067}
26 \x{2068}
27 \x{2069}
31 \x{61c}
32 \x{2066}
33 \x{2067}
34 \x{2068}
35 \x{2069}
38 \x{09}\x{0a}\x{1D}\x{20}\x{85}\x{a0}\x{61c}\x{1680}
39 \x{2028}\x{2029}\x{202f}\x{2065}\x{2066}\x{2067}\x{2068}\x{2069}
42 \x{09}\x{1D}\x{85}\x{61c}\x{2028}\x{2029}\x{2065}\x{2066}\x{2067}
43 \x{2068}\x{2069}
51 >\x{20}\x{a0}\x{1680}\x{180e}\x{2000}\x{202f}\x{9}\x{b}\x{2028}
54 A\x{85}\x{180e}\x{2005}Z
57 A\x{2005}Z
58 A\x{85}\x{2005}Z
62 \x{180e}
65 \x{180e}
68 \x{09}\x{0a}\x{1D}\x{20}\x{85}\x{a0}\x{61c}\x{1680}\x{180e}
72 \x{180e}
76 # ---------------------------------------------------------------------
78 /\x{110000}/IB,utf
82 /\x{ffffffff}/utf
86 /\x{100000000}/utf
90 /\x{d800}/utf
94 /\x{dfff}/utf
98 /\x{d7ff}/utf
102 /\x{e000}/utf
106 /^\x{100}a\x{1234}/utf
107 \x{100}a\x{1234}bcd
109 /\x{0041}\x{2262}\x{0391}\x{002e}/IB,utf
110 \x{0041}\x{2262}\x{0391}\x{002e}
112 /.{3,5}X/IB,utf
113 \x{212ab}\x{212ab}\x{212ab}\x{861}X
116 \x{212ab}\x{212ab}\x{212ab}\x{861}
122 \x{ff}
123 \x{100}
125 /\x{100}*(\d+|"(?1)")/utf
128 \x{100}1234
129 "\x{100}1234"
130 \x{100}\x{100}12ab
131 \x{100}\x{100}"12"
133 \x{100}\x{100}abcd
135 /\x{100}*/IB,utf
137 /a\x{100}*/IB,utf
139 /ab\x{100}*/IB,utf
141 /[\x{200}-\x{100}]/utf
143 /[Ā-Ą]/utf
144 \x{100}
145 \x{104}
147 \x{105}
148 \x{ff}
155 /[Ä-Ü]/utf
157 \x{d6}
159 /[Ä-Ü]/utf
160 Ö <-- Same with Study
161 \x{d6}
163 /[\x{c4}-\x{dc}]/utf
165 \x{d6}
167 /[\x{c4}-\x{dc}]/utf
168 Ö <-- Same with Study
169 \x{d6}
171 /[^\x{100}]abc(xyz(?1))/IB,utf
173 /(\x{100}(b(?2)c))?/IB,utf
175 /(\x{100}(b(?2)c)){0,2}/IB,utf
177 /(\x{100}(b(?1)c))?/IB,utf
179 /(\x{100}(b(?1)c)){0,2}/IB,utf
183 A\x{100}B
186 \x{100}X
188 # Use no_start_optimize because the first code unit is different in 8-bit from
197 A (x) (?41) B/x,utf
200 /^[\x{100}\E-\Q\E\x{150}]/B,utf
202 /^[\QĀ\E-\QŐ\E]/B,utf
205 …abc1 \x0aabc2 \x0babc3xx \x0cabc4 \x0dabc5xx \x0d\x0aabc6 \x{0085}abc7 \x{2028}abc8 \x{2029}abc9 J…
208 abc1\x0a abc2\x0b abc3\x0c abc4\x0d abc5\x0d\x0a abc6\x{0085} abc7\x{2028} abc8\x{2029} abc9
216 a\x{85}b
217 a\x{2028}b
218 a\x{2029}b
228 a\x0c\x{2028}\x{2029}b
229 a\x{85}b
231 a\n\r\x{85}\x0cb
238 a\x0c\x{2028}\x{2029}b
239 a\x{85}b
241 a\n\r\x{85}\x0cb
248 a\n\r\x{85}b
258 X X\x0a
259 X\x09X\x0b
261 \x{a0} X\x0a
264 \x09\x20\x{a0}X\x0a\x0b\x0c\x0d\x0a
265 \x09\x20\x{a0}\x0a\x0b\x0c\x0d\x0a
266 \x09\x20\x{a0}\x0a\x0b\x0c
268 \x09\x20\x{a0}\x0a\x0b
271 \x{3001}\x{3000}\x{2030}\x{2028}
272 X\x{180e}X\x{85}
274 \x{2009} X\x0a
277 \x{1680}\x{180e}\x{2007}X\x{2028}\x{2029}\x0c\x0d\x0a
278 \x09\x{205f}\x{a0}\x0a\x{2029}\x0c\x{2028}\x0a
279 \x09\x20\x{202f}\x0a\x0b\x0c
281 \x09\x{200a}\x{a0}\x{2028}\x0b
284 >\x{1680}
287 >\x{1680}\x{180e}\x{2000}\x{2003}\x{200a}\x{202f}\x{205f}\x{3000}<
296 \x{1ec5}
303 a\x{85}b
310 a\x{85}b
318 a\x{85}b
325 a\x{85}b
329 QQQ\x{2029}ABCaXYZ=!bPQR
331 a\x{2029}b
334 /[[:a\x{100}b:]]/utf
337 a\x{1234}b
344 a\nX\nX\x{1234}b
348 /(\x{de})\1/
349 \x{de}\x{de}
351 /X/newline=any,utf,firstline
352 A\x{1ec5}ABCXYZ
355 X\=ps
362 X\=ps
369 X\=ps
375 /X\x{123}{2,4}b/utf
376 X\=ps
377 X\x{123}\=ps
378 X\x{123}\x{123}\=ps
379 X\x{123}\x{123}\x{123}\=ps
380 X\x{123}\x{123}\x{123}\x{123}\=ps
382 /X\x{123}{2,4}?b/utf
383 X\=ps
384 X\x{123}\=ps
385 X\x{123}\x{123}\=ps
386 X\x{123}\x{123}\x{123}\=ps
387 X\x{123}\x{123}\x{123}\x{123}\=ps
389 /X\x{123}{2,4}+b/utf
390 X\=ps
391 X\x{123}\=ps
392 X\x{123}\x{123}\=ps
393 X\x{123}\x{123}\x{123}\=ps
394 X\x{123}\x{123}\x{123}\x{123}\=ps
396 /X\x{123}{2,4}b/utf
399 X\x{123}x\=ps
400 X\x{123}\x{123}x\=ps
401 X\x{123}\x{123}\x{123}x\=ps
402 X\x{123}\x{123}\x{123}\x{123}x\=ps
404 /X\x{123}{2,4}?b/utf
407 X\x{123}x\=ps
408 X\x{123}\x{123}x\=ps
409 X\x{123}\x{123}\x{123}x\=ps
410 X\x{123}\x{123}\x{123}\x{123}x\=ps
412 /X\x{123}{2,4}+b/utf
415 X\x{123}x\=ps
416 X\x{123}\x{123}x\=ps
417 X\x{123}\x{123}\x{123}x\=ps
418 X\x{123}\x{123}\x{123}\x{123}x\=ps
420 /X\d{2,4}b/utf
421 X\=ps
427 /X\d{2,4}?b/utf
428 X\=ps
434 /X\d{2,4}+b/utf
435 X\=ps
441 /X\D{2,4}b/utf
442 X\=ps
448 /X\D{2,4}?b/utf
449 X\=ps
455 /X\D{2,4}+b/utf
456 X\=ps
462 /X\D{2,4}b/utf
463 X\=ps
464 X\x{123}\=ps
465 X\x{123}\x{123}\=ps
466 X\x{123}\x{123}\x{123}\=ps
467 X\x{123}\x{123}\x{123}\x{123}\=ps
469 /X\D{2,4}?b/utf
470 X\=ps
471 X\x{123}\=ps
472 X\x{123}\x{123}\=ps
473 X\x{123}\x{123}\x{123}\=ps
474 X\x{123}\x{123}\x{123}\x{123}\=ps
476 /X\D{2,4}+b/utf
477 X\=ps
478 X\x{123}\=ps
479 X\x{123}\x{123}\=ps
480 X\x{123}\x{123}\x{123}\=ps
481 X\x{123}\x{123}\x{123}\x{123}\=ps
483 /X[abc]{2,4}b/utf
484 X\=ps
490 /X[abc]{2,4}?b/utf
491 X\=ps
497 /X[abc]{2,4}+b/utf
498 X\=ps
504 /X[abc\x{123}]{2,4}b/utf
505 X\=ps
506 X\x{123}\=ps
507 X\x{123}\x{123}\=ps
508 X\x{123}\x{123}\x{123}\=ps
509 X\x{123}\x{123}\x{123}\x{123}\=ps
511 /X[abc\x{123}]{2,4}?b/utf
512 X\=ps
513 X\x{123}\=ps
514 X\x{123}\x{123}\=ps
515 X\x{123}\x{123}\x{123}\=ps
516 X\x{123}\x{123}\x{123}\x{123}\=ps
518 /X[abc\x{123}]{2,4}+b/utf
519 X\=ps
520 X\x{123}\=ps
521 X\x{123}\x{123}\=ps
522 X\x{123}\x{123}\x{123}\=ps
523 X\x{123}\x{123}\x{123}\x{123}\=ps
525 /X[^a]{2,4}b/utf
526 X\=ps
532 /X[^a]{2,4}?b/utf
533 X\=ps
539 /X[^a]{2,4}+b/utf
540 X\=ps
546 /X[^a]{2,4}b/utf
547 X\=ps
548 X\x{123}\=ps
549 X\x{123}\x{123}\=ps
550 X\x{123}\x{123}\x{123}\=ps
551 X\x{123}\x{123}\x{123}\x{123}\=ps
553 /X[^a]{2,4}?b/utf
554 X\=ps
555 X\x{123}\=ps
556 X\x{123}\x{123}\=ps
557 X\x{123}\x{123}\x{123}\=ps
558 X\x{123}\x{123}\x{123}\x{123}\=ps
560 /X[^a]{2,4}+b/utf
561 X\=ps
562 X\x{123}\=ps
563 X\x{123}\x{123}\=ps
564 X\x{123}\x{123}\x{123}\=ps
565 X\x{123}\x{123}\x{123}\x{123}\=ps
567 /(Y)X\1{2,4}b/utf
574 /(Y)X\1{2,4}?b/utf
581 /(Y)X\1{2,4}+b/utf
588 /(\x{123})X\1{2,4}b/utf
589 \x{123}X\=ps
590 \x{123}X\x{123}\=ps
591 \x{123}X\x{123}\x{123}\=ps
592 \x{123}X\x{123}\x{123}\x{123}\=ps
593 \x{123}X\x{123}\x{123}\x{123}\x{123}\=ps
595 /(\x{123})X\1{2,4}?b/utf
596 \x{123}X\=ps
597 \x{123}X\x{123}\=ps
598 \x{123}X\x{123}\x{123}\=ps
599 \x{123}X\x{123}\x{123}\x{123}\=ps
600 \x{123}X\x{123}\x{123}\x{123}\x{123}\=ps
602 /(\x{123})X\1{2,4}+b/utf
603 \x{123}X\=ps
604 \x{123}X\x{123}\=ps
605 \x{123}X\x{123}\x{123}\=ps
606 \x{123}X\x{123}\x{123}\x{123}\=ps
607 \x{123}X\x{123}\x{123}\x{123}\x{123}\=ps
635 /X\W{3}X/utf
636 X\=ps
639 AB\x{85}xxx\x{a0}XYZ
640 AB\x{a0}xxx\x{85}XYZ
643 \x{a2} \x{84}
674 /[^\x{1234}]+/Ii,utf
676 /[^\x{1234}]+?/Ii,utf
678 /[^\x{1234}]++/Ii,utf
680 /[^\x{1234}]{2}/Ii,utf
694 /\x{d7ff}\x{e000}/utf
696 /\x{d800}/utf
698 /\x{dfff}/utf
701 \x{1681}\x{200b}\x{1680}\x{2000}\x{202f}\x{3000}
702 \x{3001}\x{2fff}\x{200a}\x{a0}\x{2000}
704 /[\h\x{e000}]+/B,utf
705 \x{1681}\x{200b}\x{1680}\x{2000}\x{202f}\x{3000}
706 \x{3001}\x{2fff}\x{200a}\x{a0}\x{2000}
709 \x{1680}\x{180e}\x{167f}\x{1681}\x{180d}\x{180f}
710 \x{2000}\x{200a}\x{1fff}\x{200b}
711 \x{202f}\x{205f}\x{202e}\x{2030}\x{205e}\x{2060}
712 \x{a0}\x{3000}\x{9f}\x{a1}\x{2fff}\x{3001}
714 /[\H\x{d7ff}]+/B,utf
715 \x{1680}\x{180e}\x{167f}\x{1681}\x{180d}\x{180f}
716 \x{2000}\x{200a}\x{1fff}\x{200b}
717 \x{202f}\x{205f}\x{202e}\x{2030}\x{205e}\x{2060}
718 \x{a0}\x{3000}\x{9f}\x{a1}\x{2fff}\x{3001}
721 \x{2027}\x{2030}\x{2028}\x{2029}
722 \x09\x0e\x{84}\x{86}\x{85}\x0a\x0b\x0c\x0d
724 /[\v\x{e000}]+/B,utf
725 \x{2027}\x{2030}\x{2028}\x{2029}
726 \x09\x0e\x{84}\x{86}\x{85}\x0a\x0b\x0c\x0d
729 \x{2028}\x{2029}\x{2027}\x{2030}
730 \x{85}\x0a\x0b\x0c\x0d\x09\x0e\x{84}\x{86}
732 /[\V\x{d7ff}]+/B,utf
733 \x{2028}\x{2029}\x{2027}\x{2030}
734 \x{85}\x0a\x0b\x0c\x0d\x09\x0e\x{84}\x{86}
737 \x{2027}\x{2030}\x{2028}\x{2029}
738 \x09\x0e\x{84}\x{86}\x{85}\x0a\x0b\x0c\x0d
770 /(..)\1{2,}?x/i,utf
799 /[^\x{100}][^\x{1234}][^\x{ffff}][^\x{10000}][^\x{10ffff}]/B,utf
801 /[^\x{100}][^\x{1234}][^\x{ffff}][^\x{10000}][^\x{10ffff}]/Bi,utf
803 /[^\x{100}]*[^\x{10000}]+[^\x{10ffff}]??[^\x{8000}]{4,}[^\x{7fff}]{2,9}?[^\x{fffff}]{5,6}+/B,utf
805 /[^\x{100}]*[^\x{10000}]+[^\x{10ffff}]??[^\x{8000}]{4,}[^\x{7fff}]{2,9}?[^\x{fffff}]{5,6}+/Bi,utf
807 /(?<=\x{1234}\x{1234})\bxy/I,utf
815 /[\u0100-\u0200]/B,utf,alt_bsux,allow_empty_class,match_unset_backref
820 \x{10ffff}
825 \x{1bb1}
830 /^a+[a\x{200}]/B,utf
833 /[b-d\x{200}-\x{250}]*[ae-h]?#[\x{200}-\x{250}]{0,8}[\x00-\xff]*#[\x{200}-\x{250}]+[a-z]/B,utf
843 /[abc\p{L}\x{0660}]/IB,utf
848 /[\p{Nd}+-]+/IB,utf
850 12-34
851 12+\x{661}-34
865 /(?<=\P{Yi}{3}A)X/
899 \x{2028}\x{2028}\x{2028}
910 \x{180e}
911 \x{061c}
912 \x{2066}
913 \x{2067}
914 \x{2068}
915 \x{2069}
918 \x{dfff}\=no_utf_check
920 \x{09f}
923 \x{1a1b}
926 \x{2309}
927 \x{230b}
930 \x{2308}
931 \x{230a}
934 $\x{a2}\x{a3}\x{a4}\x{a5}\x{a6}
935 \x{9f2}
937 X
938 \x{2c2}
942 \x{a0}
943 \x{1680}
944 \x{2000}
945 \x{2001}
947 \x{2028}
948 \x{200d}
971 a\x{10a0}B
974 \x{1d00}
982 /[\x{c0}\x{391}]/i,utf
983 \x{c0}
984 \x{e0}
990 /^\x{023a}+?(\x{0130}+)/i,utf
991 \x{023a}\x{2c65}\x{0130}
993 /^\x{023a}+([^X])/i,utf
994 \x{023a}\x{2c65}X
996 /\x{c0}+\x{116}+/i,utf
997 \x{c0}\x{e0}\x{116}\x{117}
999 /[\x{c0}\x{116}]+/i,utf
1000 \x{c0}\x{e0}\x{116}\x{117}
1002 /(\x{de})\1/i,utf
1003 \x{de}\x{de}
1004 \x{de}\x{fe}
1005 \x{fe}\x{fe}
1006 \x{fe}\x{de}
1008 /^\x{c0}$/i,utf
1009 \x{c0}
1010 \x{e0}
1012 /^\x{e0}$/i,utf
1013 \x{c0}
1014 \x{e0}
1016 # The next two should be Perl-compatible, but it fails to match \x{e0}. PCRE
1020 /((?i)[\x{c0}])/utf
1021 \x{c0}
1022 \x{e0}
1024 /(?i:[\x{c0}])/utf
1025 \x{c0}
1026 \x{e0}
1033 \x{6ca}
1034 \x{a6c}
1035 \x{10a7}
1040 ABCD1234\x{6ca}\x{a6c}\x{10a7}_
1045 \x{6ca}\x{a6c}\x{10a7}_
1048 ABCD1234\x{6ca}\x{a6c}\x{10a7}_
1051 ABCD1234\x{6ca}\x{a6c}\x{10a7}_
1054 \x{6ca}\x{a6c}\x{10a7}_
1059 \x{6ca}
1060 \x{a6c}
1061 \x{10a7}
1066 ABCD1234\x{6ca}\x{a6c}\x{10a7}_
1071 >\x{1680}\x{2028}\x{0b}
1072 >\x{a0}
1074 \x{0b}
1077 > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b}
1080 >\x{1680}\x{2028}\x{0b}
1083 > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b}
1086 > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b}
1089 > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b}
1092 >\x{2028}\x{0b}
1095 > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b}
1098 >\x{1680}\x{2028}\x{0b}
1099 >\x{a0}
1101 \x{0b}
1104 > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b}
1107 >\x{1680}\x{2028}\x{0b}
1110 > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b}
1113 > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b}
1116 > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b}
1119 >\x{2028}\x{0b}
1122 > \x{09}\x{0a}\x{0c}\x{0d}\x{a0}\x{1680}\x{2028}\x{0b}
1127 \x{6ca}
1128 \x{a6c}
1129 \x{10a7}
1135 ABCD1234\x{6ca}\x{a6c}\x{10a7}_
1138 \x{6ca}\x{a6c}\x{10a7}_
1141 ABCD1234\x{6ca}\x{a6c}\x{10a7}_
1144 A_B12\x{6ca}\x{a6c}\x{10a7}
1147 \x{6ca}\x{a6c}\x{10a7}_
1152 \x{6ca}
1153 \x{a6c}
1154 \x{10a7}
1160 ABCD1234\x{6ca}\x{a6c}\x{10a7}_
1162 # A check not in UTF-8 mode
1170 !.+\x{019}\x{482}AB
1173 !.+\x{019}\x{589}AB
1176 1\x{3c8}2
1179 >\x{6f4}<
1182 \x{1680}\x{6f4}\x{1680}
1185 >\x{1680}<
1188 A\x{1735}B
1191 >\x{1723}<
1194 1\x{3c8}2
1197 >\x{6f4}<
1200 \x{1680}\x{6f4}\x{1680}
1203 >\x{1680}>
1206 A\x{1735}B
1209 >\x{1723}<
1245 \x{37e}abc\x{376}
1246 \x{37e}\x{376}\x{371}\x{393}\x{394}
1247 !\x{c0}++\x{c1}\x{c2}
1248 !\x{c0}+++++
1250 # Without PCRE_UCP, non-ASCII always fail, even if < 256
1255 \x{37e}abc\x{376}
1256 \x{37e}\x{376}\x{371}\x{393}\x{394}
1257 !\x{c0}++\x{c1}\x{c2}
1258 !\x{c0}+++++
1260 # With PCRE_UCP, non-UTF8 chars that are < 256 still check properties
1264 !\x{c0}++\x{c1}\x{c2}
1265 !\x{c0}+++++
1286 abc\x{123}
1287 \x{660}abc
1295 /\p{Han}+X\p{Greek}+\x{370}/B,utf
1309 /(\x{23a}\x{23a}\x{23a})?\1/i,utf
1311 \x{23a}\x{23a}\x{23a}\x{2c65}\x{2c65}
1317 /(\x{23a}\x{23a}\x{23a})?\1/i,utf
1318 \x{23a}\x{23a}\x{23a}\x{2c65}\x{2c65}\x{2c65}
1323 /(\x{23a}\x{23a}\x{23a})\1/i,utf
1325 \x{23a}\x{23a}\x{23a}\x{2c65}\x{2c65}
1331 /(\x{23a}\x{23a}\x{23a})\1/i,utf
1332 \x{23a}\x{23a}\x{23a}\x{2c65}\x{2c65}\x{2c65}
1337 /(\x{2c65}\x{2c65})\1/i,utf
1338 \x{2c65}\x{2c65}\x{23a}\x{23a}
1343 /(\x{23a}\x{23a}\x{23a})\1Y/i,utf
1344 X\x{23a}\x{23a}\x{23a}\x{2c65}\x{2c65}\x{2c65}YZ
1346 /(\x{2c65}\x{2c65})\1Y/i,utf
1347 X\x{2c65}\x{2c65}\x{23a}\x{23a}YZ
1352 \x{1bc0}
1353 \x{1bff}
1355 \x{1bf4}
1358 \x{11000}
1359 \x{1106f}
1361 \x{1104e}
1364 \x{840}
1365 \x{85e}
1367 \x{85c}
1368 \x{85d}
1370 /(\X*)(.)/s,utf
1371 A\x{300}
1373 /^S(\X*)e(\X*)$/utf
1376 /^\X/utf
1384 /\X/
1392 /\X{2}/
1396 /\X+a/
1401 /\X+?a/
1411 \x{11100}\x{1113c}
1414 \x{11680}\x{116c0}
1416 /^\X/utf
1419 A\x{300}\x{301}\=ps
1420 A\x{300}\x{301}\=ph
1421 A\x{301}\=ps
1422 A\x{301}\=ph
1424 /^\X{2,3}/utf
1429 A\x{300}\x{301}\=ps
1430 A\x{300}\x{301}\=ph
1431 A\x{300}\x{301}A\x{300}\x{301}\=ps
1432 A\x{300}\x{301}A\x{300}\x{301}\=ph
1434 /^\X{2}/utf
1437 A\x{300}\x{301}A\x{300}\x{301}\=ps
1438 A\x{300}\x{301}A\x{300}\x{301}\=ph
1440 /^\X+/utf
1444 /^\X+?Z/utf
1448 /A\x{3a3}B/IBi,utf
1450 /[\x{3a3}]/Bi,utf
1452 /[^\x{3a3}]/Bi,utf
1454 /[\x{3a3}]+/Bi,utf
1456 /[^\x{3a3}]+/Bi,utf
1458 /a*\x{3a3}/Bi,utf
1460 /\x{3a3}+a/Bi,utf
1462 /\x{3a3}*\x{3c2}/Bi,utf
1464 /\x{3a3}{3}/i,utf,aftertext
1465 \x{3a3}\x{3c3}\x{3c2}\x{3a3}\x{3c3}\x{3c2}
1467 /\x{3a3}{2,4}/i,utf,aftertext
1468 \x{3a3}\x{3c3}\x{3c2}\x{3a3}\x{3c3}\x{3c2}
1470 /\x{3a3}{2,4}?/i,utf,aftertext
1471 \x{3a3}\x{3c3}\x{3c2}\x{3a3}\x{3c3}\x{3c2}
1473 /\x{3a3}+./i,utf,aftertext
1474 \x{3a3}\x{3c3}\x{3c2}\x{3a3}\x{3c3}\x{3c2}
1476 /\x{3a3}++./i,utf,aftertext
1478 \x{3a3}\x{3c3}\x{3c2}\x{3a3}\x{3c3}\x{3c2}
1480 /\x{3a3}*\x{3c2}/Bi,utf
1482 /[^\x{3a3}]*\x{3c2}/Bi,utf
1484 /[^a]*\x{3c2}/Bi,utf
1491 iSs\x{17f}t
1513 \x{1234}abc
1518 $@`\x{a0}\x{1234}\x{e000}**
1520 \x{9f}
1523 $@`\x{a0}\x{1234}\x{e000}**
1525 \x{9f}
1528 $@`\x{a0}\x{1234}\x{e000}**
1530 \x{9f}
1533 $@`\x{a0}\x{1234}\x{e000}**
1535 \x{9f}
1538 $@`\x{a0}\x{1234}\x{e000}**
1540 \x{9f}
1543 $@`\x{a0}\x{1234}\x{e000}**
1545 \x{9f}
1548 $@`\x{a0}\x{1234}\x{e000}**
1550 \x{9f}
1553 $@`\x{a0}\x{1234}\x{e000}**
1555 \x{9f}
1563 \x{1234}abc
1571 \x{1234}abc
1573 # Some auto-possessification tests
1623 # End auto-possessification tests
1632 /\D+\X \d+\X \S+\X \s+\X \W+\X \w+\X \R+\X \H+\X \h+\X \V+\X \v+\X a+\X \n+\X .+\X/Bx
1634 /.+\X/Bsx
1636 /\X+$/Bmx
1638 /\X+\D \X+\d \X+\S \X+\s \X+\W \X+\w \X+. \X+\R \X+\H \X+\h \X+\V \X+\v \X+\X \X+\Z \X+\z \X+$/Bx
1644 /[R-T]+/Bi,utf,ucp
1646 /[Q-U]+/Bi,utf,ucp
1651 /\X?abc/utf,no_start_optimize
1652 \xff\x7f\x00\x00\x03\x00\x41\xcc\x80\x41\x{300}\x61\x62\x63\x00\=no_utf_check,offset=06
1654 /\x{100}\x{200}\K\x{300}/utf,startchar
1655 \x{100}\x{200}\x{300}
1665 /[A-`]/iB,utf
1668 /(?<=\K\x{17f})/g,utf,aftertext,allow_lookaround_bsk
1669 \x{17f}\x{17f}\x{17f}\x{17f}\x{17f}
1671 /(?<=\K\x{17f})/altglobal,utf,aftertext,allow_lookaround_bsk
1672 \x{17f}\x{17f}\x{17f}\x{17f}\x{17f}
1674X'u'(?'c'(?'z'(?<y>\xb::\xf0'|\xd3(\xae?'w(z\x8?P>l)\x8?P>a)'\H\R\xd1+!!~:3'(?:h$N{26875}\W+?\\=D{…
1676 …){0,6}?|){12\x8a\X*?\x8a\x0b\xd1^9\3*+(\xc1,\k'P'\xb4)\xcc(z\z(?JJ)(?'X'8};(\x0b\xd1^9\?'3*+(\xc1.…
1678 "(*UTF)(*UCP)(.UTF).+X(\V+;\^(\D|)!999}(?(?C{7(?C')\H*\S*/^\x5\xa\\xd3\x85n?(;\D*(?m).[^mH+((*UCP)(…
1683 /(*:a\x{12345}b\t(d\)c)xxx/utf,alt_verbnames,mark
1686 /abcd/utf,replace=x\x{824}y\o{3333}z(\Q12\$34$$\x34\E5$$),substitute_extended
1689 /a(\x{e0}\x{101})(\x{c0}\x{102})/utf,replace=a\u$1\U$1\E$1\l$2\L$2\Eab\U\x{e0}\x{101}\L\x{d0}\x{160…
1690 a\x{e0}\x{101}\x{c0}\x{102}
1695 /(*UCP)(*UTF)[[:>:]]X/B
1713 \x{de}
1714 \x{200}
1716 \x{589}
1717 \x{37e}
1725 /(*UTF)C\x09((?<!'(?x)!*H? #\xcc\x9a[^$]/
1728 \x{1d7cf}
1731 \x{1d7cf}
1736 \x{1d7cf}
1740 \x{1d7cf}
1742 \x{10000}
1744 # Hex uses pattern length, not zero-terminated. This tests for overrunning
1754 \n\x{123}\x{123}\x{123}\x{123}
1758 /XȀ/x,utf
1766 \x{2f000}
1769 \x{2f000}
1787 # ---------------------------------------------------------------------------
1792 /^[^a]{3,}?x/i,utf,no_start_optimize,no_auto_possess
1797 /^[ac]{3,}?x/i,utf,no_start_optimize,no_auto_possess
1799 aaa\x{100}
1801 /^X\X/no_start_optimize,no_auto_possess
1803 X
1805 /^X\p{L&}+?/no_start_optimize,no_auto_possess
1807 X
1809 /^X\p{L}+?/no_start_optimize,no_auto_possess
1811 X
1813 /^X\p{Lu}+?/no_start_optimize,no_auto_possess
1815 X
1817 /^X\p{Arabic}+?/no_start_optimize,no_auto_possess
1819 X
1821 /^X\p{Xan}+?/ucp,no_start_optimize,no_auto_possess
1823 X
1825 /^X\s+?/ucp,no_start_optimize,no_auto_possess
1827 X
1830 /^X\S+?/ucp,no_start_optimize,no_auto_possess
1833 X
1835 /^X\w+?/ucp,no_start_optimize,no_auto_possess
1837 X
1839 /^X[^\x{b5}]+?/i,utf,no_start_optimize,no_auto_possess
1841 X
1843 /^X[\x{b5}]+?/i,utf,no_start_optimize,no_auto_possess
1845 X
1847 /^X\p{Xuc}+?/utf,no_start_optimize,no_auto_possess
1849 X
1851 /^X.+?Z/s,utf,no_start_optimize,no_auto_possess
1853 X
1855 /^X\R+?/utf,no_start_optimize,no_auto_possess
1857 X
1859 /^X\H+?/utf,no_start_optimize,no_auto_possess
1861 X
1863 /^X\V+?/utf,no_start_optimize,no_auto_possess
1865 X
1867 /^X\s+?/utf,no_start_optimize,no_auto_possess
1869 X
1872 /^X\S+?/utf,no_start_optimize,no_auto_possess
1874 X
1876 /^X\p{Any}{1,3}?Z/s,no_start_optimize,no_auto_possess
1884 /^X\p{L&}{1,3}?Z/s,no_start_optimize,no_auto_possess
1889 /^X\p{L}{1,3}?Z/s,no_start_optimize,no_auto_possess
1894 /^X\p{Lu}{1,3}?Z/s,no_start_optimize,no_auto_possess
1899 /^X\P{Han}{1,3}?Z/s,utf,no_start_optimize,no_auto_possess
1903 XY\x{2f00}!
1905 /^X\p{Xan}{1,3}?Z/s,no_start_optimize,no_auto_possess
1910 /^X\p{Xsp}{1,3}?Z/s,no_start_optimize,no_auto_possess
1912 X\n
1913 X\n!
1914 X\n\n!
1916 /^X\P{Xsp}{1,3}?Z/s,no_start_optimize,no_auto_possess
1920 /^X\p{Xwd}{1,3}?Z/s,no_start_optimize,no_auto_possess
1926 /^X\x{b5}+?Z/i,utf,no_start_optimize,no_auto_possess
1928 X
1929 X\x{b5}
1930 X\x{b5}\x{b5}Y
1932 /^X\p{Xuc}+?Z/utf,no_start_optimize,no_auto_possess
1934 X
1935 X$
1936 X@@Y
1938 /(*CRLF)^X.+?Z/utf,no_start_optimize,no_auto_possess
1942 X
1944 /^X.+?Z/s,utf,no_start_optimize,no_auto_possess
1946 X
1949 /^X\R+?Z/utf,no_start_optimize,no_auto_possess
1951 X\nX
1952 X\n\rX
1953 X\n\r\nX
1954 X\n\n
1955 X\n\x{0c}
1957 /(*BSR_ANYCRLF)^X\R+?Z/utf,no_start_optimize,no_auto_possess
1959 X\nX
1960 X\n\rX
1961 X\n\r\nX
1962 X\n\n
1963 X\n\x{0c}
1965 /^X\H+?Z/utf,no_start_optimize,no_auto_possess
1970 /^X\h+?Z/utf,no_start_optimize,no_auto_possess
1972 X\t\t
1973 X\tY
1975 /^X\V+?Z/utf,no_start_optimize,no_auto_possess
1980 /^X\v+?Z/utf,no_start_optimize,no_auto_possess
1982 X\n\n
1983 X\nY
1985 /^X\D+?Z/utf,no_start_optimize,no_auto_possess
1990 /^X\d+?Z/utf,no_start_optimize,no_auto_possess
1995 /^X\S+?Z/utf,no_start_optimize,no_auto_possess
2000 /^X\s+?Z/utf,no_start_optimize,no_auto_possess
2002 X\n\n
2003 X\nY
2005 /^X\W+?Z/utf,no_start_optimize,no_auto_possess
2007 X.A
2008 X++
2010 /^X\p{L&}{1,3}Z/no_start_optimize,no_auto_possess
2015 /^X\p{L}{1,3}Z/no_start_optimize,no_auto_possess
2019 /^X\p{Xan}{1,3}Z/no_start_optimize,no_auto_possess
2023 /^X\P{Xsp}{1,3}Z/no_start_optimize,no_auto_possess
2027 /^X\p{Xuc}+Z/utf,no_start_optimize,no_auto_possess
2029 X$
2031 # ----------------------------------------------------------------------
2034 /\x{d800}/B,utf,bad_escape_is_literal
2038 # ----------------------------------------------------------------------
2049 (\p{Zanabazar_Square}+)/x,utf
2050x{1E900}\x{1E924}\x{1E953}\x{11C00}\x{11C2D}\x{11C3E}\x{11C70}\x{11C77}\x{11CAB}\x{11400}\x{1142F}…
2052 /^\x{1E900}\x{104B0}/i,utf
2053 \x{1E900}\x{104B0}
2054 \x{1E922}\x{104D8}
2056 /^(?:(\X)(?C))+$/utf
2057x{1E900}\x{1E924}\x{1E953}\x{11C00}\x{11C2D}\x{11C3E}\x{11C70}\x{11C77}\x{11CAB}\x{11400}\x{1142F}…
2062 (\p{Medefaidrin}+)(\p{Old_Sogdian}+)(\p{Sogdian}+)/x,utf
2063 \x{11800}\x{11da9}\x{10d27}\x{11ee0}\x{16e48}\x{10f27}\x{10f30}
2067 /^(\X)(\X)/utf,aftertext
2068 \x{1F1E6}\x{1F1E7}\x{1F1E7}B
2069 \x{1F1E6}\x{1F1E7}\x{1F1E7}\x{1F1E6}B
2074 \x{60c}
2075 \x{61f}
2076 \x{964}
2077 \x{965}
2080 \x{64b}
2081 \x{654}
2082 \x{655}
2083 \x{1D1AA}
2091 # This tests the non-UTF Unicode NEL pattern whitespace character, only
2092 # recognized by PCRE2 with /x when there is Unicode support.
2096 �B/x
2100 # are being processed with PCRE2_EXTENDED. Note: there are UTF-8 characters
2103 /(*: A‎B
C)abc/x,utf,mark,alt_verbnames
2106 # Script run tests: auto-possessification
2114 /^(*sr:\x{2e80}*)/B,utf
2116 /^(*sr:\x{2e80}*)\x{2e80}/B,utf
2120 /(?<=abc(?=X(*sr:BXY)CCC)XBXYCCC)./B
2127 \x{0980}12\x{0993} Bengali Common-digits Bengali
2128 \x{0780}12\x{07b1} Thaana Common-digits Thaana
2129 \x{0e01}12\x{0e5b} Thai Common-digits Thai
2130 \x{1780}12\x{19ff} Khmer Common-digits Khmer
2131 \x{0904}12\x{0939} Devanagari Common-digits Devanagari
2132 A\x{ff10}\x{ff19}B Latin Common-notascii-digits Latin
2133 A\x{1d7ce}\x{1d7cf}B Latin fancy-common-digits Latin
2135 # These ones involve non-ASCII but nevertheless Common digits. As of October
2136 # 2018 even blead Perl wasn't handling all of these - but is going to.
2139 A\x{ff10}\x{ff19}B Latin Common-notascii-digits Latin
2140 \x{ff10}\x{ff19}.. Common-notascii-digits Common Common
2141 A\x{ff10}BC Latin Common-notascii-digit Latin Latin
2142 A\x{1d7ce}\x{1d7cf}B Latin fancy-common-digits Latin
2143 \x{1d7ce}\x{1d7cf},, fancy-common-digits Common Common
2144 A\x{1d7ce}BC Latin fancy-common-digit Latin Latin
2149 \x{10fe5}\x{119AC}\x{1E10E}\x{1E2D1}
2154 \x{10FB0}\x{11900}\x{18B00}\x{10E80}
2156 # -------
2158 # Test reference and errors in non-ASCII characters in group names
2173 # -------
2196 # Test error - invalid script name
2203 >AN<>\x{261d}\x{1faf6}<>yz<
2206 >AN<>\x{11d97}\x{94d}<>yz<
2209 >AF23<>\x{1df1a}\x{69}<>yz<
2211 # ------------------------------------------------
2213 /\p{\2b[:x�igi:t:_/
2222 A\x{17f}kZ
2223 As\x{212a}Z
2228 A\x{17f}kZ
2229 As\x{212a}Z
2231 /A\x{17f}\x{212a}Z/ir,utf
2235 /A\x{17f}\x{212a}Z/i,utf
2241 A\x{17f}kZ
2242 As\x{212a}Z
2247 A\x{17f}kZ
2248 As\x{212a}Z
2250 /[\x{17f}\x{212a}]+/ir,utf
2254 /[\x{17f}\x{212a}]+/i,utf
2258 A\x{17f}Z
2261 A\x{17f}Z
2264 A\x{212a}Z
2267 A\x{212a}Z
2270 A\x{17f}\x{212a}Z
2273 A\x{17f}\x{212a}Z
2275 /[^\x{17f}]+/ir,utf
2278 /[^\x{17f}]+/i,utf
2282 Sss\x{17f}ss
2285 Sss\x{17f}ss
2287 /[S\x{17f}]/irB,utf
2289 /[S\x{17f}]/iB,utf
2291 /[\x{17f}s]/irB,utf
2293 /[\x{17f}s]/iB,utf
2295 /[\x{4b}\x{6b}]/irB,utf
2297 /[\x{4b}\x{6b}]/iB,utf
2299 /s(?r)s(?-r)s(?r:s)s/i,utf
2300 \x{17f}S\x{17f}S\x{17f}
2302 \x{17f}\x{17f}\x{17f}S\x{17f}
2303 \x{17f}S\x{17f}\x{17f}\x{17f}
2306 K\x{212a}
2308 \x{212a}\x{212a}
2312 # TESTS for PCRE2_EXTRA_ASCII_xxx - again, tests with and without.
2317 123\x{660}456
2320 123\x{660}456
2323 123\x{660}456
2326 123\x{660}456
2329 123\x{660}456
2332 123\x{660}456
2334 /\d(?aD)\d(?-aD)\d/utf,ucp
2335 \x{660}9\x{660}
2337 \x{660}\x{660}\x{660}
2339 /\d(?-aD)\d(?aD)\d/utf,ucp,ascii_bsd
2341 9\x{660}9
2343 /\d(?a)\d(?-a)\d/utf,ucp
2344 \x{660}9\x{660}
2346 \x{660}\x{660}\x{660}
2348 /\d(?-aD)\d(?aD)\d/utf,ucp,ascii_bsd
2350 9\x{660}9
2357 >\x{a0} <
2361 >\x{a0} <
2366 >\x{a0} <
2371 >\x{a0} <
2375 >\x{a0} <
2380 >\x{a0} <
2382 />\s(?aS)\s(?-aS)\s</utf,ucp
2383 >\x{a0} \x{a0}<
2385 >\x{a0}\x{a0}\x{a0}<
2387 />\s(?a)\s(?-a)\s</utf,ucp
2388 >\x{a0} \x{a0}<
2390 >\x{a0}\x{a0}\x{a0}<
2395 123\x{660}abc
2398 123\x{660}abc
2401 123\x{660}abc
2404 123\x{660}abc
2407 123\x{660}abc
2410 123\x{660}abc
2412 /\w(?aW)\w(?-aW)\w/utf,ucp
2413 \x{660}A\x{c0}
2415 \x{660}\x{c0}\x{c0}
2417 /\w(?a)\w(?-a)\w/utf,ucp
2418 \x{660}A\x{c0}
2420 \x{660}\x{c0}\x{c0}
2425 \x{c0}ABC\x{d0}
2429 \x{c0}ABC\x{d0}
2432 \x{c0}ABC\x{d0}
2435 \x{c0}ABC\x{d0}
2441 123\x{660}456
2446 123\x{660}456
2449 123\x{660}456
2451 /(?-aT)[[:digit:]](?aT)[[:digit:]]/utf,ucp,ascii_digit
2453 \x{ff11}1
2455 1\x{ff11}
2457 /(?-aT:[[:digit:]])[[:digit:]]/utf,ucp,ascii_digit
2459 \x{ff11}1
2461 1\x{ff11}
2463 /(?-aT:[[:digit:]])[[:digit:]]/utf,never_ucp,ascii_digit
2466 \x{ff11}1
2467 1\x{ff11}
2470 123\x{660}456
2472 /(?-aP)[[:digit:]](?aP)[[:digit:]]/utf,ucp,ascii_posix
2474 \x{ff11}1
2476 1\x{ff11}
2478 /(?-aP:[[:digit:]])[[:digit:]]/utf,ucp,ascii_posix
2480 \x{ff11}1
2482 1\x{ff11}
2484 /(?-a:[[:digit:]])[[:digit:]]/a,utf,ucp
2486 \x{ff11}1
2488 1\x{ff11}
2493 d\x{ff10}
2494 \x{ff26}8
2502 d\x{ff10}
2503 \x{ff26}8
2507 >\x{a0} \x{a0}<
2508 >\x{a0}\x{a0}\x{a0}<
2512 >\x{a0} \x{a0}<
2516 abc\x{660}xyz
2519 abc\x{660}xyz
2522 \x{660}A\x{660}
2524 \x{660}\x{660}\x{660}
2529 9 A\x{660}À
2530 9 AÀ\x{660}