1# This set of tests is for UTF support, including Unicode properties. The 2# Unicode tests are all compatible with all versions of Perl >= 5.10, but 3# some of the property tests may differ because of different versions of 4# Unicode in use by PCRE2 and Perl. 5 6# WARNING: Use only / as the pattern delimiter. Although pcre2test supports 7# a number of delimiters, all those other than / give problems with the 8# perltest.sh script. 9 10#newline_default lf anycrlf any 11#perltest 12 13/a.b/utf 14 acb 15 0: acb 16 a\x7fb 17 0: a\x{7f}b 18 a\x{100}b 19 0: a\x{100}b 20\= Expect no match 21 a\nb 22No match 23 24/a(.{3})b/utf 25 a\x{4000}xyb 26 0: a\x{4000}xyb 27 1: \x{4000}xy 28 a\x{4000}\x7fyb 29 0: a\x{4000}\x{7f}yb 30 1: \x{4000}\x{7f}y 31 a\x{4000}\x{100}yb 32 0: a\x{4000}\x{100}yb 33 1: \x{4000}\x{100}y 34\= Expect no match 35 a\x{4000}b 36No match 37 ac\ncb 38No match 39 40/a(.*?)(.)/ 41 a\xc0\x88b 42 0: a\xc0 43 1: 44 2: \xc0 45 46/a(.*?)(.)/utf 47 a\x{100}b 48 0: a\x{100} 49 1: 50 2: \x{100} 51 52/a(.*)(.)/ 53 a\xc0\x88b 54 0: a\xc0\x88b 55 1: \xc0\x88 56 2: b 57 58/a(.*)(.)/utf 59 a\x{100}b 60 0: a\x{100}b 61 1: \x{100} 62 2: b 63 64/a(.)(.)/ 65 a\xc0\x92bcd 66 0: a\xc0\x92 67 1: \xc0 68 2: \x92 69 70/a(.)(.)/utf 71 a\x{240}bcd 72 0: a\x{240}b 73 1: \x{240} 74 2: b 75 76/a(.?)(.)/ 77 a\xc0\x92bcd 78 0: a\xc0\x92 79 1: \xc0 80 2: \x92 81 82/a(.?)(.)/utf 83 a\x{240}bcd 84 0: a\x{240}b 85 1: \x{240} 86 2: b 87 88/a(.??)(.)/ 89 a\xc0\x92bcd 90 0: a\xc0 91 1: 92 2: \xc0 93 94/a(.??)(.)/utf 95 a\x{240}bcd 96 0: a\x{240} 97 1: 98 2: \x{240} 99 100/a(.{3})b/utf 101 a\x{1234}xyb 102 0: a\x{1234}xyb 103 1: \x{1234}xy 104 a\x{1234}\x{4321}yb 105 0: a\x{1234}\x{4321}yb 106 1: \x{1234}\x{4321}y 107 a\x{1234}\x{4321}\x{3412}b 108 0: a\x{1234}\x{4321}\x{3412}b 109 1: \x{1234}\x{4321}\x{3412} 110\= Expect no match 111 a\x{1234}b 112No match 113 ac\ncb 114No match 115 116/a(.{3,})b/utf 117 a\x{1234}xyb 118 0: a\x{1234}xyb 119 1: \x{1234}xy 120 a\x{1234}\x{4321}yb 121 0: a\x{1234}\x{4321}yb 122 1: \x{1234}\x{4321}y 123 a\x{1234}\x{4321}\x{3412}b 124 0: a\x{1234}\x{4321}\x{3412}b 125 1: \x{1234}\x{4321}\x{3412} 126 axxxxbcdefghijb 127 0: axxxxbcdefghijb 128 1: xxxxbcdefghij 129 a\x{1234}\x{4321}\x{3412}\x{3421}b 130 0: a\x{1234}\x{4321}\x{3412}\x{3421}b 131 1: \x{1234}\x{4321}\x{3412}\x{3421} 132\= Expect no match 133 a\x{1234}b 134No match 135 136/a(.{3,}?)b/utf 137 a\x{1234}xyb 138 0: a\x{1234}xyb 139 1: \x{1234}xy 140 a\x{1234}\x{4321}yb 141 0: a\x{1234}\x{4321}yb 142 1: \x{1234}\x{4321}y 143 a\x{1234}\x{4321}\x{3412}b 144 0: a\x{1234}\x{4321}\x{3412}b 145 1: \x{1234}\x{4321}\x{3412} 146 axxxxbcdefghijb 147 0: axxxxb 148 1: xxxx 149 a\x{1234}\x{4321}\x{3412}\x{3421}b 150 0: a\x{1234}\x{4321}\x{3412}\x{3421}b 151 1: \x{1234}\x{4321}\x{3412}\x{3421} 152\= Expect no match 153 a\x{1234}b 154No match 155 156/a(.{3,5})b/utf 157 a\x{1234}xyb 158 0: a\x{1234}xyb 159 1: \x{1234}xy 160 a\x{1234}\x{4321}yb 161 0: a\x{1234}\x{4321}yb 162 1: \x{1234}\x{4321}y 163 a\x{1234}\x{4321}\x{3412}b 164 0: a\x{1234}\x{4321}\x{3412}b 165 1: \x{1234}\x{4321}\x{3412} 166 axxxxbcdefghijb 167 0: axxxxb 168 1: xxxx 169 a\x{1234}\x{4321}\x{3412}\x{3421}b 170 0: a\x{1234}\x{4321}\x{3412}\x{3421}b 171 1: \x{1234}\x{4321}\x{3412}\x{3421} 172 axbxxbcdefghijb 173 0: axbxxb 174 1: xbxx 175 axxxxxbcdefghijb 176 0: axxxxxb 177 1: xxxxx 178\= Expect no match 179 a\x{1234}b 180No match 181 axxxxxxbcdefghijb 182No match 183 184/a(.{3,5}?)b/utf 185 a\x{1234}xyb 186 0: a\x{1234}xyb 187 1: \x{1234}xy 188 a\x{1234}\x{4321}yb 189 0: a\x{1234}\x{4321}yb 190 1: \x{1234}\x{4321}y 191 a\x{1234}\x{4321}\x{3412}b 192 0: a\x{1234}\x{4321}\x{3412}b 193 1: \x{1234}\x{4321}\x{3412} 194 axxxxbcdefghijb 195 0: axxxxb 196 1: xxxx 197 a\x{1234}\x{4321}\x{3412}\x{3421}b 198 0: a\x{1234}\x{4321}\x{3412}\x{3421}b 199 1: \x{1234}\x{4321}\x{3412}\x{3421} 200 axbxxbcdefghijb 201 0: axbxxb 202 1: xbxx 203 axxxxxbcdefghijb 204 0: axxxxxb 205 1: xxxxx 206\= Expect no match 207 a\x{1234}b 208No match 209 axxxxxxbcdefghijb 210No match 211 212/^[a\x{c0}]/utf 213\= Expect no match 214 \x{100} 215No match 216 217/(?<=aXb)cd/utf 218 aXbcd 219 0: cd 220 221/(?<=a\x{100}b)cd/utf 222 a\x{100}bcd 223 0: cd 224 225/(?<=a\x{100000}b)cd/utf 226 a\x{100000}bcd 227 0: cd 228 229/(?:\x{100}){3}b/utf 230 \x{100}\x{100}\x{100}b 231 0: \x{100}\x{100}\x{100}b 232\= Expect no match 233 \x{100}\x{100}b 234No match 235 236/\x{ab}/utf 237 \x{ab} 238 0: \x{ab} 239 \xc2\xab 240 0: \x{ab} 241\= Expect no match 242 \x00{ab} 243No match 244 245/(?<=(.))X/utf 246 WXYZ 247 0: X 248 1: W 249 \x{256}XYZ 250 0: X 251 1: \x{256} 252\= Expect no match 253 XYZ 254No match 255 256/[^a]+/g,utf 257 bcd 258 0: bcd 259 \x{100}aY\x{256}Z 260 0: \x{100} 261 0: Y\x{256}Z 262 263/^[^a]{2}/utf 264 \x{100}bc 265 0: \x{100}b 266 267/^[^a]{2,}/utf 268 \x{100}bcAa 269 0: \x{100}bcA 270 271/^[^a]{2,}?/utf 272 \x{100}bca 273 0: \x{100}b 274 275/[^a]+/gi,utf 276 bcd 277 0: bcd 278 \x{100}aY\x{256}Z 279 0: \x{100} 280 0: Y\x{256}Z 281 282/^[^a]{2}/i,utf 283 \x{100}bc 284 0: \x{100}b 285 286/^[^a]{2,}/i,utf 287 \x{100}bcAa 288 0: \x{100}bc 289 290/^[^a]{2,}?/i,utf 291 \x{100}bca 292 0: \x{100}b 293 294/\x{100}{0,0}/utf 295 abcd 296 0: 297 298/\x{100}?/utf 299 abcd 300 0: 301 \x{100}\x{100} 302 0: \x{100} 303 304/\x{100}{0,3}/utf 305 \x{100}\x{100} 306 0: \x{100}\x{100} 307 \x{100}\x{100}\x{100}\x{100} 308 0: \x{100}\x{100}\x{100} 309 310/\x{100}*/utf 311 abce 312 0: 313 \x{100}\x{100}\x{100}\x{100} 314 0: \x{100}\x{100}\x{100}\x{100} 315 316/\x{100}{1,1}/utf 317 abcd\x{100}\x{100}\x{100}\x{100} 318 0: \x{100} 319 320/\x{100}{1,3}/utf 321 abcd\x{100}\x{100}\x{100}\x{100} 322 0: \x{100}\x{100}\x{100} 323 324/\x{100}+/utf 325 abcd\x{100}\x{100}\x{100}\x{100} 326 0: \x{100}\x{100}\x{100}\x{100} 327 328/\x{100}{3}/utf 329 abcd\x{100}\x{100}\x{100}XX 330 0: \x{100}\x{100}\x{100} 331 332/\x{100}{3,5}/utf 333 abcd\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}XX 334 0: \x{100}\x{100}\x{100}\x{100}\x{100} 335 336/\x{100}{3,}/utf 337 abcd\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}XX 338 0: \x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100} 339 340/(?<=a\x{100}{2}b)X/utf,aftertext 341 Xyyya\x{100}\x{100}bXzzz 342 0: X 343 0+ zzz 344 345/\D*/utf 346 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa 347 0: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa 348 349/\D*/utf 350 \x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100} 351 0: \x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100} 352 353/\D/utf 354 1X2 355 0: X 356 1\x{100}2 357 0: \x{100} 358 359/>\S/utf 360 > >X Y 361 0: >X 362 > >\x{100} Y 363 0: >\x{100} 364 365/\d/utf 366 \x{100}3 367 0: 3 368 369/\s/utf 370 \x{100} X 371 0: 372 373/\D+/utf 374 12abcd34 375 0: abcd 376\= Expect no match 377 1234 378No match 379 380/\D{2,3}/utf 381 12abcd34 382 0: abc 383 12ab34 384 0: ab 385\= Expect no match 386 1234 387No match 388 12a34 389No match 390 391/\D{2,3}?/utf 392 12abcd34 393 0: ab 394 12ab34 395 0: ab 396\= Expect no match 397 1234 398No match 399 12a34 400No match 401 402/\d+/utf 403 12abcd34 404 0: 12 405 406/\d{2,3}/utf 407 12abcd34 408 0: 12 409 1234abcd 410 0: 123 411\= Expect no match 412 1.4 413No match 414 415/\d{2,3}?/utf 416 12abcd34 417 0: 12 418 1234abcd 419 0: 12 420\= Expect no match 421 1.4 422No match 423 424/\S+/utf 425 12abcd34 426 0: 12abcd34 427\= Expect no match 428 \ \ 429No match 430 431/\S{2,3}/utf 432 12abcd34 433 0: 12a 434 1234abcd 435 0: 123 436\= Expect no match 437 \ \ 438No match 439 440/\S{2,3}?/utf 441 12abcd34 442 0: 12 443 1234abcd 444 0: 12 445\= Expect no match 446 \ \ 447No match 448 449/>\s+</utf,aftertext 450 12> <34 451 0: > < 452 0+ 34 453 454/>\s{2,3}</utf,aftertext 455 ab> <cd 456 0: > < 457 0+ cd 458 ab> <ce 459 0: > < 460 0+ ce 461\= Expect no match 462 ab> <cd 463No match 464 465/>\s{2,3}?</utf,aftertext 466 ab> <cd 467 0: > < 468 0+ cd 469 ab> <ce 470 0: > < 471 0+ ce 472\= Expect no match 473 ab> <cd 474No match 475 476/\w+/utf 477 12 34 478 0: 12 479\= Expect no match 480 +++=*! 481No match 482 483/\w{2,3}/utf 484 ab cd 485 0: ab 486 abcd ce 487 0: abc 488\= Expect no match 489 a.b.c 490No match 491 492/\w{2,3}?/utf 493 ab cd 494 0: ab 495 abcd ce 496 0: ab 497\= Expect no match 498 a.b.c 499No match 500 501/\W+/utf 502 12====34 503 0: ==== 504\= Expect no match 505 abcd 506No match 507 508/\W{2,3}/utf 509 ab====cd 510 0: === 511 ab==cd 512 0: == 513\= Expect no match 514 a.b.c 515No match 516 517/\W{2,3}?/utf 518 ab====cd 519 0: == 520 ab==cd 521 0: == 522\= Expect no match 523 a.b.c 524No match 525 526/[\x{100}]/utf 527 \x{100} 528 0: \x{100} 529 Z\x{100} 530 0: \x{100} 531 \x{100}Z 532 0: \x{100} 533 534/[Z\x{100}]/utf 535 Z\x{100} 536 0: Z 537 \x{100} 538 0: \x{100} 539 \x{100}Z 540 0: \x{100} 541 542/[\x{100}\x{200}]/utf 543 ab\x{100}cd 544 0: \x{100} 545 ab\x{200}cd 546 0: \x{200} 547 548/[\x{100}-\x{200}]/utf 549 ab\x{100}cd 550 0: \x{100} 551 ab\x{200}cd 552 0: \x{200} 553 ab\x{111}cd 554 0: \x{111} 555 556/[z-\x{200}]/utf 557 ab\x{100}cd 558 0: \x{100} 559 ab\x{200}cd 560 0: \x{200} 561 ab\x{111}cd 562 0: \x{111} 563 abzcd 564 0: z 565 ab|cd 566 0: | 567 568/[Q\x{100}\x{200}]/utf 569 ab\x{100}cd 570 0: \x{100} 571 ab\x{200}cd 572 0: \x{200} 573 Q? 574 0: Q 575 576/[Q\x{100}-\x{200}]/utf 577 ab\x{100}cd 578 0: \x{100} 579 ab\x{200}cd 580 0: \x{200} 581 ab\x{111}cd 582 0: \x{111} 583 Q? 584 0: Q 585 586/[Qz-\x{200}]/utf 587 ab\x{100}cd 588 0: \x{100} 589 ab\x{200}cd 590 0: \x{200} 591 ab\x{111}cd 592 0: \x{111} 593 abzcd 594 0: z 595 ab|cd 596 0: | 597 Q? 598 0: Q 599 600/[\x{100}\x{200}]{1,3}/utf 601 ab\x{100}cd 602 0: \x{100} 603 ab\x{200}cd 604 0: \x{200} 605 ab\x{200}\x{100}\x{200}\x{100}cd 606 0: \x{200}\x{100}\x{200} 607 608/[\x{100}\x{200}]{1,3}?/utf 609 ab\x{100}cd 610 0: \x{100} 611 ab\x{200}cd 612 0: \x{200} 613 ab\x{200}\x{100}\x{200}\x{100}cd 614 0: \x{200} 615 616/[Q\x{100}\x{200}]{1,3}/utf 617 ab\x{100}cd 618 0: \x{100} 619 ab\x{200}cd 620 0: \x{200} 621 ab\x{200}\x{100}\x{200}\x{100}cd 622 0: \x{200}\x{100}\x{200} 623 624/[Q\x{100}\x{200}]{1,3}?/utf 625 ab\x{100}cd 626 0: \x{100} 627 ab\x{200}cd 628 0: \x{200} 629 ab\x{200}\x{100}\x{200}\x{100}cd 630 0: \x{200} 631 632/(?<=[\x{100}\x{200}])X/utf 633 abc\x{200}X 634 0: X 635 abc\x{100}X 636 0: X 637\= Expect no match 638 X 639No match 640 641/(?<=[Q\x{100}\x{200}])X/utf 642 abc\x{200}X 643 0: X 644 abc\x{100}X 645 0: X 646 abQX 647 0: X 648\= Expect no match 649 X 650No match 651 652/(?<=[\x{100}\x{200}]{3})X/utf 653 abc\x{100}\x{200}\x{100}X 654 0: X 655\= Expect no match 656 abc\x{200}X 657No match 658 X 659No match 660 661/[^\x{100}\x{200}]X/utf 662 AX 663 0: AX 664 \x{150}X 665 0: \x{150}X 666 \x{500}X 667 0: \x{500}X 668\= Expect no match 669 \x{100}X 670No match 671 \x{200}X 672No match 673 674/[^Q\x{100}\x{200}]X/utf 675 AX 676 0: AX 677 \x{150}X 678 0: \x{150}X 679 \x{500}X 680 0: \x{500}X 681\= Expect no match 682 \x{100}X 683No match 684 \x{200}X 685No match 686 QX 687No match 688 689/[^\x{100}-\x{200}]X/utf 690 AX 691 0: AX 692 \x{500}X 693 0: \x{500}X 694\= Expect no match 695 \x{100}X 696No match 697 \x{150}X 698No match 699 \x{200}X 700No match 701 702/[z-\x{100}]/i,utf 703 z 704 0: z 705 Z 706 0: Z 707 \x{100} 708 0: \x{100} 709\= Expect no match 710 \x{102} 711No match 712 y 713No match 714 715/[\xFF]/ 716 >\xff< 717 0: \xff 718 719/[\xff]/utf 720 >\x{ff}< 721 0: \x{ff} 722 723/[^\xFF]/ 724 XYZ 725 0: X 726 727/[^\xff]/utf 728 XYZ 729 0: X 730 \x{123} 731 0: \x{123} 732 733/^[ac]*b/utf 734\= Expect no match 735 xb 736No match 737 738/^[ac\x{100}]*b/utf 739\= Expect no match 740 xb 741No match 742 743/^[^x]*b/i,utf 744\= Expect no match 745 xb 746No match 747 748/^[^x]*b/utf 749\= Expect no match 750 xb 751No match 752 753/^\d*b/utf 754\= Expect no match 755 xb 756No match 757 758/(|a)/g,utf 759 catac 760 0: 761 1: 762 0: 763 1: 764 0: a 765 1: a 766 0: 767 1: 768 0: 769 1: 770 0: a 771 1: a 772 0: 773 1: 774 0: 775 1: 776 a\x{256}a 777 0: 778 1: 779 0: a 780 1: a 781 0: 782 1: 783 0: 784 1: 785 0: a 786 1: a 787 0: 788 1: 789 790/^\x{85}$/i,utf 791 \x{85} 792 0: \x{85} 793 794/^ሴ/utf 795 ሴ 796 0: \x{1234} 797 798/^\ሴ/utf 799 ሴ 800 0: \x{1234} 801 802/(?s)(.{1,5})/utf 803 abcdefg 804 0: abcde 805 1: abcde 806 ab 807 0: ab 808 1: ab 809 810/a*\x{100}*\w/utf 811 a 812 0: a 813 814/\S\S/g,utf 815 A\x{a3}BC 816 0: A\x{a3} 817 0: BC 818 819/\S{2}/g,utf 820 A\x{a3}BC 821 0: A\x{a3} 822 0: BC 823 824/\W\W/g,utf 825 +\x{a3}== 826 0: +\x{a3} 827 0: == 828 829/\W{2}/g,utf 830 +\x{a3}== 831 0: +\x{a3} 832 0: == 833 834/\S/g,utf 835 \x{442}\x{435}\x{441}\x{442} 836 0: \x{442} 837 0: \x{435} 838 0: \x{441} 839 0: \x{442} 840 841/[\S]/g,utf 842 \x{442}\x{435}\x{441}\x{442} 843 0: \x{442} 844 0: \x{435} 845 0: \x{441} 846 0: \x{442} 847 848/\D/g,utf 849 \x{442}\x{435}\x{441}\x{442} 850 0: \x{442} 851 0: \x{435} 852 0: \x{441} 853 0: \x{442} 854 855/[\D]/g,utf 856 \x{442}\x{435}\x{441}\x{442} 857 0: \x{442} 858 0: \x{435} 859 0: \x{441} 860 0: \x{442} 861 862/\W/g,utf 863 \x{2442}\x{2435}\x{2441}\x{2442} 864 0: \x{2442} 865 0: \x{2435} 866 0: \x{2441} 867 0: \x{2442} 868 869/[\W]/g,utf 870 \x{2442}\x{2435}\x{2441}\x{2442} 871 0: \x{2442} 872 0: \x{2435} 873 0: \x{2441} 874 0: \x{2442} 875 876/[\S\s]*/utf 877 abc\n\r\x{442}\x{435}\x{441}\x{442}xyz 878 0: abc\x{0a}\x{0d}\x{442}\x{435}\x{441}\x{442}xyz 879 880/[\x{41f}\S]/g,utf 881 \x{442}\x{435}\x{441}\x{442} 882 0: \x{442} 883 0: \x{435} 884 0: \x{441} 885 0: \x{442} 886 887/.[^\S]./g,utf 888 abc def\x{442}\x{443}xyz\npqr 889 0: c d 890 0: z\x{0a}p 891 892/.[^\S\n]./g,utf 893 abc def\x{442}\x{443}xyz\npqr 894 0: c d 895 896/[[:^alnum:]]/g,utf 897 +\x{2442} 898 0: + 899 0: \x{2442} 900 901/[[:^alpha:]]/g,utf 902 +\x{2442} 903 0: + 904 0: \x{2442} 905 906/[[:^ascii:]]/g,utf 907 A\x{442} 908 0: \x{442} 909 910/[[:^blank:]]/g,utf 911 A\x{442} 912 0: A 913 0: \x{442} 914 915/[[:^cntrl:]]/g,utf 916 A\x{442} 917 0: A 918 0: \x{442} 919 920/[[:^digit:]]/g,utf 921 A\x{442} 922 0: A 923 0: \x{442} 924 925/[[:^graph:]]/g,utf 926 \x19\x{e01ff} 927 0: \x{19} 928 0: \x{e01ff} 929 930/[[:^lower:]]/g,utf 931 A\x{422} 932 0: A 933 0: \x{422} 934 935/[[:^print:]]/g,utf 936 \x{19}\x{e01ff} 937 0: \x{19} 938 0: \x{e01ff} 939 940/[[:^punct:]]/g,utf 941 A\x{442} 942 0: A 943 0: \x{442} 944 945/[[:^space:]]/g,utf 946 A\x{442} 947 0: A 948 0: \x{442} 949 950/[[:^upper:]]/g,utf 951 a\x{442} 952 0: a 953 0: \x{442} 954 955/[[:^word:]]/g,utf 956 +\x{2442} 957 0: + 958 0: \x{2442} 959 960/[[:^xdigit:]]/g,utf 961 M\x{442} 962 0: M 963 0: \x{442} 964 965/[^ABCDEFGHIJKLMNOPQRSTUVWXYZÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞĀĂĄĆĈĊČĎĐĒĔĖĘĚĜĞĠĢĤĦĨĪĬĮİIJĴĶĹĻĽĿŁŃŅŇŊŌŎŐŒŔŖŘŚŜŞŠŢŤŦŨŪŬŮŰŲŴŶŸŹŻŽƁƂƄƆƇƉƊƋƎƏƐƑƓƔƖƗƘƜƝƟƠƢƤƦƧƩƬƮƯƱƲƳƵƷƸƼDŽLJNJǍǏǑǓǕǗǙǛǞǠǢǤǦǨǪǬǮDZǴǶǷǸǺǼǾȀȂȄȆȈȊȌȎȐȒȔȖȘȚȜȞȠȢȤȦȨȪȬȮȰȲȺȻȽȾɁΆΈΉΊΌΎΏΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡΣΤΥΦΧΨΩΪΫϒϓϔϘϚϜϞϠϢϤϦϨϪϬϮϴϷϹϺϽϾϿЀЁЂЃЄЅІЇЈЉЊЋЌЍЎЏАБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯѠѢѤѦѨѪѬѮѰѲѴѶѸѺѼѾҀҊҌҎҐҒҔҖҘҚҜҞҠҢҤҦҨҪҬҮҰҲҴҶҸҺҼҾӀӁӃӅӇӉӋӍӐӒӔӖӘӚӜӞӠӢӤӦӨӪӬӮӰӲӴӶӸԀԂԄԆԈԊԌԎԱԲԳԴԵԶԷԸԹԺԻԼԽԾԿՀՁՂՃՄՅՆՇՈՉՊՋՌՍՎՏՐՑՒՓՔՕՖႠႡႢႣႤႥႦႧႨႩႪႫႬႭႮႯႰႱႲႳႴႵႶႷႸႹႺႻႼႽႾႿჀჁჂჃჄჅḀḂḄḆḈḊḌḎḐḒḔḖḘḚḜḞḠḢḤḦḨḪḬḮḰḲḴḶḸḺḼḾṀṂṄṆṈṊṌṎṐṒṔṖṘṚṜṞṠṢṤṦṨṪṬṮṰṲṴṶṸṺṼṾẀẂẄẆẈẊẌẎẐẒẔẠẢẤẦẨẪẬẮẰẲẴẶẸẺẼẾỀỂỄỆỈỊỌỎỐỒỔỖỘỚỜỞỠỢỤỦỨỪỬỮỰỲỴỶỸἈἉἊἋἌἍἎἏἘἙἚἛἜἝἨἩἪἫἬἭἮἯἸἹἺἻἼἽἾἿὈὉὊὋὌὍὙὛὝὟὨὩὪὫὬὭὮὯᾸᾹᾺΆῈΈῊΉῘῙῚΊῨῩῪΎῬῸΌῺΏabcdefghijklmnopqrstuvwxyzªµºßàáâãäåæçèéêëìíîïðñòóôõöøùúûüýþÿāăąćĉċčďđēĕėęěĝğġģĥħĩīĭįıijĵķĸĺļľŀłńņňʼnŋōŏőœŕŗřśŝşšţťŧũūŭůűųŵŷźżžſƀƃƅƈƌƍƒƕƙƚƛƞơƣƥƨƪƫƭưƴƶƹƺƽƾƿdžljnjǎǐǒǔǖǘǚǜǝǟǡǣǥǧǩǫǭǯǰdzǵǹǻǽǿȁȃȅȇȉȋȍȏȑȓȕȗșțȝȟȡȣȥȧȩȫȭȯȱȳȴȵȶȷȸȹȼȿɀɐɑɒɓɔɕɖɗɘəɚɛɜɝɞɟɠɡɢɣɤɥɦɧɨɩɪɫɬɭɮɯɰɱɲɳɴɵɶɷɸɹɺɻɼɽɾɿʀʁʂʃʄʅʆʇʈʉʊʋʌʍʎʏʐʑʒʓʔʕʖʗʘʙʚʛʜʝʞʟʠʡʢʣʤʥʦʧʨʩʪʫʬʭʮʯΐάέήίΰαβγδεζηθικλμνξοπρςστυφχψωϊϋόύώϐϑϕϖϗϙϛϝϟϡϣϥϧϩϫϭϯϰϱϲϳϵϸϻϼабвгдежзийклмнопрстуфхцчшщъыьэюяѐёђѓєѕіїјљњћќѝўџѡѣѥѧѩѫѭѯѱѳѵѷѹѻѽѿҁҋҍҏґғҕҗҙқҝҟҡңҥҧҩҫҭүұҳҵҷҹһҽҿӂӄӆӈӊӌӎӑӓӕӗәӛӝӟӡӣӥӧөӫӭӯӱӳӵӷӹԁԃԅԇԉԋԍԏաբգդեզէըթժիլխծկհձղճմյնշոչպջռսվտրցւփքօֆևᴀᴁᴂᴃᴄᴅᴆᴇᴈᴉᴊᴋᴌᴍᴎᴏᴐᴑᴒᴓᴔᴕᴖᴗᴘᴙᴚᴛᴜᴝᴞᴟᴠᴡᴢᴣᴤᴥᴦᴧᴨᴩᴪᴫᵢᵣᵤᵥᵦᵧᵨᵩᵪᵫᵬᵭᵮᵯᵰᵱᵲᵳᵴᵵᵶᵷᵹᵺᵻᵼᵽᵾᵿᶀᶁᶂᶃᶄᶅᶆᶇᶈᶉᶊᶋᶌᶍᶎᶏᶐᶑᶒᶓᶔᶕᶖᶗᶘᶙᶚḁḃḅḇḉḋḍḏḑḓḕḗḙḛḝḟḡḣḥḧḩḫḭḯḱḳḵḷḹḻḽḿṁṃṅṇṉṋṍṏṑṓṕṗṙṛṝṟṡṣṥṧṩṫṭṯṱṳṵṷṹṻṽṿẁẃẅẇẉẋẍẏẑẓẕẖẗẘẙẚẛạảấầẩẫậắằẳẵặẹẻẽếềểễệỉịọỏốồổỗộớờởỡợụủứừửữựỳỵỷỹἀἁἂἃἄἅἆἇἐἑἒἓἔἕἠἡἢἣἤἥἦἧἰἱἲἳἴἵἶἷὀὁὂὃὄὅὐὑὒὓὔὕὖὗὠὡὢὣὤὥὦὧὰάὲέὴήὶίὸόὺύὼώᾀᾁᾂᾃᾄᾅᾆᾇᾐᾑᾒᾓᾔᾕᾖᾗᾠᾡᾢᾣᾤᾥᾦᾧᾰᾱᾲᾳᾴᾶᾷιῂῃῄῆῇῐῑῒΐῖῗῠῡῢΰῤῥῦῧῲῳῴῶῷⲁⲃⲅⲇⲉⲋⲍⲏⲑⲓⲕⲗⲙⲛⲝⲟⲡⲣⲥⲧⲩⲫⲭⲯⲱⲳⲵⲷⲹⲻⲽⲿⳁⳃⳅⳇⳉⳋⳍⳏⳑⳓⳕⳗⳙⳛⳝⳟⳡⳣⳤⴀⴁⴂⴃⴄⴅⴆⴇⴈⴉⴊⴋⴌⴍⴎⴏⴐⴑⴒⴓⴔⴕⴖⴗⴘⴙⴚⴛⴜⴝⴞⴟⴠⴡⴢⴣⴤⴥfffiflffifflſtstﬓﬔﬕﬖﬗ\d_^]/utf 966 967/^[^d]*?$/ 968 abc 969 0: abc 970 971/^[^d]*?$/utf 972 abc 973 0: abc 974 975/^[^d]*?$/i 976 abc 977 0: abc 978 979/^[^d]*?$/i,utf 980 abc 981 0: abc 982 983/(?i)[\xc3\xa9\xc3\xbd]|[\xc3\xa9\xc3\xbdA]/utf 984 985/^[a\x{c0}]b/utf 986 \x{c0}b 987 0: \x{c0}b 988 989/^([a\x{c0}]*?)aa/utf 990 a\x{c0}aaaa/ 991 0: a\x{c0}aa 992 1: a\x{c0} 993 994/^([a\x{c0}]*?)aa/utf 995 a\x{c0}aaaa/ 996 0: a\x{c0}aa 997 1: a\x{c0} 998 a\x{c0}a\x{c0}aaa/ 999 0: a\x{c0}a\x{c0}aa 1000 1: a\x{c0}a\x{c0} 1001 1002/^([a\x{c0}]*)aa/utf 1003 a\x{c0}aaaa/ 1004 0: a\x{c0}aaaa 1005 1: a\x{c0}aa 1006 a\x{c0}a\x{c0}aaa/ 1007 0: a\x{c0}a\x{c0}aaa 1008 1: a\x{c0}a\x{c0}a 1009 1010/^([a\x{c0}]*)a\x{c0}/utf 1011 a\x{c0}aaaa/ 1012 0: a\x{c0} 1013 1: 1014 a\x{c0}a\x{c0}aaa/ 1015 0: a\x{c0}a\x{c0} 1016 1: a\x{c0} 1017 1018/A*/g,utf 1019 AAB\x{123}BAA 1020 0: AA 1021 0: 1022 0: 1023 0: 1024 0: AA 1025 0: 1026 1027/(abc)\1/i,utf 1028\= Expect no match 1029 abc 1030No match 1031 1032/(abc)\1/utf 1033\= Expect no match 1034 abc 1035No match 1036 1037/a(*:a\x{1234}b)/utf,mark 1038 abc 1039 0: a 1040MK: a\x{1234}b 1041 1042/a(*:a£b)/utf,mark 1043 abc 1044 0: a 1045MK: a\x{a3}b 1046 1047# Noncharacters 1048 1049/./utf 1050 \x{fffe} 1051 0: \x{fffe} 1052 \x{ffff} 1053 0: \x{ffff} 1054 \x{1fffe} 1055 0: \x{1fffe} 1056 \x{1ffff} 1057 0: \x{1ffff} 1058 \x{2fffe} 1059 0: \x{2fffe} 1060 \x{2ffff} 1061 0: \x{2ffff} 1062 \x{3fffe} 1063 0: \x{3fffe} 1064 \x{3ffff} 1065 0: \x{3ffff} 1066 \x{4fffe} 1067 0: \x{4fffe} 1068 \x{4ffff} 1069 0: \x{4ffff} 1070 \x{5fffe} 1071 0: \x{5fffe} 1072 \x{5ffff} 1073 0: \x{5ffff} 1074 \x{6fffe} 1075 0: \x{6fffe} 1076 \x{6ffff} 1077 0: \x{6ffff} 1078 \x{7fffe} 1079 0: \x{7fffe} 1080 \x{7ffff} 1081 0: \x{7ffff} 1082 \x{8fffe} 1083 0: \x{8fffe} 1084 \x{8ffff} 1085 0: \x{8ffff} 1086 \x{9fffe} 1087 0: \x{9fffe} 1088 \x{9ffff} 1089 0: \x{9ffff} 1090 \x{afffe} 1091 0: \x{afffe} 1092 \x{affff} 1093 0: \x{affff} 1094 \x{bfffe} 1095 0: \x{bfffe} 1096 \x{bffff} 1097 0: \x{bffff} 1098 \x{cfffe} 1099 0: \x{cfffe} 1100 \x{cffff} 1101 0: \x{cffff} 1102 \x{dfffe} 1103 0: \x{dfffe} 1104 \x{dffff} 1105 0: \x{dffff} 1106 \x{efffe} 1107 0: \x{efffe} 1108 \x{effff} 1109 0: \x{effff} 1110 \x{ffffe} 1111 0: \x{ffffe} 1112 \x{fffff} 1113 0: \x{fffff} 1114 \x{10fffe} 1115 0: \x{10fffe} 1116 \x{10ffff} 1117 0: \x{10ffff} 1118 \x{fdd0} 1119 0: \x{fdd0} 1120 \x{fdd1} 1121 0: \x{fdd1} 1122 \x{fdd2} 1123 0: \x{fdd2} 1124 \x{fdd3} 1125 0: \x{fdd3} 1126 \x{fdd4} 1127 0: \x{fdd4} 1128 \x{fdd5} 1129 0: \x{fdd5} 1130 \x{fdd6} 1131 0: \x{fdd6} 1132 \x{fdd7} 1133 0: \x{fdd7} 1134 \x{fdd8} 1135 0: \x{fdd8} 1136 \x{fdd9} 1137 0: \x{fdd9} 1138 \x{fdda} 1139 0: \x{fdda} 1140 \x{fddb} 1141 0: \x{fddb} 1142 \x{fddc} 1143 0: \x{fddc} 1144 \x{fddd} 1145 0: \x{fddd} 1146 \x{fdde} 1147 0: \x{fdde} 1148 \x{fddf} 1149 0: \x{fddf} 1150 \x{fde0} 1151 0: \x{fde0} 1152 \x{fde1} 1153 0: \x{fde1} 1154 \x{fde2} 1155 0: \x{fde2} 1156 \x{fde3} 1157 0: \x{fde3} 1158 \x{fde4} 1159 0: \x{fde4} 1160 \x{fde5} 1161 0: \x{fde5} 1162 \x{fde6} 1163 0: \x{fde6} 1164 \x{fde7} 1165 0: \x{fde7} 1166 \x{fde8} 1167 0: \x{fde8} 1168 \x{fde9} 1169 0: \x{fde9} 1170 \x{fdea} 1171 0: \x{fdea} 1172 \x{fdeb} 1173 0: \x{fdeb} 1174 \x{fdec} 1175 0: \x{fdec} 1176 \x{fded} 1177 0: \x{fded} 1178 \x{fdee} 1179 0: \x{fdee} 1180 \x{fdef} 1181 0: \x{fdef} 1182 1183/^\d*\w{4}/utf 1184 1234 1185 0: 1234 1186\= Expect no match 1187 123 1188No match 1189 1190/^[^b]*\w{4}/utf 1191 aaaa 1192 0: aaaa 1193\= Expect no match 1194 aaa 1195No match 1196 1197/^[^b]*\w{4}/i,utf 1198 aaaa 1199 0: aaaa 1200\= Expect no match 1201 aaa 1202No match 1203 1204/^\x{100}*.{4}/utf 1205 \x{100}\x{100}\x{100}\x{100} 1206 0: \x{100}\x{100}\x{100}\x{100} 1207\= Expect no match 1208 \x{100}\x{100}\x{100} 1209No match 1210 1211/^\x{100}*.{4}/i,utf 1212 \x{100}\x{100}\x{100}\x{100} 1213 0: \x{100}\x{100}\x{100}\x{100} 1214\= Expect no match 1215 \x{100}\x{100}\x{100} 1216No match 1217 1218/^a+[a\x{200}]/utf 1219 aa 1220 0: aa 1221 1222/^.\B.\B./utf 1223 \x{10123}\x{10124}\x{10125} 1224 0: \x{10123}\x{10124}\x{10125} 1225 1226/^#[^\x{ffff}]#[^\x{ffff}]#[^\x{ffff}]#/utf 1227 #\x{10000}#\x{100}#\x{10ffff}# 1228 0: #\x{10000}#\x{100}#\x{10ffff}# 1229 1230# Unicode property support tests 1231 1232/^\pC\pL\pM\pN\pP\pS\pZ</utf 1233 \x7f\x{c0}\x{30f}\x{660}\x{66c}\x{f01}\x{1680}< 1234 0: \x{7f}\x{c0}\x{30f}\x{660}\x{66c}\x{f01}\x{1680}< 1235 \np\x{300}9!\$ < 1236 0: \x{0a}p\x{300}9!$ < 1237\= Expect no match 1238 ap\x{300}9!\$ < 1239No match 1240 1241/^\PC/utf 1242 X 1243 0: X 1244\= Expect no match 1245 \x7f 1246No match 1247 1248/^\PL/utf 1249 9 1250 0: 9 1251\= Expect no match 1252 \x{c0} 1253No match 1254 1255/^\PM/utf 1256 X 1257 0: X 1258\= Expect no match 1259 \x{30f} 1260No match 1261 1262/^\PN/utf 1263 X 1264 0: X 1265\= Expect no match 1266 \x{660} 1267No match 1268 1269/^\PP/utf 1270 X 1271 0: X 1272\= Expect no match 1273 \x{66c} 1274No match 1275 1276/^\PS/utf 1277 X 1278 0: X 1279\= Expect no match 1280 \x{f01} 1281No match 1282 1283/^\PZ/utf 1284 X 1285 0: X 1286\= Expect no match 1287 \x{1680} 1288No match 1289 1290/^\p{Cc}/utf 1291 \x{017} 1292 0: \x{17} 1293 \x{09f} 1294 0: \x{9f} 1295\= Expect no match 1296 \x{0600} 1297No match 1298 1299/^\p{Cf}/utf 1300 \x{601} 1301 0: \x{601} 1302\= Expect no match 1303 \x{09f} 1304No match 1305 1306/^\p{Cn}/utf 1307 \x{e0000} 1308 0: \x{e0000} 1309\= Expect no match 1310 \x{09f} 1311No match 1312 1313/^\p{Co}/utf 1314 \x{f8ff} 1315 0: \x{f8ff} 1316\= Expect no match 1317 \x{09f} 1318No match 1319 1320/^\p{Ll}/utf 1321 a 1322 0: a 1323\= Expect no match 1324 Z 1325No match 1326 \x{e000} 1327No match 1328 1329/^\p{Lm}/utf 1330 \x{2b0} 1331 0: \x{2b0} 1332\= Expect no match 1333 a 1334No match 1335 1336/^\p{Lo}/utf 1337 \x{1bb} 1338 0: \x{1bb} 1339 \x{3400} 1340 0: \x{3400} 1341 \x{3401} 1342 0: \x{3401} 1343 \x{4d00} 1344 0: \x{4d00} 1345 \x{4db4} 1346 0: \x{4db4} 1347 \x{4db5} 1348 0: \x{4db5} 1349 \x{4db6} 1350 0: \x{4db6} 1351\= Expect no match 1352 a 1353No match 1354 \x{2b0} 1355No match 1356 1357/^\p{Lt}/utf 1358 \x{1c5} 1359 0: \x{1c5} 1360\= Expect no match 1361 a 1362No match 1363 \x{2b0} 1364No match 1365 1366/^\p{Lu}/utf 1367 A 1368 0: A 1369\= Expect no match 1370 \x{2b0} 1371No match 1372 1373/^\p{Mc}/utf 1374 \x{903} 1375 0: \x{903} 1376\= Expect no match 1377 X 1378No match 1379 \x{300} 1380No match 1381 1382/^\p{Me}/utf 1383 \x{488} 1384 0: \x{488} 1385\= Expect no match 1386 X 1387No match 1388 \x{903} 1389No match 1390 \x{300} 1391No match 1392 1393/^\p{Mn}/utf 1394 \x{300} 1395 0: \x{300} 1396\= Expect no match 1397 X 1398No match 1399 \x{903} 1400No match 1401 1402/^\p{Nd}+/utf 1403 0123456789\x{660}\x{661}\x{662}\x{663}\x{664}\x{665}\x{666}\x{667}\x{668}\x{669}\x{66a} 1404 0: 0123456789\x{660}\x{661}\x{662}\x{663}\x{664}\x{665}\x{666}\x{667}\x{668}\x{669} 1405 \x{6f0}\x{6f1}\x{6f2}\x{6f3}\x{6f4}\x{6f5}\x{6f6}\x{6f7}\x{6f8}\x{6f9}\x{6fa} 1406 0: \x{6f0}\x{6f1}\x{6f2}\x{6f3}\x{6f4}\x{6f5}\x{6f6}\x{6f7}\x{6f8}\x{6f9} 1407 \x{966}\x{967}\x{968}\x{969}\x{96a}\x{96b}\x{96c}\x{96d}\x{96e}\x{96f}\x{970} 1408 0: \x{966}\x{967}\x{968}\x{969}\x{96a}\x{96b}\x{96c}\x{96d}\x{96e}\x{96f} 1409\= Expect no match 1410 X 1411No match 1412 1413/^\p{Nl}/utf 1414 \x{16ee} 1415 0: \x{16ee} 1416\= Expect no match 1417 X 1418No match 1419 \x{966} 1420No match 1421 1422/^\p{No}/utf 1423 \x{b2} 1424 0: \x{b2} 1425 \x{b3} 1426 0: \x{b3} 1427\= Expect no match 1428 X 1429No match 1430 \x{16ee} 1431No match 1432 1433/^\p{Pc}/utf 1434 \x5f 1435 0: _ 1436 \x{203f} 1437 0: \x{203f} 1438\= Expect no match 1439 X 1440No match 1441 - 1442No match 1443 \x{58a} 1444No match 1445 1446/^\p{Pd}/utf 1447 - 1448 0: - 1449 \x{58a} 1450 0: \x{58a} 1451\= Expect no match 1452 X 1453No match 1454 \x{203f} 1455No match 1456 1457/^\p{Pe}/utf 1458 ) 1459 0: ) 1460 ] 1461 0: ] 1462 } 1463 0: } 1464 \x{f3b} 1465 0: \x{f3b} 1466\= Expect no match 1467 X 1468No match 1469 \x{203f} 1470No match 1471 ( 1472No match 1473 [ 1474No match 1475 { 1476No match 1477 \x{f3c} 1478No match 1479 1480/^\p{Pf}/utf 1481 \x{bb} 1482 0: \x{bb} 1483 \x{2019} 1484 0: \x{2019} 1485\= Expect no match 1486 X 1487No match 1488 \x{203f} 1489No match 1490 1491/^\p{Pi}/utf 1492 \x{ab} 1493 0: \x{ab} 1494 \x{2018} 1495 0: \x{2018} 1496\= Expect no match 1497 X 1498No match 1499 \x{203f} 1500No match 1501 1502/^\p{Po}/utf 1503 ! 1504 0: ! 1505 \x{37e} 1506 0: \x{37e} 1507\= Expect no match 1508 X 1509No match 1510 \x{203f} 1511No match 1512 1513/^\p{Ps}/utf 1514 ( 1515 0: ( 1516 [ 1517 0: [ 1518 { 1519 0: { 1520 \x{f3c} 1521 0: \x{f3c} 1522\= Expect no match 1523 X 1524No match 1525 ) 1526No match 1527 ] 1528No match 1529 } 1530No match 1531 \x{f3b} 1532No match 1533 1534/^\p{Sk}/utf 1535 \x{2c2} 1536 0: \x{2c2} 1537\= Expect no match 1538 X 1539No match 1540 \x{9f2} 1541No match 1542 1543/^\p{Sm}+/utf 1544 +<|~\x{ac}\x{2044} 1545 0: +<|~\x{ac}\x{2044} 1546\= Expect no match 1547 X 1548No match 1549 \x{9f2} 1550No match 1551 1552/^\p{So}/utf 1553 \x{a6} 1554 0: \x{a6} 1555 \x{482} 1556 0: \x{482} 1557\= Expect no match 1558 X 1559No match 1560 \x{9f2} 1561No match 1562 1563/^\p{Zl}/utf 1564 \x{2028} 1565 0: \x{2028} 1566\= Expect no match 1567 X 1568No match 1569 \x{2029} 1570No match 1571 1572/^\p{Zp}/utf 1573 \x{2029} 1574 0: \x{2029} 1575\= Expect no match 1576 X 1577No match 1578 \x{2028} 1579No match 1580 1581/\p{Nd}+(..)/utf 1582 \x{660}\x{661}\x{662}ABC 1583 0: \x{660}\x{661}\x{662}AB 1584 1: AB 1585 1586/\p{Nd}+?(..)/utf 1587 \x{660}\x{661}\x{662}ABC 1588 0: \x{660}\x{661}\x{662} 1589 1: \x{661}\x{662} 1590 1591/\p{Nd}{2,}(..)/utf 1592 \x{660}\x{661}\x{662}ABC 1593 0: \x{660}\x{661}\x{662}AB 1594 1: AB 1595 1596/\p{Nd}{2,}?(..)/utf 1597 \x{660}\x{661}\x{662}ABC 1598 0: \x{660}\x{661}\x{662}A 1599 1: \x{662}A 1600 1601/\p{Nd}*(..)/utf 1602 \x{660}\x{661}\x{662}ABC 1603 0: \x{660}\x{661}\x{662}AB 1604 1: AB 1605 1606/\p{Nd}*?(..)/utf 1607 \x{660}\x{661}\x{662}ABC 1608 0: \x{660}\x{661} 1609 1: \x{660}\x{661} 1610 1611/\p{Nd}{2}(..)/utf 1612 \x{660}\x{661}\x{662}ABC 1613 0: \x{660}\x{661}\x{662}A 1614 1: \x{662}A 1615 1616/\p{Nd}{2,3}(..)/utf 1617 \x{660}\x{661}\x{662}ABC 1618 0: \x{660}\x{661}\x{662}AB 1619 1: AB 1620 1621/\p{Nd}{2,3}?(..)/utf 1622 \x{660}\x{661}\x{662}ABC 1623 0: \x{660}\x{661}\x{662}A 1624 1: \x{662}A 1625 1626/\p{Nd}?(..)/utf 1627 \x{660}\x{661}\x{662}ABC 1628 0: \x{660}\x{661}\x{662} 1629 1: \x{661}\x{662} 1630 1631/\p{Nd}??(..)/utf 1632 \x{660}\x{661}\x{662}ABC 1633 0: \x{660}\x{661} 1634 1: \x{660}\x{661} 1635 1636/\p{Nd}*+(..)/utf 1637 \x{660}\x{661}\x{662}ABC 1638 0: \x{660}\x{661}\x{662}AB 1639 1: AB 1640 1641/\p{Nd}*+(...)/utf 1642 \x{660}\x{661}\x{662}ABC 1643 0: \x{660}\x{661}\x{662}ABC 1644 1: ABC 1645 1646/\p{Nd}*+(....)/utf 1647\= Expect no match 1648 \x{660}\x{661}\x{662}ABC 1649No match 1650 1651/(?<=A\p{Nd})XYZ/utf 1652 A2XYZ 1653 0: XYZ 1654 123A5XYZPQR 1655 0: XYZ 1656 ABA\x{660}XYZpqr 1657 0: XYZ 1658\= Expect no match 1659 AXYZ 1660No match 1661 XYZ 1662No match 1663 1664/(?<!\pL)XYZ/utf 1665 1XYZ 1666 0: XYZ 1667 AB=XYZ.. 1668 0: XYZ 1669 XYZ 1670 0: XYZ 1671\= Expect no match 1672 WXYZ 1673No match 1674 1675/[\P{Nd}]+/utf 1676 abcd 1677 0: abcd 1678\= Expect no match 1679 1234 1680No match 1681 1682/\D+/utf 1683 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa 1684 0: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa 1685\= Expect no match 1686 11111111111111111111111111111111111111111111111111111111111111111111111 1687No match 1688 1689/\P{Nd}+/utf 1690 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa 1691 0: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa 1692\= Expect no match 1693 11111111111111111111111111111111111111111111111111111111111111111111111 1694No match 1695 1696/[\D]+/utf 1697 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa 1698 0: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa 1699\= Expect no match 1700 11111111111111111111111111111111111111111111111111111111111111111111111 1701No match 1702 1703/[\P{Nd}]+/utf 1704 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa 1705 0: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa 1706\= Expect no match 1707 11111111111111111111111111111111111111111111111111111111111111111111111 1708No match 1709 1710/[\D\P{Nd}]+/utf 1711 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa 1712 0: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa 1713\= Expect no match 1714 11111111111111111111111111111111111111111111111111111111111111111111111 1715No match 1716 1717/\pL/utf 1718 a 1719 0: a 1720 A 1721 0: A 1722 1723/\pL/i,utf 1724 a 1725 0: a 1726 A 1727 0: A 1728 1729/\p{Lu}/utf 1730 A 1731 0: A 1732 aZ 1733 0: Z 1734\= Expect no match 1735 abc 1736No match 1737 1738/\p{Ll}/utf 1739 a 1740 0: a 1741 Az 1742 0: z 1743\= Expect no match 1744 ABC 1745No match 1746 1747/A\x{391}\x{10427}\x{ff3a}\x{1fb0}/utf 1748 A\x{391}\x{10427}\x{ff3a}\x{1fb0} 1749 0: A\x{391}\x{10427}\x{ff3a}\x{1fb0} 1750\= Expect no match 1751 a\x{391}\x{10427}\x{ff3a}\x{1fb0} 1752No match 1753 A\x{3b1}\x{10427}\x{ff3a}\x{1fb0} 1754No match 1755 A\x{391}\x{1044F}\x{ff3a}\x{1fb0} 1756No match 1757 A\x{391}\x{10427}\x{ff5a}\x{1fb0} 1758No match 1759 A\x{391}\x{10427}\x{ff3a}\x{1fb8} 1760No match 1761 1762/A\x{391}\x{10427}\x{ff3a}\x{1fb0}/i,utf 1763 A\x{391}\x{10427}\x{ff3a}\x{1fb0} 1764 0: A\x{391}\x{10427}\x{ff3a}\x{1fb0} 1765 a\x{391}\x{10427}\x{ff3a}\x{1fb0} 1766 0: a\x{391}\x{10427}\x{ff3a}\x{1fb0} 1767 A\x{3b1}\x{10427}\x{ff3a}\x{1fb0} 1768 0: A\x{3b1}\x{10427}\x{ff3a}\x{1fb0} 1769 A\x{391}\x{1044F}\x{ff3a}\x{1fb0} 1770 0: A\x{391}\x{1044f}\x{ff3a}\x{1fb0} 1771 A\x{391}\x{10427}\x{ff5a}\x{1fb0} 1772 0: A\x{391}\x{10427}\x{ff5a}\x{1fb0} 1773 A\x{391}\x{10427}\x{ff3a}\x{1fb8} 1774 0: A\x{391}\x{10427}\x{ff3a}\x{1fb8} 1775 1776/\x{391}+/i,utf 1777 \x{391}\x{3b1}\x{3b1}\x{3b1}\x{391} 1778 0: \x{391}\x{3b1}\x{3b1}\x{3b1}\x{391} 1779 1780/\x{391}{3,5}(.)/i,utf 1781 \x{391}\x{3b1}\x{3b1}\x{3b1}\x{391}X 1782 0: \x{391}\x{3b1}\x{3b1}\x{3b1}\x{391}X 1783 1: X 1784 1785/\x{391}{3,5}?(.)/i,utf 1786 \x{391}\x{3b1}\x{3b1}\x{3b1}\x{391}X 1787 0: \x{391}\x{3b1}\x{3b1}\x{3b1} 1788 1: \x{3b1} 1789 1790/[\x{391}\x{ff3a}]/i,utf 1791 \x{391} 1792 0: \x{391} 1793 \x{ff3a} 1794 0: \x{ff3a} 1795 \x{3b1} 1796 0: \x{3b1} 1797 \x{ff5a} 1798 0: \x{ff5a} 1799 1800/^(\X*)C/utf 1801 A\x{300}\x{301}\x{302}BCA\x{300}\x{301} 1802 0: A\x{300}\x{301}\x{302}BC 1803 1: A\x{300}\x{301}\x{302}B 1804 A\x{300}\x{301}\x{302}BCA\x{300}\x{301}C 1805 0: A\x{300}\x{301}\x{302}BCA\x{300}\x{301}C 1806 1: A\x{300}\x{301}\x{302}BCA\x{300}\x{301} 1807 1808/^(\X*?)C/utf 1809 A\x{300}\x{301}\x{302}BCA\x{300}\x{301} 1810 0: A\x{300}\x{301}\x{302}BC 1811 1: A\x{300}\x{301}\x{302}B 1812 A\x{300}\x{301}\x{302}BCA\x{300}\x{301}C 1813 0: A\x{300}\x{301}\x{302}BC 1814 1: A\x{300}\x{301}\x{302}B 1815 1816/^(\X*)(.)/utf 1817 A\x{300}\x{301}\x{302}BCA\x{300}\x{301} 1818 0: A\x{300}\x{301}\x{302}BCA 1819 1: A\x{300}\x{301}\x{302}BC 1820 2: A 1821 A\x{300}\x{301}\x{302}BCA\x{300}\x{301}C 1822 0: A\x{300}\x{301}\x{302}BCA\x{300}\x{301}C 1823 1: A\x{300}\x{301}\x{302}BCA\x{300}\x{301} 1824 2: C 1825 1826/^(\X*?)(.)/utf 1827 A\x{300}\x{301}\x{302}BCA\x{300}\x{301} 1828 0: A 1829 1: 1830 2: A 1831 A\x{300}\x{301}\x{302}BCA\x{300}\x{301}C 1832 0: A 1833 1: 1834 2: A 1835 1836/^\X(.)/utf 1837\= Expect no match 1838 A\x{300}\x{301}\x{302} 1839No match 1840 1841/^\X{2,3}(.)/utf 1842 A\x{300}\x{301}B\x{300}X 1843 0: A\x{300}\x{301}B\x{300}X 1844 1: X 1845 A\x{300}\x{301}B\x{300}C\x{300}\x{301} 1846 0: A\x{300}\x{301}B\x{300}C 1847 1: C 1848 A\x{300}\x{301}B\x{300}C\x{300}\x{301}X 1849 0: A\x{300}\x{301}B\x{300}C\x{300}\x{301}X 1850 1: X 1851 A\x{300}\x{301}B\x{300}C\x{300}\x{301}DA\x{300}X 1852 0: A\x{300}\x{301}B\x{300}C\x{300}\x{301}D 1853 1: D 1854 1855/^\X{2,3}?(.)/utf 1856 A\x{300}\x{301}B\x{300}X 1857 0: A\x{300}\x{301}B\x{300}X 1858 1: X 1859 A\x{300}\x{301}B\x{300}C\x{300}\x{301} 1860 0: A\x{300}\x{301}B\x{300}C 1861 1: C 1862 A\x{300}\x{301}B\x{300}C\x{300}\x{301}X 1863 0: A\x{300}\x{301}B\x{300}C 1864 1: C 1865 A\x{300}\x{301}B\x{300}C\x{300}\x{301}DA\x{300}X 1866 0: A\x{300}\x{301}B\x{300}C 1867 1: C 1868 1869/^\X/utf 1870 A 1871 0: A 1872 A\x{300}BC 1873 0: A\x{300} 1874 A\x{300}\x{301}\x{302}BC 1875 0: A\x{300}\x{301}\x{302} 1876 \x{300} 1877 0: \x{300} 1878 1879/^\p{Han}+/utf 1880 \x{2e81}\x{3007}\x{2f804}\x{31a0} 1881 0: \x{2e81}\x{3007}\x{2f804} 1882\= Expect no match 1883 \x{2e7f} 1884No match 1885 1886/^\P{Katakana}+/utf 1887 \x{3105} 1888 0: \x{3105} 1889\= Expect no match 1890 \x{30ff} 1891No match 1892 1893/^[\p{Arabic}]/utf 1894 \x{06e9} 1895 0: \x{6e9} 1896 \x{060b} 1897 0: \x{60b} 1898\= Expect no match 1899 X\x{06e9} 1900No match 1901 1902/^[\P{Yi}]/utf 1903 \x{2f800} 1904 0: \x{2f800} 1905\= Expect no match 1906 \x{a014} 1907No match 1908 \x{a4c6} 1909No match 1910 1911/^\p{Any}X/utf 1912 AXYZ 1913 0: AX 1914 \x{1234}XYZ 1915 0: \x{1234}X 1916\= Expect no match 1917 X 1918No match 1919 1920/^\P{Any}X/utf 1921\= Expect no match 1922 AX 1923No match 1924 1925/^\p{Any}?X/utf 1926 XYZ 1927 0: X 1928 AXYZ 1929 0: AX 1930 \x{1234}XYZ 1931 0: \x{1234}X 1932\= Expect no match 1933 ABXYZ 1934No match 1935 1936/^\P{Any}?X/utf 1937 XYZ 1938 0: X 1939\= Expect no match 1940 AXYZ 1941No match 1942 \x{1234}XYZ 1943No match 1944 ABXYZ 1945No match 1946 1947/^\p{Any}+X/utf 1948 AXYZ 1949 0: AX 1950 \x{1234}XYZ 1951 0: \x{1234}X 1952 A\x{1234}XYZ 1953 0: A\x{1234}X 1954\= Expect no match 1955 XYZ 1956No match 1957 1958/^\P{Any}+X/utf 1959\= Expect no match 1960 AXYZ 1961No match 1962 \x{1234}XYZ 1963No match 1964 A\x{1234}XYZ 1965No match 1966 XYZ 1967No match 1968 1969/^\p{Any}*X/utf 1970 XYZ 1971 0: X 1972 AXYZ 1973 0: AX 1974 \x{1234}XYZ 1975 0: \x{1234}X 1976 A\x{1234}XYZ 1977 0: A\x{1234}X 1978 1979/^\P{Any}*X/utf 1980 XYZ 1981 0: X 1982\= Expect no match 1983 AXYZ 1984No match 1985 \x{1234}XYZ 1986No match 1987 A\x{1234}XYZ 1988No match 1989 1990/^[\p{Any}]X/utf 1991 AXYZ 1992 0: AX 1993 \x{1234}XYZ 1994 0: \x{1234}X 1995\= Expect no match 1996 X 1997No match 1998 1999/^[\P{Any}]X/utf 2000\= Expect no match 2001 AX 2002No match 2003 2004/^[\p{Any}]?X/utf 2005 XYZ 2006 0: X 2007 AXYZ 2008 0: AX 2009 \x{1234}XYZ 2010 0: \x{1234}X 2011\= Expect no match 2012 ABXYZ 2013No match 2014 2015/^[\P{Any}]?X/utf 2016 XYZ 2017 0: X 2018\= Expect no match 2019 AXYZ 2020No match 2021 \x{1234}XYZ 2022No match 2023 ABXYZ 2024No match 2025 2026/^[\p{Any}]+X/utf 2027 AXYZ 2028 0: AX 2029 \x{1234}XYZ 2030 0: \x{1234}X 2031 A\x{1234}XYZ 2032 0: A\x{1234}X 2033\= Expect no match 2034 XYZ 2035No match 2036 2037/^[\P{Any}]+X/utf 2038\= Expect no match 2039 AXYZ 2040No match 2041 \x{1234}XYZ 2042No match 2043 A\x{1234}XYZ 2044No match 2045 XYZ 2046No match 2047 2048/^[\p{Any}]*X/utf 2049 XYZ 2050 0: X 2051 AXYZ 2052 0: AX 2053 \x{1234}XYZ 2054 0: \x{1234}X 2055 A\x{1234}XYZ 2056 0: A\x{1234}X 2057 2058/^[\P{Any}]*X/utf 2059 XYZ 2060 0: X 2061\= Expect no match 2062 AXYZ 2063No match 2064 \x{1234}XYZ 2065No match 2066 A\x{1234}XYZ 2067No match 2068 2069/^\p{Any}{3,5}?/utf 2070 abcdefgh 2071 0: abc 2072 \x{1234}\n\r\x{3456}xyz 2073 0: \x{1234}\x{0a}\x{0d} 2074 2075/^\p{Any}{3,5}/utf 2076 abcdefgh 2077 0: abcde 2078 \x{1234}\n\r\x{3456}xyz 2079 0: \x{1234}\x{0a}\x{0d}\x{3456}x 2080 2081/^\P{Any}{3,5}?/utf 2082\= Expect no match 2083 abcdefgh 2084No match 2085 \x{1234}\n\r\x{3456}xyz 2086No match 2087 2088/^\p{L&}X/utf 2089 AXY 2090 0: AX 2091 aXY 2092 0: aX 2093 \x{1c5}XY 2094 0: \x{1c5}X 2095\= Expect no match 2096 \x{1bb}XY 2097No match 2098 \x{2b0}XY 2099No match 2100 !XY 2101No match 2102 2103/^[\p{L&}]X/utf 2104 AXY 2105 0: AX 2106 aXY 2107 0: aX 2108 \x{1c5}XY 2109 0: \x{1c5}X 2110\= Expect no match 2111 \x{1bb}XY 2112No match 2113 \x{2b0}XY 2114No match 2115 !XY 2116No match 2117 2118/^\p{L&}+X/utf 2119 AXY 2120 0: AX 2121 aXY 2122 0: aX 2123 AbcdeXyz 2124 0: AbcdeX 2125 \x{1c5}AbXY 2126 0: \x{1c5}AbX 2127 abcDEXypqreXlmn 2128 0: abcDEXypqreX 2129\= Expect no match 2130 \x{1bb}XY 2131No match 2132 \x{2b0}XY 2133No match 2134 !XY 2135No match 2136 2137/^[\p{L&}]+X/utf 2138 AXY 2139 0: AX 2140 aXY 2141 0: aX 2142 AbcdeXyz 2143 0: AbcdeX 2144 \x{1c5}AbXY 2145 0: \x{1c5}AbX 2146 abcDEXypqreXlmn 2147 0: abcDEXypqreX 2148\= Expect no match 2149 \x{1bb}XY 2150No match 2151 \x{2b0}XY 2152No match 2153 !XY 2154No match 2155 2156/^\p{L&}+?X/utf 2157 AXY 2158 0: AX 2159 aXY 2160 0: aX 2161 AbcdeXyz 2162 0: AbcdeX 2163 \x{1c5}AbXY 2164 0: \x{1c5}AbX 2165 abcDEXypqreXlmn 2166 0: abcDEX 2167\= Expect no match 2168 \x{1bb}XY 2169No match 2170 \x{2b0}XY 2171No match 2172 !XY 2173No match 2174 2175/^[\p{L&}]+?X/utf 2176 AXY 2177 0: AX 2178 aXY 2179 0: aX 2180 AbcdeXyz 2181 0: AbcdeX 2182 \x{1c5}AbXY 2183 0: \x{1c5}AbX 2184 abcDEXypqreXlmn 2185 0: abcDEX 2186\= Expect no match 2187 \x{1bb}XY 2188No match 2189 \x{2b0}XY 2190No match 2191 !XY 2192No match 2193 2194/^\P{L&}X/utf 2195 !XY 2196 0: !X 2197 \x{1bb}XY 2198 0: \x{1bb}X 2199 \x{2b0}XY 2200 0: \x{2b0}X 2201\= Expect no match 2202 \x{1c5}XY 2203No match 2204 AXY 2205No match 2206 2207/^[\P{L&}]X/utf 2208 !XY 2209 0: !X 2210 \x{1bb}XY 2211 0: \x{1bb}X 2212 \x{2b0}XY 2213 0: \x{2b0}X 2214\= Expect no match 2215 \x{1c5}XY 2216No match 2217 AXY 2218No match 2219 2220/^(\p{Z}[^\p{C}\p{Z}]+)*$/ 2221 \xa0! 2222 0: \xa0! 2223 1: \xa0! 2224 2225/^[\pL](abc)(?1)/ 2226 AabcabcYZ 2227 0: Aabcabc 2228 1: abc 2229 2230/([\pL]=(abc))*X/ 2231 L=abcX 2232 0: L=abcX 2233 1: L=abc 2234 2: abc 2235 2236/^\p{Balinese}\p{Cuneiform}\p{Nko}\p{Phags_Pa}\p{Phoenician}/utf 2237 \x{1b00}\x{12000}\x{7c0}\x{a840}\x{10900} 2238 0: \x{1b00}\x{12000}\x{7c0}\x{a840}\x{10900} 2239 2240# Check property support in non-UTF mode 2241 2242/\p{L}{4}/ 2243 123abcdefg 2244 0: abcd 2245 123abc\xc4\xc5zz 2246 0: abc\xc4 2247 2248/\X{1,3}\d/ 2249\= Expect no match 2250 \x8aBCD 2251No match 2252 2253/\X?\d/ 2254\= Expect no match 2255 \x8aBCD 2256No match 2257 2258/\P{L}?\d/ 2259\= Expect no match 2260 \x8aBCD 2261No match 2262 2263/[\PPP\x8a]{1,}\x80/ 2264 A\x80 2265 0: A\x80 2266 2267/^[\p{Arabic}]/utf 2268 \x{604} 2269 0: \x{604} 2270 \x{60e} 2271 0: \x{60e} 2272 \x{656} 2273 0: \x{656} 2274 \x{657} 2275 0: \x{657} 2276 \x{658} 2277 0: \x{658} 2278 \x{659} 2279 0: \x{659} 2280 \x{65a} 2281 0: \x{65a} 2282 \x{65b} 2283 0: \x{65b} 2284 \x{65c} 2285 0: \x{65c} 2286 \x{65d} 2287 0: \x{65d} 2288 \x{65e} 2289 0: \x{65e} 2290 \x{65f} 2291 0: \x{65f} 2292 \x{66a} 2293 0: \x{66a} 2294 \x{6e9} 2295 0: \x{6e9} 2296 \x{6ef} 2297 0: \x{6ef} 2298 \x{6fa} 2299 0: \x{6fa} 2300 2301/^\p{Cyrillic}/utf 2302 \x{1d2b} 2303 0: \x{1d2b} 2304 2305/^\p{Common}/utf 2306 \x{2116} 2307 0: \x{2116} 2308 \x{1D183} 2309 0: \x{1d183} 2310 2311/^\p{Inherited}/utf 2312 \x{200c} 2313 0: \x{200c} 2314\= Expect no match 2315 \x{64a} 2316No match 2317 \x{656} 2318No match 2319 2320/^\p{Shavian}/utf 2321 \x{10450} 2322 0: \x{10450} 2323 \x{1047f} 2324 0: \x{1047f} 2325 2326/^\p{Deseret}/utf 2327 \x{10400} 2328 0: \x{10400} 2329 \x{1044f} 2330 0: \x{1044f} 2331 2332/^\p{Osmanya}/utf 2333 \x{10480} 2334 0: \x{10480} 2335 \x{1049d} 2336 0: \x{1049d} 2337 \x{104a0} 2338 0: \x{104a0} 2339 \x{104a9} 2340 0: \x{104a9} 2341\= Expect no match 2342 \x{1049e} 2343No match 2344 \x{1049f} 2345No match 2346 \x{104aa} 2347No match 2348 2349/\p{Carian}\p{Cham}\p{Kayah_Li}\p{Lepcha}\p{Lycian}\p{Lydian}\p{Ol_Chiki}\p{Rejang}\p{Saurashtra}\p{Sundanese}\p{Vai}/utf 2350 \x{102A4}\x{AA52}\x{A91D}\x{1C46}\x{10283}\x{1092E}\x{1C6B}\x{A93B}\x{A8BF}\x{1BA0}\x{A50A}==== 2351 0: \x{102a4}\x{aa52}\x{a91d}\x{1c46}\x{10283}\x{1092e}\x{1c6b}\x{a93b}\x{a8bf}\x{1ba0}\x{a50a} 2352 2353/\x{a77d}\x{1d79}/i,utf 2354 \x{a77d}\x{1d79} 2355 0: \x{a77d}\x{1d79} 2356 \x{1d79}\x{a77d} 2357 0: \x{1d79}\x{a77d} 2358 2359/\x{a77d}\x{1d79}/utf 2360 \x{a77d}\x{1d79} 2361 0: \x{a77d}\x{1d79} 2362\= Expect no match 2363 \x{1d79}\x{a77d} 2364No match 2365 2366/(A)\1/i,utf 2367 AA 2368 0: AA 2369 1: A 2370 Aa 2371 0: Aa 2372 1: A 2373 aa 2374 0: aa 2375 1: a 2376 aA 2377 0: aA 2378 1: a 2379 2380/(\x{10a})\1/i,utf 2381 \x{10a}\x{10a} 2382 0: \x{10a}\x{10a} 2383 1: \x{10a} 2384 \x{10a}\x{10b} 2385 0: \x{10a}\x{10b} 2386 1: \x{10a} 2387 \x{10b}\x{10b} 2388 0: \x{10b}\x{10b} 2389 1: \x{10b} 2390 \x{10b}\x{10a} 2391 0: \x{10b}\x{10a} 2392 1: \x{10b} 2393 2394# The next two tests are for property support in non-UTF mode 2395 2396/(?:\p{Lu}|\x20)+/ 2397 \x41\x20\x50\xC2\x54\xC9\x20\x54\x4F\x44\x41\x59 2398 0: A P\xc2T\xc9 TODAY 2399 2400/[\p{Lu}\x20]+/ 2401 \x41\x20\x50\xC2\x54\xC9\x20\x54\x4F\x44\x41\x59 2402 0: A P\xc2T\xc9 TODAY 2403 2404/\p{Avestan}\p{Bamum}\p{Egyptian_Hieroglyphs}\p{Imperial_Aramaic}\p{Inscriptional_Pahlavi}\p{Inscriptional_Parthian}\p{Javanese}\p{Kaithi}\p{Lisu}\p{Meetei_Mayek}\p{Old_South_Arabian}\p{Old_Turkic}\p{Samaritan}\p{Tai_Tham}\p{Tai_Viet}/utf 2405 \x{10b00}\x{a6ef}\x{13007}\x{10857}\x{10b78}\x{10b58}\x{a980}\x{110c1}\x{a4ff}\x{abc0}\x{10a7d}\x{10c48}\x{0800}\x{1aad}\x{aac0} 2406 0: \x{10b00}\x{a6ef}\x{13007}\x{10857}\x{10b78}\x{10b58}\x{a980}\x{110c1}\x{a4ff}\x{abc0}\x{10a7d}\x{10c48}\x{800}\x{1aad}\x{aac0} 2407 2408/^\w+/utf,ucp 2409 Az_\x{aa}\x{c0}\x{1c5}\x{2b0}\x{3b6}\x{1d7c9}\x{2fa1d}1\x{660}\x{bef}\x{16ee} 2410 0: Az_\x{aa}\x{c0}\x{1c5}\x{2b0}\x{3b6}\x{1d7c9}\x{2fa1d}1\x{660}\x{bef}\x{16ee} 2411 2412/^[[:xdigit:]]*/utf,ucp 2413 1a\x{660}\x{bef}\x{16ee} 2414 0: 1a 2415 2416/^\d+/utf,ucp 2417 1\x{660}\x{bef}\x{16ee} 2418 0: 1\x{660}\x{bef} 2419 2420/^[[:digit:]]+/utf,ucp 2421 1\x{660}\x{bef}\x{16ee} 2422 0: 1\x{660}\x{bef} 2423 2424/^>\s+/utf,ucp 2425 >\x{20}\x{a0}\x{1680}\x{2028}\x{2029}\x{202f}\x{9}\x{b} 2426 0: > \x{a0}\x{1680}\x{2028}\x{2029}\x{202f}\x{09}\x{0b} 2427 2428/^>\pZ+/utf,ucp 2429 >\x{20}\x{a0}\x{1680}\x{2028}\x{2029}\x{202f}\x{9}\x{b} 2430 0: > \x{a0}\x{1680}\x{2028}\x{2029}\x{202f} 2431 2432/^>[[:space:]]*/utf,ucp 2433 >\x{20}\x{a0}\x{1680}\x{2028}\x{2029}\x{202f}\x{9}\x{b} 2434 0: > \x{a0}\x{1680}\x{2028}\x{2029}\x{202f}\x{09}\x{0b} 2435 2436/^>[[:blank:]]*/utf,ucp 2437 >\x{20}\x{a0}\x{1680}\x{2000}\x{202f}\x{9}\x{b}\x{2028} 2438 0: > \x{a0}\x{1680}\x{2000}\x{202f}\x{09} 2439 2440/^[[:alpha:]]*/utf,ucp 2441 Az\x{aa}\x{c0}\x{1c5}\x{2b0}\x{3b6}\x{1d7c9}\x{2fa1d} 2442 0: Az\x{aa}\x{c0}\x{1c5}\x{2b0}\x{3b6}\x{1d7c9}\x{2fa1d} 2443 2444/^[[:alnum:]]*/utf,ucp 2445 Az\x{aa}\x{c0}\x{1c5}\x{2b0}\x{3b6}\x{1d7c9}\x{2fa1d}1\x{660}\x{bef}\x{16ee} 2446 0: Az\x{aa}\x{c0}\x{1c5}\x{2b0}\x{3b6}\x{1d7c9}\x{2fa1d}1\x{660}\x{bef}\x{16ee} 2447 2448/^[[:cntrl:]]*/utf,ucp 2449 \x{0}\x{09}\x{1f}\x{7f}\x{9f} 2450 0: \x{00}\x{09}\x{1f}\x{7f}\x{9f} 2451 2452/^[[:graph:]]*/utf,ucp 2453 A\x{a1}\x{a0} 2454 0: A\x{a1} 2455 2456/^[[:print:]]*/utf,ucp 2457 A z\x{a0}\x{a1} 2458 0: A z\x{a0}\x{a1} 2459 2460/^[[:punct:]]*/utf,ucp 2461 .+\x{a1}\x{a0} 2462 0: .+\x{a1} 2463 2464/\p{Zs}*?\R/ 2465\= Expect no match 2466 a\xFCb 2467No match 2468 2469/\p{Zs}*\R/ 2470\= Expect no match 2471 a\xFCb 2472No match 2473 2474/ⱥ/i,utf 2475 ⱥ 2476 0: \x{2c65} 2477 Ⱥx 2478 0: \x{23a} 2479 Ⱥ 2480 0: \x{23a} 2481 2482/[ⱥ]/i,utf 2483 ⱥ 2484 0: \x{2c65} 2485 Ⱥx 2486 0: \x{23a} 2487 Ⱥ 2488 0: \x{23a} 2489 2490/Ⱥ/i,utf 2491 Ⱥ 2492 0: \x{23a} 2493 ⱥ 2494 0: \x{2c65} 2495 2496# These are tests for extended grapheme clusters 2497 2498/^\X/utf,aftertext 2499 G\x{34e}\x{34e}X 2500 0: G\x{34e}\x{34e} 2501 0+ X 2502 \x{34e}\x{34e}X 2503 0: \x{34e}\x{34e} 2504 0+ X 2505 \x04X 2506 0: \x{04} 2507 0+ X 2508 \x{1100}X 2509 0: \x{1100} 2510 0+ X 2511 \x{1100}\x{34e}X 2512 0: \x{1100}\x{34e} 2513 0+ X 2514 \x{1b04}\x{1b04}X 2515 0: \x{1b04}\x{1b04} 2516 0+ X 2517 *These match up to the roman letters 2518 0: * 2519 0+ These match up to the roman letters 2520 \x{1111}\x{1111}L,L 2521 0: \x{1111}\x{1111} 2522 0+ L,L 2523 \x{1111}\x{1111}\x{1169}L,L,V 2524 0: \x{1111}\x{1111}\x{1169} 2525 0+ L,L,V 2526 \x{1111}\x{ae4c}L, LV 2527 0: \x{1111}\x{ae4c} 2528 0+ L, LV 2529 \x{1111}\x{ad89}L, LVT 2530 0: \x{1111}\x{ad89} 2531 0+ L, LVT 2532 \x{1111}\x{ae4c}\x{1169}L, LV, V 2533 0: \x{1111}\x{ae4c}\x{1169} 2534 0+ L, LV, V 2535 \x{1111}\x{ae4c}\x{1169}\x{1169}L, LV, V, V 2536 0: \x{1111}\x{ae4c}\x{1169}\x{1169} 2537 0+ L, LV, V, V 2538 \x{1111}\x{ae4c}\x{1169}\x{11fe}L, LV, V, T 2539 0: \x{1111}\x{ae4c}\x{1169}\x{11fe} 2540 0+ L, LV, V, T 2541 \x{1111}\x{ad89}\x{11fe}L, LVT, T 2542 0: \x{1111}\x{ad89}\x{11fe} 2543 0+ L, LVT, T 2544 \x{1111}\x{ad89}\x{11fe}\x{11fe}L, LVT, T, T 2545 0: \x{1111}\x{ad89}\x{11fe}\x{11fe} 2546 0+ L, LVT, T, T 2547 \x{ad89}\x{11fe}\x{11fe}LVT, T, T 2548 0: \x{ad89}\x{11fe}\x{11fe} 2549 0+ LVT, T, T 2550 *These match just the first codepoint (invalid sequence) 2551 0: * 2552 0+ These match just the first codepoint (invalid sequence) 2553 \x{1111}\x{11fe}L, T 2554 0: \x{1111} 2555 0+ \x{11fe}L, T 2556 \x{ae4c}\x{1111}LV, L 2557 0: \x{ae4c} 2558 0+ \x{1111}LV, L 2559 \x{ae4c}\x{ae4c}LV, LV 2560 0: \x{ae4c} 2561 0+ \x{ae4c}LV, LV 2562 \x{ae4c}\x{ad89}LV, LVT 2563 0: \x{ae4c} 2564 0+ \x{ad89}LV, LVT 2565 \x{1169}\x{1111}V, L 2566 0: \x{1169} 2567 0+ \x{1111}V, L 2568 \x{1169}\x{ae4c}V, LV 2569 0: \x{1169} 2570 0+ \x{ae4c}V, LV 2571 \x{1169}\x{ad89}V, LVT 2572 0: \x{1169} 2573 0+ \x{ad89}V, LVT 2574 \x{ad89}\x{1111}LVT, L 2575 0: \x{ad89} 2576 0+ \x{1111}LVT, L 2577 \x{ad89}\x{1169}LVT, V 2578 0: \x{ad89} 2579 0+ \x{1169}LVT, V 2580 \x{ad89}\x{ae4c}LVT, LV 2581 0: \x{ad89} 2582 0+ \x{ae4c}LVT, LV 2583 \x{ad89}\x{ad89}LVT, LVT 2584 0: \x{ad89} 2585 0+ \x{ad89}LVT, LVT 2586 \x{11fe}\x{1111}T, L 2587 0: \x{11fe} 2588 0+ \x{1111}T, L 2589 \x{11fe}\x{1169}T, V 2590 0: \x{11fe} 2591 0+ \x{1169}T, V 2592 \x{11fe}\x{ae4c}T, LV 2593 0: \x{11fe} 2594 0+ \x{ae4c}T, LV 2595 \x{11fe}\x{ad89}T, LVT 2596 0: \x{11fe} 2597 0+ \x{ad89}T, LVT 2598 *Test extend and spacing mark 2599 0: * 2600 0+ Test extend and spacing mark 2601 \x{1111}\x{ae4c}\x{0711}L, LV, extend 2602 0: \x{1111}\x{ae4c}\x{711} 2603 0+ L, LV, extend 2604 \x{1111}\x{ae4c}\x{1b04}L, LV, spacing mark 2605 0: \x{1111}\x{ae4c}\x{1b04} 2606 0+ L, LV, spacing mark 2607 \x{1111}\x{ae4c}\x{1b04}\x{0711}\x{1b04}L, LV, spacing mark, extend, spacing mark 2608 0: \x{1111}\x{ae4c}\x{1b04}\x{711}\x{1b04} 2609 0+ L, LV, spacing mark, extend, spacing mark 2610 *Test CR, LF, and control 2611 0: * 2612 0+ Test CR, LF, and control 2613 \x0d\x{0711}CR, extend 2614 0: \x{0d} 2615 0+ \x{711}CR, extend 2616 \x0d\x{1b04}CR, spacingmark 2617 0: \x{0d} 2618 0+ \x{1b04}CR, spacingmark 2619 \x0a\x{0711}LF, extend 2620 0: \x{0a} 2621 0+ \x{711}LF, extend 2622 \x0a\x{1b04}LF, spacingmark 2623 0: \x{0a} 2624 0+ \x{1b04}LF, spacingmark 2625 \x0b\x{0711}Control, extend 2626 0: \x{0b} 2627 0+ \x{711}Control, extend 2628 \x09\x{1b04}Control, spacingmark 2629 0: \x{09} 2630 0+ \x{1b04}Control, spacingmark 2631 *There are no Prepend characters, so we can't test Prepend, CR 2632 0: * 2633 0+ There are no Prepend characters, so we can't test Prepend, CR 2634 2635/^(?>\X{2})X/utf,aftertext 2636 \x{1111}\x{ae4c}\x{1111}\x{ae4c}X 2637 0: \x{1111}\x{ae4c}\x{1111}\x{ae4c}X 2638 0+ 2639 2640/^\X{2,4}X/utf,aftertext 2641 \x{1111}\x{ae4c}\x{1111}\x{ae4c}X 2642 0: \x{1111}\x{ae4c}\x{1111}\x{ae4c}X 2643 0+ 2644 \x{1111}\x{ae4c}\x{1111}\x{ae4c}\x{1111}\x{ae4c}X 2645 0: \x{1111}\x{ae4c}\x{1111}\x{ae4c}\x{1111}\x{ae4c}X 2646 0+ 2647 \x{1111}\x{ae4c}\x{1111}\x{ae4c}\x{1111}\x{ae4c}\x{1111}\x{ae4c}X 2648 0: \x{1111}\x{ae4c}\x{1111}\x{ae4c}\x{1111}\x{ae4c}\x{1111}\x{ae4c}X 2649 0+ 2650 2651/^\X{2,4}?X/utf,aftertext 2652 \x{1111}\x{ae4c}\x{1111}\x{ae4c}X 2653 0: \x{1111}\x{ae4c}\x{1111}\x{ae4c}X 2654 0+ 2655 \x{1111}\x{ae4c}\x{1111}\x{ae4c}\x{1111}\x{ae4c}X 2656 0: \x{1111}\x{ae4c}\x{1111}\x{ae4c}\x{1111}\x{ae4c}X 2657 0+ 2658 \x{1111}\x{ae4c}\x{1111}\x{ae4c}\x{1111}\x{ae4c}\x{1111}\x{ae4c}X 2659 0: \x{1111}\x{ae4c}\x{1111}\x{ae4c}\x{1111}\x{ae4c}\x{1111}\x{ae4c}X 2660 0+ 2661 2662/\X*Z/utf,no_start_optimize 2663\= Expect no match 2664 A\x{300} 2665No match 2666 2667/\X*(.)/utf,no_start_optimize 2668 A\x{1111}\x{ae4c}\x{1169} 2669 0: A\x{1111} 2670 1: \x{1111} 2671 2672# -------------------------------------------- 2673 2674/\x{1e9e}+/i,utf 2675 \x{1e9e}\x{00df} 2676 0: \x{1e9e}\x{df} 2677 2678/[z\x{1e9e}]+/i,utf 2679 \x{1e9e}\x{00df} 2680 0: \x{1e9e}\x{df} 2681 2682/\x{00df}+/i,utf 2683 \x{1e9e}\x{00df} 2684 0: \x{1e9e}\x{df} 2685 2686/[z\x{00df}]+/i,utf 2687 \x{1e9e}\x{00df} 2688 0: \x{1e9e}\x{df} 2689 2690/\x{1f88}+/i,utf 2691 \x{1f88}\x{1f80} 2692 0: \x{1f88}\x{1f80} 2693 2694/[z\x{1f88}]+/i,utf 2695 \x{1f88}\x{1f80} 2696 0: \x{1f88}\x{1f80} 2697 2698# Check a reference with more than one other case 2699 2700/^(\x{00b5})\1{2}$/i,utf 2701 \x{00b5}\x{039c}\x{03bc} 2702 0: \x{b5}\x{39c}\x{3bc} 2703 1: \x{b5} 2704 2705# Characters with more than one other case; test in classes 2706 2707/[z\x{00b5}]+/i,utf 2708 \x{00b5}\x{039c}\x{03bc} 2709 0: \x{b5}\x{39c}\x{3bc} 2710 2711/[z\x{039c}]+/i,utf 2712 \x{00b5}\x{039c}\x{03bc} 2713 0: \x{b5}\x{39c}\x{3bc} 2714 2715/[z\x{03bc}]+/i,utf 2716 \x{00b5}\x{039c}\x{03bc} 2717 0: \x{b5}\x{39c}\x{3bc} 2718 2719/[z\x{00c5}]+/i,utf 2720 \x{00c5}\x{00e5}\x{212b} 2721 0: \x{c5}\x{e5}\x{212b} 2722 2723/[z\x{00e5}]+/i,utf 2724 \x{00c5}\x{00e5}\x{212b} 2725 0: \x{c5}\x{e5}\x{212b} 2726 2727/[z\x{212b}]+/i,utf 2728 \x{00c5}\x{00e5}\x{212b} 2729 0: \x{c5}\x{e5}\x{212b} 2730 2731/[z\x{01c4}]+/i,utf 2732 \x{01c4}\x{01c5}\x{01c6} 2733 0: \x{1c4}\x{1c5}\x{1c6} 2734 2735/[z\x{01c5}]+/i,utf 2736 \x{01c4}\x{01c5}\x{01c6} 2737 0: \x{1c4}\x{1c5}\x{1c6} 2738 2739/[z\x{01c6}]+/i,utf 2740 \x{01c4}\x{01c5}\x{01c6} 2741 0: \x{1c4}\x{1c5}\x{1c6} 2742 2743/[z\x{01c7}]+/i,utf 2744 \x{01c7}\x{01c8}\x{01c9} 2745 0: \x{1c7}\x{1c8}\x{1c9} 2746 2747/[z\x{01c8}]+/i,utf 2748 \x{01c7}\x{01c8}\x{01c9} 2749 0: \x{1c7}\x{1c8}\x{1c9} 2750 2751/[z\x{01c9}]+/i,utf 2752 \x{01c7}\x{01c8}\x{01c9} 2753 0: \x{1c7}\x{1c8}\x{1c9} 2754 2755/[z\x{01ca}]+/i,utf 2756 \x{01ca}\x{01cb}\x{01cc} 2757 0: \x{1ca}\x{1cb}\x{1cc} 2758 2759/[z\x{01cb}]+/i,utf 2760 \x{01ca}\x{01cb}\x{01cc} 2761 0: \x{1ca}\x{1cb}\x{1cc} 2762 2763/[z\x{01cc}]+/i,utf 2764 \x{01ca}\x{01cb}\x{01cc} 2765 0: \x{1ca}\x{1cb}\x{1cc} 2766 2767/[z\x{01f1}]+/i,utf 2768 \x{01f1}\x{01f2}\x{01f3} 2769 0: \x{1f1}\x{1f2}\x{1f3} 2770 2771/[z\x{01f2}]+/i,utf 2772 \x{01f1}\x{01f2}\x{01f3} 2773 0: \x{1f1}\x{1f2}\x{1f3} 2774 2775/[z\x{01f3}]+/i,utf 2776 \x{01f1}\x{01f2}\x{01f3} 2777 0: \x{1f1}\x{1f2}\x{1f3} 2778 2779/[z\x{0345}]+/i,utf 2780 \x{0345}\x{0399}\x{03b9}\x{1fbe} 2781 0: \x{345}\x{399}\x{3b9}\x{1fbe} 2782 2783/[z\x{0399}]+/i,utf 2784 \x{0345}\x{0399}\x{03b9}\x{1fbe} 2785 0: \x{345}\x{399}\x{3b9}\x{1fbe} 2786 2787/[z\x{03b9}]+/i,utf 2788 \x{0345}\x{0399}\x{03b9}\x{1fbe} 2789 0: \x{345}\x{399}\x{3b9}\x{1fbe} 2790 2791/[z\x{1fbe}]+/i,utf 2792 \x{0345}\x{0399}\x{03b9}\x{1fbe} 2793 0: \x{345}\x{399}\x{3b9}\x{1fbe} 2794 2795/[z\x{0392}]+/i,utf 2796 \x{0392}\x{03b2}\x{03d0} 2797 0: \x{392}\x{3b2}\x{3d0} 2798 2799/[z\x{03b2}]+/i,utf 2800 \x{0392}\x{03b2}\x{03d0} 2801 0: \x{392}\x{3b2}\x{3d0} 2802 2803/[z\x{03d0}]+/i,utf 2804 \x{0392}\x{03b2}\x{03d0} 2805 0: \x{392}\x{3b2}\x{3d0} 2806 2807/[z\x{0395}]+/i,utf 2808 \x{0395}\x{03b5}\x{03f5} 2809 0: \x{395}\x{3b5}\x{3f5} 2810 2811/[z\x{03b5}]+/i,utf 2812 \x{0395}\x{03b5}\x{03f5} 2813 0: \x{395}\x{3b5}\x{3f5} 2814 2815/[z\x{03f5}]+/i,utf 2816 \x{0395}\x{03b5}\x{03f5} 2817 0: \x{395}\x{3b5}\x{3f5} 2818 2819/[z\x{0398}]+/i,utf 2820 \x{0398}\x{03b8}\x{03d1}\x{03f4} 2821 0: \x{398}\x{3b8}\x{3d1}\x{3f4} 2822 2823/[z\x{03b8}]+/i,utf 2824 \x{0398}\x{03b8}\x{03d1}\x{03f4} 2825 0: \x{398}\x{3b8}\x{3d1}\x{3f4} 2826 2827/[z\x{03d1}]+/i,utf 2828 \x{0398}\x{03b8}\x{03d1}\x{03f4} 2829 0: \x{398}\x{3b8}\x{3d1}\x{3f4} 2830 2831/[z\x{03f4}]+/i,utf 2832 \x{0398}\x{03b8}\x{03d1}\x{03f4} 2833 0: \x{398}\x{3b8}\x{3d1}\x{3f4} 2834 2835/[z\x{039a}]+/i,utf 2836 \x{039a}\x{03ba}\x{03f0} 2837 0: \x{39a}\x{3ba}\x{3f0} 2838 2839/[z\x{03ba}]+/i,utf 2840 \x{039a}\x{03ba}\x{03f0} 2841 0: \x{39a}\x{3ba}\x{3f0} 2842 2843/[z\x{03f0}]+/i,utf 2844 \x{039a}\x{03ba}\x{03f0} 2845 0: \x{39a}\x{3ba}\x{3f0} 2846 2847/[z\x{03a0}]+/i,utf 2848 \x{03a0}\x{03c0}\x{03d6} 2849 0: \x{3a0}\x{3c0}\x{3d6} 2850 2851/[z\x{03c0}]+/i,utf 2852 \x{03a0}\x{03c0}\x{03d6} 2853 0: \x{3a0}\x{3c0}\x{3d6} 2854 2855/[z\x{03d6}]+/i,utf 2856 \x{03a0}\x{03c0}\x{03d6} 2857 0: \x{3a0}\x{3c0}\x{3d6} 2858 2859/[z\x{03a1}]+/i,utf 2860 \x{03a1}\x{03c1}\x{03f1} 2861 0: \x{3a1}\x{3c1}\x{3f1} 2862 2863/[z\x{03c1}]+/i,utf 2864 \x{03a1}\x{03c1}\x{03f1} 2865 0: \x{3a1}\x{3c1}\x{3f1} 2866 2867/[z\x{03f1}]+/i,utf 2868 \x{03a1}\x{03c1}\x{03f1} 2869 0: \x{3a1}\x{3c1}\x{3f1} 2870 2871/[z\x{03a3}]+/i,utf 2872 \x{03A3}\x{03C2}\x{03C3} 2873 0: \x{3a3}\x{3c2}\x{3c3} 2874 2875/[z\x{03c2}]+/i,utf 2876 \x{03A3}\x{03C2}\x{03C3} 2877 0: \x{3a3}\x{3c2}\x{3c3} 2878 2879/[z\x{03c3}]+/i,utf 2880 \x{03A3}\x{03C2}\x{03C3} 2881 0: \x{3a3}\x{3c2}\x{3c3} 2882 2883/[z\x{03a6}]+/i,utf 2884 \x{03a6}\x{03c6}\x{03d5} 2885 0: \x{3a6}\x{3c6}\x{3d5} 2886 2887/[z\x{03c6}]+/i,utf 2888 \x{03a6}\x{03c6}\x{03d5} 2889 0: \x{3a6}\x{3c6}\x{3d5} 2890 2891/[z\x{03d5}]+/i,utf 2892 \x{03a6}\x{03c6}\x{03d5} 2893 0: \x{3a6}\x{3c6}\x{3d5} 2894 2895/[z\x{03c9}]+/i,utf 2896 \x{03c9}\x{03a9}\x{2126} 2897 0: \x{3c9}\x{3a9}\x{2126} 2898 2899/[z\x{03a9}]+/i,utf 2900 \x{03c9}\x{03a9}\x{2126} 2901 0: \x{3c9}\x{3a9}\x{2126} 2902 2903/[z\x{2126}]+/i,utf 2904 \x{03c9}\x{03a9}\x{2126} 2905 0: \x{3c9}\x{3a9}\x{2126} 2906 2907/[z\x{1e60}]+/i,utf 2908 \x{1e60}\x{1e61}\x{1e9b} 2909 0: \x{1e60}\x{1e61}\x{1e9b} 2910 2911/[z\x{1e61}]+/i,utf 2912 \x{1e60}\x{1e61}\x{1e9b} 2913 0: \x{1e60}\x{1e61}\x{1e9b} 2914 2915/[z\x{1e9b}]+/i,utf 2916 \x{1e60}\x{1e61}\x{1e9b} 2917 0: \x{1e60}\x{1e61}\x{1e9b} 2918 2919# Perl 5.12.4 gets these wrong, but 5.15.3 is OK 2920 2921/[z\x{004b}]+/i,utf 2922 \x{004b}\x{006b}\x{212a} 2923 0: Kk\x{212a} 2924 2925/[z\x{006b}]+/i,utf 2926 \x{004b}\x{006b}\x{212a} 2927 0: Kk\x{212a} 2928 2929/[z\x{212a}]+/i,utf 2930 \x{004b}\x{006b}\x{212a} 2931 0: Kk\x{212a} 2932 2933/[z\x{0053}]+/i,utf 2934 \x{0053}\x{0073}\x{017f} 2935 0: Ss\x{17f} 2936 2937/[z\x{0073}]+/i,utf 2938 \x{0053}\x{0073}\x{017f} 2939 0: Ss\x{17f} 2940 2941/[z\x{017f}]+/i,utf 2942 \x{0053}\x{0073}\x{017f} 2943 0: Ss\x{17f} 2944 2945# -------------------------------------- 2946 2947/(ΣΆΜΟΣ) \1/i,utf 2948 ΣΆΜΟΣ ΣΆΜΟΣ 2949 0: \x{3a3}\x{386}\x{39c}\x{39f}\x{3a3} \x{3a3}\x{386}\x{39c}\x{39f}\x{3a3} 2950 1: \x{3a3}\x{386}\x{39c}\x{39f}\x{3a3} 2951 ΣΆΜΟΣ σάμος 2952 0: \x{3a3}\x{386}\x{39c}\x{39f}\x{3a3} \x{3c3}\x{3ac}\x{3bc}\x{3bf}\x{3c2} 2953 1: \x{3a3}\x{386}\x{39c}\x{39f}\x{3a3} 2954 σάμος σάμος 2955 0: \x{3c3}\x{3ac}\x{3bc}\x{3bf}\x{3c2} \x{3c3}\x{3ac}\x{3bc}\x{3bf}\x{3c2} 2956 1: \x{3c3}\x{3ac}\x{3bc}\x{3bf}\x{3c2} 2957 σάμος σάμοσ 2958 0: \x{3c3}\x{3ac}\x{3bc}\x{3bf}\x{3c2} \x{3c3}\x{3ac}\x{3bc}\x{3bf}\x{3c3} 2959 1: \x{3c3}\x{3ac}\x{3bc}\x{3bf}\x{3c2} 2960 σάμος ΣΆΜΟΣ 2961 0: \x{3c3}\x{3ac}\x{3bc}\x{3bf}\x{3c2} \x{3a3}\x{386}\x{39c}\x{39f}\x{3a3} 2962 1: \x{3c3}\x{3ac}\x{3bc}\x{3bf}\x{3c2} 2963 2964/(σάμος) \1/i,utf 2965 ΣΆΜΟΣ ΣΆΜΟΣ 2966 0: \x{3a3}\x{386}\x{39c}\x{39f}\x{3a3} \x{3a3}\x{386}\x{39c}\x{39f}\x{3a3} 2967 1: \x{3a3}\x{386}\x{39c}\x{39f}\x{3a3} 2968 ΣΆΜΟΣ σάμος 2969 0: \x{3a3}\x{386}\x{39c}\x{39f}\x{3a3} \x{3c3}\x{3ac}\x{3bc}\x{3bf}\x{3c2} 2970 1: \x{3a3}\x{386}\x{39c}\x{39f}\x{3a3} 2971 σάμος σάμος 2972 0: \x{3c3}\x{3ac}\x{3bc}\x{3bf}\x{3c2} \x{3c3}\x{3ac}\x{3bc}\x{3bf}\x{3c2} 2973 1: \x{3c3}\x{3ac}\x{3bc}\x{3bf}\x{3c2} 2974 σάμος σάμοσ 2975 0: \x{3c3}\x{3ac}\x{3bc}\x{3bf}\x{3c2} \x{3c3}\x{3ac}\x{3bc}\x{3bf}\x{3c3} 2976 1: \x{3c3}\x{3ac}\x{3bc}\x{3bf}\x{3c2} 2977 σάμος ΣΆΜΟΣ 2978 0: \x{3c3}\x{3ac}\x{3bc}\x{3bf}\x{3c2} \x{3a3}\x{386}\x{39c}\x{39f}\x{3a3} 2979 1: \x{3c3}\x{3ac}\x{3bc}\x{3bf}\x{3c2} 2980 2981/(ΣΆΜΟΣ) \1*/i,utf 2982 ΣΆΜΟΣ\x20 2983 0: \x{3a3}\x{386}\x{39c}\x{39f}\x{3a3} 2984 1: \x{3a3}\x{386}\x{39c}\x{39f}\x{3a3} 2985 ΣΆΜΟΣ ΣΆΜΟΣσάμοςσάμος 2986 0: \x{3a3}\x{386}\x{39c}\x{39f}\x{3a3} \x{3a3}\x{386}\x{39c}\x{39f}\x{3a3}\x{3c3}\x{3ac}\x{3bc}\x{3bf}\x{3c2}\x{3c3}\x{3ac}\x{3bc}\x{3bf}\x{3c2} 2987 1: \x{3a3}\x{386}\x{39c}\x{39f}\x{3a3} 2988 2989# Perl matches these 2990 2991/\x{00b5}+/i,utf 2992 \x{00b5}\x{039c}\x{03bc} 2993 0: \x{b5}\x{39c}\x{3bc} 2994 2995/\x{039c}+/i,utf 2996 \x{00b5}\x{039c}\x{03bc} 2997 0: \x{b5}\x{39c}\x{3bc} 2998 2999/\x{03bc}+/i,utf 3000 \x{00b5}\x{039c}\x{03bc} 3001 0: \x{b5}\x{39c}\x{3bc} 3002 3003 3004/\x{00c5}+/i,utf 3005 \x{00c5}\x{00e5}\x{212b} 3006 0: \x{c5}\x{e5}\x{212b} 3007 3008/\x{00e5}+/i,utf 3009 \x{00c5}\x{00e5}\x{212b} 3010 0: \x{c5}\x{e5}\x{212b} 3011 3012/\x{212b}+/i,utf 3013 \x{00c5}\x{00e5}\x{212b} 3014 0: \x{c5}\x{e5}\x{212b} 3015 3016 3017/\x{01c4}+/i,utf 3018 \x{01c4}\x{01c5}\x{01c6} 3019 0: \x{1c4}\x{1c5}\x{1c6} 3020 3021/\x{01c5}+/i,utf 3022 \x{01c4}\x{01c5}\x{01c6} 3023 0: \x{1c4}\x{1c5}\x{1c6} 3024 3025/\x{01c6}+/i,utf 3026 \x{01c4}\x{01c5}\x{01c6} 3027 0: \x{1c4}\x{1c5}\x{1c6} 3028 3029 3030/\x{01c7}+/i,utf 3031 \x{01c7}\x{01c8}\x{01c9} 3032 0: \x{1c7}\x{1c8}\x{1c9} 3033 3034/\x{01c8}+/i,utf 3035 \x{01c7}\x{01c8}\x{01c9} 3036 0: \x{1c7}\x{1c8}\x{1c9} 3037 3038/\x{01c9}+/i,utf 3039 \x{01c7}\x{01c8}\x{01c9} 3040 0: \x{1c7}\x{1c8}\x{1c9} 3041 3042 3043/\x{01ca}+/i,utf 3044 \x{01ca}\x{01cb}\x{01cc} 3045 0: \x{1ca}\x{1cb}\x{1cc} 3046 3047/\x{01cb}+/i,utf 3048 \x{01ca}\x{01cb}\x{01cc} 3049 0: \x{1ca}\x{1cb}\x{1cc} 3050 3051/\x{01cc}+/i,utf 3052 \x{01ca}\x{01cb}\x{01cc} 3053 0: \x{1ca}\x{1cb}\x{1cc} 3054 3055 3056/\x{01f1}+/i,utf 3057 \x{01f1}\x{01f2}\x{01f3} 3058 0: \x{1f1}\x{1f2}\x{1f3} 3059 3060/\x{01f2}+/i,utf 3061 \x{01f1}\x{01f2}\x{01f3} 3062 0: \x{1f1}\x{1f2}\x{1f3} 3063 3064/\x{01f3}+/i,utf 3065 \x{01f1}\x{01f2}\x{01f3} 3066 0: \x{1f1}\x{1f2}\x{1f3} 3067 3068 3069/\x{0345}+/i,utf 3070 \x{0345}\x{0399}\x{03b9}\x{1fbe} 3071 0: \x{345}\x{399}\x{3b9}\x{1fbe} 3072 3073/\x{0399}+/i,utf 3074 \x{0345}\x{0399}\x{03b9}\x{1fbe} 3075 0: \x{345}\x{399}\x{3b9}\x{1fbe} 3076 3077/\x{03b9}+/i,utf 3078 \x{0345}\x{0399}\x{03b9}\x{1fbe} 3079 0: \x{345}\x{399}\x{3b9}\x{1fbe} 3080 3081/\x{1fbe}+/i,utf 3082 \x{0345}\x{0399}\x{03b9}\x{1fbe} 3083 0: \x{345}\x{399}\x{3b9}\x{1fbe} 3084 3085 3086/\x{0392}+/i,utf 3087 \x{0392}\x{03b2}\x{03d0} 3088 0: \x{392}\x{3b2}\x{3d0} 3089 3090/\x{03b2}+/i,utf 3091 \x{0392}\x{03b2}\x{03d0} 3092 0: \x{392}\x{3b2}\x{3d0} 3093 3094/\x{03d0}+/i,utf 3095 \x{0392}\x{03b2}\x{03d0} 3096 0: \x{392}\x{3b2}\x{3d0} 3097 3098 3099/\x{0395}+/i,utf 3100 \x{0395}\x{03b5}\x{03f5} 3101 0: \x{395}\x{3b5}\x{3f5} 3102 3103/\x{03b5}+/i,utf 3104 \x{0395}\x{03b5}\x{03f5} 3105 0: \x{395}\x{3b5}\x{3f5} 3106 3107/\x{03f5}+/i,utf 3108 \x{0395}\x{03b5}\x{03f5} 3109 0: \x{395}\x{3b5}\x{3f5} 3110 3111 3112/\x{0398}+/i,utf 3113 \x{0398}\x{03b8}\x{03d1}\x{03f4} 3114 0: \x{398}\x{3b8}\x{3d1}\x{3f4} 3115 3116/\x{03b8}+/i,utf 3117 \x{0398}\x{03b8}\x{03d1}\x{03f4} 3118 0: \x{398}\x{3b8}\x{3d1}\x{3f4} 3119 3120/\x{03d1}+/i,utf 3121 \x{0398}\x{03b8}\x{03d1}\x{03f4} 3122 0: \x{398}\x{3b8}\x{3d1}\x{3f4} 3123 3124/\x{03f4}+/i,utf 3125 \x{0398}\x{03b8}\x{03d1}\x{03f4} 3126 0: \x{398}\x{3b8}\x{3d1}\x{3f4} 3127 3128 3129/\x{039a}+/i,utf 3130 \x{039a}\x{03ba}\x{03f0} 3131 0: \x{39a}\x{3ba}\x{3f0} 3132 3133/\x{03ba}+/i,utf 3134 \x{039a}\x{03ba}\x{03f0} 3135 0: \x{39a}\x{3ba}\x{3f0} 3136 3137/\x{03f0}+/i,utf 3138 \x{039a}\x{03ba}\x{03f0} 3139 0: \x{39a}\x{3ba}\x{3f0} 3140 3141 3142/\x{03a0}+/i,utf 3143 \x{03a0}\x{03c0}\x{03d6} 3144 0: \x{3a0}\x{3c0}\x{3d6} 3145 3146/\x{03c0}+/i,utf 3147 \x{03a0}\x{03c0}\x{03d6} 3148 0: \x{3a0}\x{3c0}\x{3d6} 3149 3150/\x{03d6}+/i,utf 3151 \x{03a0}\x{03c0}\x{03d6} 3152 0: \x{3a0}\x{3c0}\x{3d6} 3153 3154 3155/\x{03a1}+/i,utf 3156 \x{03a1}\x{03c1}\x{03f1} 3157 0: \x{3a1}\x{3c1}\x{3f1} 3158 3159/\x{03c1}+/i,utf 3160 \x{03a1}\x{03c1}\x{03f1} 3161 0: \x{3a1}\x{3c1}\x{3f1} 3162 3163/\x{03f1}+/i,utf 3164 \x{03a1}\x{03c1}\x{03f1} 3165 0: \x{3a1}\x{3c1}\x{3f1} 3166 3167 3168/\x{03a3}+/i,utf 3169 \x{03A3}\x{03C2}\x{03C3} 3170 0: \x{3a3}\x{3c2}\x{3c3} 3171 3172/\x{03c2}+/i,utf 3173 \x{03A3}\x{03C2}\x{03C3} 3174 0: \x{3a3}\x{3c2}\x{3c3} 3175 3176/\x{03c3}+/i,utf 3177 \x{03A3}\x{03C2}\x{03C3} 3178 0: \x{3a3}\x{3c2}\x{3c3} 3179 3180 3181/\x{03a6}+/i,utf 3182 \x{03a6}\x{03c6}\x{03d5} 3183 0: \x{3a6}\x{3c6}\x{3d5} 3184 3185/\x{03c6}+/i,utf 3186 \x{03a6}\x{03c6}\x{03d5} 3187 0: \x{3a6}\x{3c6}\x{3d5} 3188 3189/\x{03d5}+/i,utf 3190 \x{03a6}\x{03c6}\x{03d5} 3191 0: \x{3a6}\x{3c6}\x{3d5} 3192 3193 3194/\x{03c9}+/i,utf 3195 \x{03c9}\x{03a9}\x{2126} 3196 0: \x{3c9}\x{3a9}\x{2126} 3197 3198/\x{03a9}+/i,utf 3199 \x{03c9}\x{03a9}\x{2126} 3200 0: \x{3c9}\x{3a9}\x{2126} 3201 3202/\x{2126}+/i,utf 3203 \x{03c9}\x{03a9}\x{2126} 3204 0: \x{3c9}\x{3a9}\x{2126} 3205 3206 3207/\x{1e60}+/i,utf 3208 \x{1e60}\x{1e61}\x{1e9b} 3209 0: \x{1e60}\x{1e61}\x{1e9b} 3210 3211/\x{1e61}+/i,utf 3212 \x{1e60}\x{1e61}\x{1e9b} 3213 0: \x{1e60}\x{1e61}\x{1e9b} 3214 3215/\x{1e9b}+/i,utf 3216 \x{1e60}\x{1e61}\x{1e9b} 3217 0: \x{1e60}\x{1e61}\x{1e9b} 3218 3219 3220/\x{1e9e}+/i,utf 3221 \x{1e9e}\x{00df} 3222 0: \x{1e9e}\x{df} 3223 3224/\x{00df}+/i,utf 3225 \x{1e9e}\x{00df} 3226 0: \x{1e9e}\x{df} 3227 3228 3229/\x{1f88}+/i,utf 3230 \x{1f88}\x{1f80} 3231 0: \x{1f88}\x{1f80} 3232 3233/\x{1f80}+/i,utf 3234 \x{1f88}\x{1f80} 3235 0: \x{1f88}\x{1f80} 3236 3237# Perl 5.12.4 gets these wrong, but 5.15.3 is OK 3238 3239/\x{004b}+/i,utf 3240 \x{004b}\x{006b}\x{212a} 3241 0: Kk\x{212a} 3242 3243/\x{006b}+/i,utf 3244 \x{004b}\x{006b}\x{212a} 3245 0: Kk\x{212a} 3246 3247/\x{212a}+/i,utf 3248 \x{004b}\x{006b}\x{212a} 3249 0: Kk\x{212a} 3250 3251 3252/\x{0053}+/i,utf 3253 \x{0053}\x{0073}\x{017f} 3254 0: Ss\x{17f} 3255 3256/\x{0073}+/i,utf 3257 \x{0053}\x{0073}\x{017f} 3258 0: Ss\x{17f} 3259 3260/\x{017f}+/i,utf 3261 \x{0053}\x{0073}\x{017f} 3262 0: Ss\x{17f} 3263 3264/^\p{Any}*\d{4}/utf 3265 1234 3266 0: 1234 3267\= Expect no match 3268 123 3269No match 3270 3271/^\X*\w{4}/utf 3272 1234 3273 0: 1234 3274\= Expect no match 3275 123 3276No match 3277 3278/^A\s+Z/utf,ucp 3279 A\x{2005}Z 3280 0: A\x{2005}Z 3281 A\x{85}\x{2005}Z 3282 0: A\x{85}\x{2005}Z 3283 3284/^A[\s]+Z/utf,ucp 3285 A\x{2005}Z 3286 0: A\x{2005}Z 3287 A\x{85}\x{2005}Z 3288 0: A\x{85}\x{2005}Z 3289 3290/^[[:graph:]]+$/utf,ucp 3291 Letter:ABC 3292 0: Letter:ABC 3293 Mark:\x{300}\x{1d172}\x{1d17b} 3294 0: Mark:\x{300}\x{1d172}\x{1d17b} 3295 Number:9\x{660} 3296 0: Number:9\x{660} 3297 Punctuation:\x{66a},; 3298 0: Punctuation:\x{66a},; 3299 Symbol:\x{6de}<>\x{fffc} 3300 0: Symbol:\x{6de}<>\x{fffc} 3301 Cf-property:\x{ad}\x{600}\x{601}\x{602}\x{603}\x{604}\x{6dd}\x{70f} 3302 0: Cf-property:\x{ad}\x{600}\x{601}\x{602}\x{603}\x{604}\x{6dd}\x{70f} 3303 \x{200b}\x{200c}\x{200d}\x{200e}\x{200f} 3304 0: \x{200b}\x{200c}\x{200d}\x{200e}\x{200f} 3305 \x{202a}\x{202b}\x{202c}\x{202d}\x{202e} 3306 0: \x{202a}\x{202b}\x{202c}\x{202d}\x{202e} 3307 \x{2060}\x{2061}\x{2062}\x{2063}\x{2064} 3308 0: \x{2060}\x{2061}\x{2062}\x{2063}\x{2064} 3309 \x{206a}\x{206b}\x{206c}\x{206d}\x{206e}\x{206f} 3310 0: \x{206a}\x{206b}\x{206c}\x{206d}\x{206e}\x{206f} 3311 \x{feff} 3312 0: \x{feff} 3313 \x{fff9}\x{fffa}\x{fffb} 3314 0: \x{fff9}\x{fffa}\x{fffb} 3315 \x{110bd} 3316 0: \x{110bd} 3317 \x{1d173}\x{1d174}\x{1d175}\x{1d176}\x{1d177}\x{1d178}\x{1d179}\x{1d17a} 3318 0: \x{1d173}\x{1d174}\x{1d175}\x{1d176}\x{1d177}\x{1d178}\x{1d179}\x{1d17a} 3319 \x{e0001} 3320 0: \x{e0001} 3321 \x{e0020}\x{e0030}\x{e0040}\x{e0050}\x{e0060}\x{e0070}\x{e007f} 3322 0: \x{e0020}\x{e0030}\x{e0040}\x{e0050}\x{e0060}\x{e0070}\x{e007f} 3323\= Expect no match 3324 \x{09} 3325No match 3326 \x{0a} 3327No match 3328 \x{1D} 3329No match 3330 \x{20} 3331No match 3332 \x{85} 3333No match 3334 \x{a0} 3335No match 3336 \x{1680} 3337No match 3338 \x{2028} 3339No match 3340 \x{2029} 3341No match 3342 \x{202f} 3343No match 3344 \x{2065} 3345No match 3346 \x{3000} 3347No match 3348 \x{e0002} 3349No match 3350 \x{e001f} 3351No match 3352 \x{e0080} 3353No match 3354 3355/^[[:print:]]+$/utf,ucp 3356 Space: \x{a0} 3357 0: Space: \x{a0} 3358 \x{1680}\x{2000}\x{2001}\x{2002}\x{2003}\x{2004}\x{2005} 3359 0: \x{1680}\x{2000}\x{2001}\x{2002}\x{2003}\x{2004}\x{2005} 3360 \x{2006}\x{2007}\x{2008}\x{2009}\x{200a} 3361 0: \x{2006}\x{2007}\x{2008}\x{2009}\x{200a} 3362 \x{202f}\x{205f} 3363 0: \x{202f}\x{205f} 3364 \x{3000} 3365 0: \x{3000} 3366 Letter:ABC 3367 0: Letter:ABC 3368 Mark:\x{300}\x{1d172}\x{1d17b} 3369 0: Mark:\x{300}\x{1d172}\x{1d17b} 3370 Number:9\x{660} 3371 0: Number:9\x{660} 3372 Punctuation:\x{66a},; 3373 0: Punctuation:\x{66a},; 3374 Symbol:\x{6de}<>\x{fffc} 3375 0: Symbol:\x{6de}<>\x{fffc} 3376 Cf-property:\x{ad}\x{600}\x{601}\x{602}\x{603}\x{604}\x{6dd}\x{70f} 3377 0: Cf-property:\x{ad}\x{600}\x{601}\x{602}\x{603}\x{604}\x{6dd}\x{70f} 3378 \x{200b}\x{200c}\x{200d}\x{200e}\x{200f} 3379 0: \x{200b}\x{200c}\x{200d}\x{200e}\x{200f} 3380 \x{202a}\x{202b}\x{202c}\x{202d}\x{202e} 3381 0: \x{202a}\x{202b}\x{202c}\x{202d}\x{202e} 3382 \x{202f} 3383 0: \x{202f} 3384 \x{2060}\x{2061}\x{2062}\x{2063}\x{2064} 3385 0: \x{2060}\x{2061}\x{2062}\x{2063}\x{2064} 3386 \x{206a}\x{206b}\x{206c}\x{206d}\x{206e}\x{206f} 3387 0: \x{206a}\x{206b}\x{206c}\x{206d}\x{206e}\x{206f} 3388 \x{feff} 3389 0: \x{feff} 3390 \x{fff9}\x{fffa}\x{fffb} 3391 0: \x{fff9}\x{fffa}\x{fffb} 3392 \x{110bd} 3393 0: \x{110bd} 3394 \x{1d173}\x{1d174}\x{1d175}\x{1d176}\x{1d177}\x{1d178}\x{1d179}\x{1d17a} 3395 0: \x{1d173}\x{1d174}\x{1d175}\x{1d176}\x{1d177}\x{1d178}\x{1d179}\x{1d17a} 3396 \x{e0001} 3397 0: \x{e0001} 3398 \x{e0020}\x{e0030}\x{e0040}\x{e0050}\x{e0060}\x{e0070}\x{e007f} 3399 0: \x{e0020}\x{e0030}\x{e0040}\x{e0050}\x{e0060}\x{e0070}\x{e007f} 3400\= Expect no match 3401 \x{09} 3402No match 3403 \x{1D} 3404No match 3405 \x{85} 3406No match 3407 \x{2028} 3408No match 3409 \x{2029} 3410No match 3411 \x{2065} 3412No match 3413 \x{e0002} 3414No match 3415 \x{e001f} 3416No match 3417 \x{e0080} 3418No match 3419 3420/^[[:punct:]]+$/utf,ucp 3421 \$+<=>^`|~ 3422 0: $+<=>^`|~ 3423 !\"#%&'()*,-./:;?@[\\]_{} 3424 0: !"#%&'()*,-./:;?@[\]_{} 3425 \x{a1}\x{a7} 3426 0: \x{a1}\x{a7} 3427 \x{37e} 3428 0: \x{37e} 3429\= Expect no match 3430 abcde 3431No match 3432 3433/^[[:^graph:]]+$/utf,ucp 3434 \x{09}\x{0a}\x{1D}\x{20}\x{85}\x{a0}\x{1680} 3435 0: \x{09}\x{0a}\x{1d} \x{85}\x{a0}\x{1680} 3436 \x{2028}\x{2029}\x{202f}\x{2065} 3437 0: \x{2028}\x{2029}\x{202f}\x{2065} 3438 \x{3000}\x{e0002}\x{e001f}\x{e0080} 3439 0: \x{3000}\x{e0002}\x{e001f}\x{e0080} 3440\= Expect no match 3441 Letter:ABC 3442No match 3443 Mark:\x{300}\x{1d172}\x{1d17b} 3444No match 3445 Number:9\x{660} 3446No match 3447 Punctuation:\x{66a},; 3448No match 3449 Symbol:\x{6de}<>\x{fffc} 3450No match 3451 Cf-property:\x{ad}\x{600}\x{601}\x{602}\x{603}\x{604}\x{6dd}\x{70f} 3452No match 3453 \x{200b}\x{200c}\x{200d}\x{200e}\x{200f} 3454No match 3455 \x{202a}\x{202b}\x{202c}\x{202d}\x{202e} 3456No match 3457 \x{2060}\x{2061}\x{2062}\x{2063}\x{2064} 3458No match 3459 \x{206a}\x{206b}\x{206c}\x{206d}\x{206e}\x{206f} 3460No match 3461 \x{feff} 3462No match 3463 \x{fff9}\x{fffa}\x{fffb} 3464No match 3465 \x{110bd} 3466No match 3467 \x{1d173}\x{1d174}\x{1d175}\x{1d176}\x{1d177}\x{1d178}\x{1d179}\x{1d17a} 3468No match 3469 \x{e0001} 3470No match 3471 \x{e0020}\x{e0030}\x{e0040}\x{e0050}\x{e0060}\x{e0070}\x{e007f} 3472No match 3473 3474/^[[:^print:]]+$/utf,ucp 3475 \x{09}\x{1D}\x{85}\x{2028}\x{2029}\x{2065} 3476 0: \x{09}\x{1d}\x{85}\x{2028}\x{2029}\x{2065} 3477 \x{e0002}\x{e001f}\x{e0080} 3478 0: \x{e0002}\x{e001f}\x{e0080} 3479\= Expect no match 3480 Space: \x{a0} 3481No match 3482 \x{1680}\x{2000}\x{2001}\x{2002}\x{2003}\x{2004}\x{2005} 3483No match 3484 \x{2006}\x{2007}\x{2008}\x{2009}\x{200a} 3485No match 3486 \x{202f}\x{205f} 3487No match 3488 \x{3000} 3489No match 3490 Letter:ABC 3491No match 3492 Mark:\x{300}\x{1d172}\x{1d17b} 3493No match 3494 Number:9\x{660} 3495No match 3496 Punctuation:\x{66a},; 3497No match 3498 Symbol:\x{6de}<>\x{fffc} 3499No match 3500 Cf-property:\x{ad}\x{600}\x{601}\x{602}\x{603}\x{604}\x{6dd}\x{70f} 3501No match 3502 \x{200b}\x{200c}\x{200d}\x{200e}\x{200f} 3503No match 3504 \x{202a}\x{202b}\x{202c}\x{202d}\x{202e} 3505No match 3506 \x{202f} 3507No match 3508 \x{2060}\x{2061}\x{2062}\x{2063}\x{2064} 3509No match 3510 \x{206a}\x{206b}\x{206c}\x{206d}\x{206e}\x{206f} 3511No match 3512 \x{feff} 3513No match 3514 \x{fff9}\x{fffa}\x{fffb} 3515No match 3516 \x{110bd} 3517No match 3518 \x{1d173}\x{1d174}\x{1d175}\x{1d176}\x{1d177}\x{1d178}\x{1d179}\x{1d17a} 3519No match 3520 \x{e0001} 3521No match 3522 \x{e0020}\x{e0030}\x{e0040}\x{e0050}\x{e0060}\x{e0070}\x{e007f} 3523No match 3524 3525/^[[:^punct:]]+$/utf,ucp 3526 abcde 3527 0: abcde 3528\= Expect no match 3529 \$+<=>^`|~ 3530No match 3531 !\"#%&'()*,-./:;?@[\\]_{} 3532No match 3533 \x{a1}\x{a7} 3534No match 3535 \x{37e} 3536No match 3537 3538/[RST]+/i,utf,ucp 3539 Ss\x{17f} 3540 0: Ss\x{17f} 3541 3542/[R-T]+/i,utf,ucp 3543 Ss\x{17f} 3544 0: Ss\x{17f} 3545 3546/[q-u]+/i,utf,ucp 3547 Ss\x{17f} 3548 0: Ss\x{17f} 3549 3550/^s?c/im,utf 3551 scat 3552 0: sc 3553 3554# The next four tests are for repeated caseless back references when the 3555# code unit length of the matched text is different to that of the original 3556# group in the UTF-8 case. 3557 3558/^(\x{23a})\1*(.)/i,utf 3559 \x{23a}\x{23a}\x{23a}\x{23a} 3560 0: \x{23a}\x{23a}\x{23a}\x{23a} 3561 1: \x{23a} 3562 2: \x{23a} 3563 \x{23a}\x{2c65}\x{2c65}\x{2c65} 3564 0: \x{23a}\x{2c65}\x{2c65}\x{2c65} 3565 1: \x{23a} 3566 2: \x{2c65} 3567 \x{23a}\x{23a}\x{2c65}\x{23a} 3568 0: \x{23a}\x{23a}\x{2c65}\x{23a} 3569 1: \x{23a} 3570 2: \x{23a} 3571 3572/^(\x{23a})\1*(..)/i,utf 3573 \x{23a}\x{2c65}\x{2c65}\x{2c65} 3574 0: \x{23a}\x{2c65}\x{2c65}\x{2c65} 3575 1: \x{23a} 3576 2: \x{2c65}\x{2c65} 3577 \x{23a}\x{23a}\x{2c65}\x{23a} 3578 0: \x{23a}\x{23a}\x{2c65}\x{23a} 3579 1: \x{23a} 3580 2: \x{2c65}\x{23a} 3581 3582/^(\x{23a})\1*(...)/i,utf 3583 \x{23a}\x{2c65}\x{2c65}\x{2c65} 3584 0: \x{23a}\x{2c65}\x{2c65}\x{2c65} 3585 1: \x{23a} 3586 2: \x{2c65}\x{2c65}\x{2c65} 3587 \x{23a}\x{23a}\x{2c65}\x{23a} 3588 0: \x{23a}\x{23a}\x{2c65}\x{23a} 3589 1: \x{23a} 3590 2: \x{23a}\x{2c65}\x{23a} 3591 3592/^(\x{23a})\1*(....)/i,utf 3593\= Expect no match 3594 \x{23a}\x{2c65}\x{2c65}\x{2c65} 3595No match 3596 \x{23a}\x{23a}\x{2c65}\x{23a} 3597No match 3598 3599/[A-`]/i,utf 3600 abcdefghijklmno 3601 0: a 3602 3603/[\S\V\H]/utf 3604 3605/[^\p{Any}]*+x/utf 3606 x 3607 0: x 3608 3609/[[:punct:]]/utf,ucp 3610 \x{b4} 3611No match 3612 3613/[[:^ascii:]]/utf,ucp 3614 \x{100} 3615 0: \x{100} 3616 \x{200} 3617 0: \x{200} 3618 \x{300} 3619 0: \x{300} 3620 \x{37e} 3621 0: \x{37e} 3622\= Expect no match 3623 aa 3624No match 3625 99 3626No match 3627 3628/[[:^ascii:]\w]/utf,ucp 3629 aa 3630 0: a 3631 99 3632 0: 9 3633 gg 3634 0: g 3635 \x{100} 3636 0: \x{100} 3637 \x{200} 3638 0: \x{200} 3639 \x{300} 3640 0: \x{300} 3641 \x{37e} 3642 0: \x{37e} 3643 3644/[\w[:^ascii:]]/utf,ucp 3645 aa 3646 0: a 3647 99 3648 0: 9 3649 gg 3650 0: g 3651 \x{100} 3652 0: \x{100} 3653 \x{200} 3654 0: \x{200} 3655 \x{300} 3656 0: \x{300} 3657 \x{37e} 3658 0: \x{37e} 3659 3660/[^[:ascii:]\W]/utf,ucp 3661 \x{100} 3662 0: \x{100} 3663 \x{200} 3664 0: \x{200} 3665\= Expect no match 3666 aa 3667No match 3668 99 3669No match 3670 gg 3671No match 3672 \x{37e} 3673No match 3674 3675/[^[:^ascii:]\d]/utf,ucp 3676 a 3677 0: a 3678 ~ 3679 0: ~ 3680 \a 3681 0: \x{07} 3682 \x{7f} 3683 0: \x{7f} 3684\= Expect no match 3685 0 3686No match 3687 \x{389} 3688No match 3689 \x{20ac} 3690No match 3691 3692/(?=.*b)\pL/ 3693 11bb 3694 0: b 3695 3696/(?(?=.*b)(?=.*b)\pL|.*c)/ 3697 11bb 3698 0: b 3699 3700/^\x{123}+?$/utf,no_auto_possess 3701 \x{123}\x{123}\x{123} 3702 0: \x{123}\x{123}\x{123} 3703 3704/^\x{123}+?$/i,utf,no_auto_possess 3705 \x{123}\x{122}\x{123} 3706 0: \x{123}\x{122}\x{123} 3707\= Expect no match 3708 \x{123}\x{124}\x{123} 3709No match 3710 3711/\N{U+1234}/utf 3712 \x{1234} 3713 0: \x{1234} 3714 3715/[\N{U+1234}]/utf 3716 \x{1234} 3717 0: \x{1234} 3718 3719# Test the full list of Unicode "Pattern White Space" characters that are to 3720# be ignored by /x. The pattern lines below may show up oddly in text editors 3721# or when listed to the screen. Note that characters such as U+2002, which are 3722# matched as space by \h and \v are *not* "Pattern White Space". 3723 3724/A B/x,utf 3725 AB 3726 0: AB 3727 3728/A B/x,utf 3729 A\x{2002}B 3730 0: A\x{2002}B 3731\= Expect no match 3732 AB 3733No match 3734 3735# ------- 3736 3737/[^\x{100}-\x{ffff}]*[\x80-\xff]/utf 3738 \x{99}\x{99}\x{99} 3739 0: \x{99}\x{99}\x{99} 3740 3741/[^\x{100}-\x{ffff}ABC]*[\x80-\xff]/utf 3742 \x{99}\x{99}\x{99} 3743 0: \x{99}\x{99}\x{99} 3744 3745/[^\x{100}-\x{ffff}]*[\x80-\xff]/i,utf 3746 \x{99}\x{99}\x{99} 3747 0: \x{99}\x{99}\x{99} 3748 3749# Script run tests 3750 3751/^(*script_run:.{4})/utf 3752 abcd Latin x4 3753 0: abcd 3754 \x{2e80}\x{2fa1d}\x{3041}\x{30a1} Han Han Hiragana Katakana 3755 0: \x{2e80}\x{2fa1d}\x{3041}\x{30a1} 3756 \x{3041}\x{30a1}\x{3007}\x{3007} Hiragana Katakana Han Han 3757 0: \x{3041}\x{30a1}\x{3007}\x{3007} 3758 \x{30a1}\x{3041}\x{3007}\x{3007} Katakana Hiragana Han Han 3759 0: \x{30a1}\x{3041}\x{3007}\x{3007} 3760 \x{1100}\x{2e80}\x{2e80}\x{1101} Hangul Han Han Hangul 3761 0: \x{1100}\x{2e80}\x{2e80}\x{1101} 3762 \x{2e80}\x{3105}\x{2e80}\x{3105} Han Bopomofo Han Bopomofo 3763 0: \x{2e80}\x{3105}\x{2e80}\x{3105} 3764 \x{02ea}\x{2e80}\x{2e80}\x{3105} Bopomofo-Sk Han Han Bopomofo 3765 0: \x{2ea}\x{2e80}\x{2e80}\x{3105} 3766 \x{3105}\x{2e80}\x{2e80}\x{3105} Bopomofo Han Han Bopomofo 3767 0: \x{3105}\x{2e80}\x{2e80}\x{3105} 3768 \x{0300}cd! Inherited Latin Latin Common 3769 0: \x{300}cd! 3770 \x{0391}12\x{03a9} Greek Common-digits Greek 3771 0: \x{391}12\x{3a9} 3772 \x{0400}12\x{fe2f} Cyrillic Common-digits Cyrillic 3773 0: \x{400}12\x{fe2f} 3774 \x{0531}12\x{fb17} Armenian Common-digits Armenian 3775 0: \x{531}12\x{fb17} 3776 \x{0591}12\x{fb4f} Hebrew Common-digits Hebrew 3777 0: \x{591}12\x{fb4f} 3778 \x{0600}12\x{1eef1} Arabic Common-digits Arabic 3779 0: \x{600}12\x{1eef1} 3780 \x{0600}\x{0660}\x{0669}\x{1eef1} Arabic Arabic-digits Arabic 3781 0: \x{600}\x{660}\x{669}\x{1eef1} 3782 \x{0700}12\x{086a} Syriac Common-digits Syriac 3783 0: \x{700}12\x{86a} 3784 \x{1200}12\x{ab2e} Ethiopic Common-digits Ethiopic 3785 0: \x{1200}12\x{ab2e} 3786 \x{1680}12\x{169c} Ogham Common-digits Ogham 3787 0: \x{1680}12\x{169c} 3788 \x{3041}12\x{3041} Hiragana Common-digits Hiragana 3789 0: \x{3041}12\x{3041} 3790 \x{0980}\x{09e6}\x{09e7}\x{0993} Bengali Bengali-digits Bengali 3791 0: \x{980}\x{9e6}\x{9e7}\x{993} 3792 !cde Common Latin Latin Latin 3793 0: !cde 3794 A..B Latin Common Common Latin 3795 0: A..B 3796 0abc Ascii-digit Latin Latin Latin 3797 0: 0abc 3798 1\x{0700}\x{0700}\x{0700} Ascii-digit Syriac x 3 3799 0: 1\x{700}\x{700}\x{700} 3800 \x{1A80}\x{1A80}\x{1a40}\x{1a41} Tai Tham Hora digits, letters 3801 0: \x{1a80}\x{1a80}\x{1a40}\x{1a41} 3802\= Expect no match 3803 a\x{370}bcd Latin Greek Latin Latin 3804No match 3805 \x{1100}\x{02ea}\x{02ea}\x{02ea} Hangul Bopomofo x3 3806No match 3807 \x{02ea}\x{02ea}\x{02ea}\x{1100} Bopomofo x3 Hangul 3808No match 3809 \x{1100}\x{2e80}\x{3041}\x{1101} Hangul Han Hiragana Hangul 3810No match 3811 \x{0391}\x{09e6}\x{09e7}\x{03a9} Greek Bengali digits Greek 3812No match 3813 \x{0600}7\x{0669}\x{1eef1} Arabic ascii-digit Arabic-digit Arabic 3814No match 3815 \x{0600}\x{0669}7\x{1eef1} Arabic Arabic-digit ascii-digit Arabic 3816No match 3817 A5\x{ff19}B Latin Common-ascii/notascii-digits Latin 3818No match 3819 \x{0300}cd\x{0391} Inherited Latin Latin Greek 3820No match 3821 !cd\x{0391} Common Latin Latin Greek 3822No match 3823 \x{1A80}\x{1A90}\x{1a40}\x{1a41} Tai Tham Hora digit, Tham digit, letters 3824No match 3825 A\x{1d7ce}\x{1d7ff}B Common fancy-common-2-sets-digits Common 3826No match 3827 \x{2e80}\x{3105}\x{2e80}\x{30a1} Han Bopomofo Han Katakana 3828No match 3829 3830/^(*sr:.{4}|..)/utf 3831 \x{2e80}\x{3105}\x{2e80}\x{30a1} Han Bopomofo Han Katakana 3832 0: \x{2e80}\x{3105} 3833 3834/^(*atomic_script_run:.{4}|..)/utf 3835\= Expect no match 3836 \x{2e80}\x{3105}\x{2e80}\x{30a1} Han Bopomofo Han Katakana 3837No match 3838 3839/^(*asr:.*)/utf 3840\= Expect no match 3841 \x{2e80}\x{3105}\x{2e80}\x{30a1} Han Bopomofo Han Katakana 3842No match 3843 3844/^(?>(*sr:.*))/utf 3845 \x{2e80}\x{3105}\x{2e80}\x{30a1} Han Bopomofo Han Katakana 3846 0: \x{2e80}\x{3105}\x{2e80} 3847 3848/^(*sr:.*)/utf 3849 \x{2e80}\x{3105}\x{2e80}\x{30a1} Han Bopomofo Han Katakana 3850 0: \x{2e80}\x{3105}\x{2e80} 3851 \x{10fffd}\x{10fffd}\x{10fffd} Private use (Unknown) 3852 0: \x{10fffd} 3853 3854/^(*sr:\x{2e80}*)/utf 3855 \x{2e80}\x{2e80}\x{3105} Han Han Bopomofo 3856 0: \x{2e80}\x{2e80} 3857 3858/^(*sr:\x{2e80}*)\x{2e80}/utf 3859 \x{2e80}\x{2e80}\x{3105} Han Han Bopomofo 3860 0: \x{2e80}\x{2e80} 3861 3862/^(*sr:.*)Test/utf 3863 Test script run on an empty string 3864 0: Test 3865 3866/^(*sr:(.{2})){2}/utf 3867 \x{0600}7\x{0669}\x{1eef1} Arabic ascii-digit Arabic-digit Arabic 3868 0: \x{600}7\x{669}\x{1eef1} 3869 1: \x{669}\x{1eef1} 3870 \x{1A80}\x{1A80}\x{1a40}\x{1a41} Tai Tham Hora digits, letters 3871 0: \x{1a80}\x{1a80}\x{1a40}\x{1a41} 3872 1: \x{1a40}\x{1a41} 3873 \x{1A80}\x{1a40}\x{1A90}\x{1a41} Tai Tham Hora digit, letter, Tham digit, letter 3874 0: \x{1a80}\x{1a40}\x{1a90}\x{1a41} 3875 1: \x{1a90}\x{1a41} 3876\= Expect no match 3877 \x{1100}\x{2e80}\x{3041}\x{1101} Hangul Han Hiragana Hangul 3878No match 3879 3880/^(*sr:\S*)/utf 3881 \x{1cf4}\x{20f0}\x{900}\x{11305} [Dev,Gran,Kan] [Dev,Gran,Lat] Dev Gran 3882 0: \x{1cf4}\x{20f0}\x{900} 3883 \x{1cf4}\x{20f0}\x{11305}\x{900} [Dev,Gran,Kan] [Dev,Gran,Lat] Gran Dev 3884 0: \x{1cf4}\x{20f0}\x{11305} 3885 \x{1cf4}\x{20f0}\x{900}ABC [Dev,Gran,Kan] [Dev,Gran,Lat] Dev Lat 3886 0: \x{1cf4}\x{20f0}\x{900} 3887 \x{1cf4}\x{20f0}ABC [Dev,Gran,Kan] [Dev,Gran,Lat] Lat 3888 0: \x{1cf4}\x{20f0} 3889 \x{20f0}ABC [Dev,Gran,Lat] Lat 3890 0: \x{20f0}ABC 3891 XYZ\x{20f0}ABC Lat [Dev,Gran,Lat] Lat 3892 0: XYZ\x{20f0}ABC 3893 \x{a36}\x{a33}\x{900} [Dev,...] [Dev,...] Dev 3894 0: \x{a36}\x{a33} 3895 \x{3001}\x{2e80}\x{3041}\x{30a1} [Bopo, Han, etc] Han Hira Kata 3896 0: \x{3001}\x{2e80}\x{3041}\x{30a1} 3897 \x{3001}\x{30a1}\x{2e80}\x{3041} [Bopo, Han, etc] Kata Han Hira 3898 0: \x{3001}\x{30a1}\x{2e80}\x{3041} 3899 \x{3001}\x{3105}\x{2e80}\x{1101} [Bopo, Han, etc] Bopomofo Han Hangul 3900 0: \x{3001}\x{3105}\x{2e80} 3901 \x{3105}\x{3001}\x{2e80}\x{1101} Bopomofo [Bopo, Han, etc] Han Hangul 3902 0: \x{3105}\x{3001}\x{2e80} 3903 \x{3031}\x{3041}\x{30a1}\x{2e80} [Hira Kata] Hira Kata Han 3904 0: \x{3031}\x{3041}\x{30a1}\x{2e80} 3905 \x{060c}\x{06d4}\x{0600}\x{10d00}\x{0700} [Arab Rohg Syrc Thaa] [Arab Rohg] Arab Rohg Syrc 3906 0: \x{60c}\x{6d4}\x{600} 3907 \x{060c}\x{06d4}\x{0700}\x{0600}\x{10d00} [Arab Rohg Syrc Thaa] [Arab Rohg] Syrc Arab Rohg 3908 0: \x{60c}\x{6d4} 3909 \x{2e80}\x{3041}\x{3001}\x{3031}\x{2e80} Han Hira [Bopo, Han, etc] [Hira Kata] Han 3910 0: \x{2e80}\x{3041}\x{3001}\x{3031}\x{2e80} 3911 3912/(?<!)(*sr:)/ 3913 3914/(?<!X(*sr:B)C)/ 3915 3916/(?<=abc(?=X(*sr:BCY)Z)XBCYZ)./ 3917 abcXBCYZ! 3918 0: ! 3919 3920/(?<=abc(?=X(*sr:BXY)CCC)XBXYCCC)./ 3921 abcXBXYCCC! 3922 0: ! 3923 3924/^(*sr:\S*)/utf 3925 \x{10d00}\x{10d00}\x{06d4} Rohingya Rohingya Arabic-full-stop 3926 0: \x{10d00}\x{10d00}\x{6d4} 3927 \x{06d4}\x{10d00}\x{10d00} Arabic-full-stop Rohingya Rohingya 3928 0: \x{6d4}\x{10d00}\x{10d00} 3929 \x{10d00}\x{10d00}\x{0363} Rohingya Rohingya Inherited-extend-Latin 3930 0: \x{10d00}\x{10d00} 3931 \x{0363}\x{10d00}\x{10d00} Inherited-extend-Latin Rohingya Rohingya 3932 0: \x{363} 3933 AB\x{0363} Latin Latin Inherited-extend-Latin 3934 0: AB\x{363} 3935 \x{0363}AB Inherited-extend-Latin Latin Latin 3936 0: \x{363}AB 3937 AB\x{1cf7} Latin Latin Common-extended-Beng 3938 0: AB 3939 \x{1cf7}AB Common-extend-Beng Latin Latin 3940 0: \x{1cf7} 3941 \x{1cf7}\x{0993} Common-extend-Beng Bengali 3942 0: \x{1cf7}\x{993} 3943 A\x{1abe}BC Test enclosing mark 3944 0: A\x{1abe}BC 3945 \x{0370}\x{1abe}\x{0371} Which can occur with any script (Greek here) 3946 0: \x{370}\x{1abe}\x{371} 3947 \x{3001}\x{adf9}\x{3001} [.. Hangul ..] Hangul [.. Hangul ..] 3948 0: \x{3001}\x{adf9}\x{3001} 3949 \x{3400}\x{3001}XXX Han [Han etc.] 3950 0: \x{3400}\x{3001} 3951 \x{3400}\x{1cd5} Han [Bengali Devanagari] 3952 0: \x{3400} 3953 \x{ac01}\x{3400} Hangul [.. Hangul ..] 3954 0: \x{ac01}\x{3400} 3955 \x{ac01}\x{1cd5} Hangul [Bengali Devanagari] 3956 0: \x{ac01} 3957 \x{102e0}\x{06d4}\x{1ee4d} [Arabic Coptic] [Arab Rohingya] Arabic 3958 0: \x{102e0}\x{6d4}\x{1ee4d} 3959 \x{102e0}\x{06d4}\x{2cc9} [Arabic Coptic] [Arab Rohingya] Coptic 3960 0: \x{102e0}\x{6d4} 3961 \x{102e0}\x{06d4}\x{10d30} [Arabic Coptic] [Arab Rohingya] Rohingya 3962 0: \x{102e0}\x{6d4} 3963 3964# Test loop breaking for empty string match 3965 3966/^(*sr:A|)*BCD/utf 3967 AABCD 3968 0: AABCD 3969 ABCD 3970 0: ABCD 3971 BCD 3972 0: BCD 3973 3974# The use of (*ACCEPT) breaks script run checking 3975 3976/^(*sr:.*(*ACCEPT)ZZ)/utf 3977 \x{1100}\x{2e80}\x{3041}\x{1101} Hangul Han Hiragana Hangul 3978 0: \x{1100}\x{2e80}\x{3041}\x{1101} Hangul Han Hiragana Hangul 3979 3980# ------- 3981 3982# Test group names containing non-ASCII letters and digits 3983 3984/(?'ABáC'...)\g{ABáC}/utf 3985 abcabcdefg 3986 0: abcabc 3987 1: abc 3988 3989/(?'XʰABC'...)/utf 3990 xyzpq 3991 0: xyz 3992 1: xyz 3993 3994/(?'XאABC'...)/utf 3995 12345 3996 0: 123 3997 1: 123 3998 3999/(?'XᾈABC'...)/utf 4000 %^&*(... 4001 0: %^& 4002 1: %^& 4003 4004/(?'ABC'...)/utf 4005 abcde 4006 0: abc 4007 1: abc 4008 4009/^(?'אABC'...)(?&אABC)(?P=אABC)/utf 4010 123123123456 4011 0: 123123123 4012 1: 123 4013 4014/^(?'אABC'...)(?&אABC)/utf 4015 123123123456 4016 0: 123123 4017 1: 123 4018 4019/\X*/ 4020 \xF3aaa\xE4\xEA\xEB\xFEa 4021 0: \xf3aaa\xe4\xea\xeb\xfea 4022 4023/Я/i,utf 4024 \x{42f} 4025 0: \x{42f} 4026 \x{44f} 4027 0: \x{44f} 4028 4029/(?=Я)/i,utf 4030 \x{42f} 4031 0: 4032 \x{44f} 4033 0: 4034 4035# End of testinput4 4036