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 --/ 2548