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