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{Arabic}]/utf 1887 \x{06e9} 1888 0: \x{6e9} 1889 \x{060b} 1890 0: \x{60b} 1891\= Expect no match 1892 X\x{06e9} 1893No match 1894 1895/^\P{Katakana}+/utf 1896 \x{3105} 1897 0: \x{3105} 1898\= Expect no match 1899 \x{30ff} 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{katakana}/utf 2350 \x{30a1} 2351 0: \x{30a1} 2352 \x{3001} 2353 0: \x{3001} 2354 2355/\p{scx:katakana}/utf 2356 \x{30a1} 2357 0: \x{30a1} 2358 \x{3001} 2359 0: \x{3001} 2360 2361/\p{script extensions:katakana}/utf 2362 \x{30a1} 2363 0: \x{30a1} 2364 \x{3001} 2365 0: \x{3001} 2366 2367/\p{sc:katakana}/utf 2368 \x{30a1} 2369 0: \x{30a1} 2370\= Expect no match 2371 \x{3001} 2372No match 2373 2374/\p{script:katakana}/utf 2375 \x{30a1} 2376 0: \x{30a1} 2377\= Expect no match 2378 \x{3001} 2379No match 2380 2381/\p{sc:katakana}{3,}/utf 2382 \x{30a1}\x{30fa}\x{32d0}\x{1b122}\x{ff66}\x{3001}ABC 2383 0: \x{30a1}\x{30fa}\x{32d0}\x{1b122}\x{ff66} 2384 2385/\p{sc:katakana}{3,}?/utf 2386 \x{30a1}\x{30fa}\x{32d0}\x{1b122}\x{ff66}\x{3001}ABC 2387 0: \x{30a1}\x{30fa}\x{32d0} 2388 2389/\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 2390 \x{102A4}\x{AA52}\x{A91D}\x{1C46}\x{10283}\x{1092E}\x{1C6B}\x{A93B}\x{A8BF}\x{1BA0}\x{A50A}==== 2391 0: \x{102a4}\x{aa52}\x{a91d}\x{1c46}\x{10283}\x{1092e}\x{1c6b}\x{a93b}\x{a8bf}\x{1ba0}\x{a50a} 2392 2393/\x{a77d}\x{1d79}/i,utf 2394 \x{a77d}\x{1d79} 2395 0: \x{a77d}\x{1d79} 2396 \x{1d79}\x{a77d} 2397 0: \x{1d79}\x{a77d} 2398 2399/\x{a77d}\x{1d79}/utf 2400 \x{a77d}\x{1d79} 2401 0: \x{a77d}\x{1d79} 2402\= Expect no match 2403 \x{1d79}\x{a77d} 2404No match 2405 2406/(A)\1/i,utf 2407 AA 2408 0: AA 2409 1: A 2410 Aa 2411 0: Aa 2412 1: A 2413 aa 2414 0: aa 2415 1: a 2416 aA 2417 0: aA 2418 1: a 2419 2420/(\x{10a})\1/i,utf 2421 \x{10a}\x{10a} 2422 0: \x{10a}\x{10a} 2423 1: \x{10a} 2424 \x{10a}\x{10b} 2425 0: \x{10a}\x{10b} 2426 1: \x{10a} 2427 \x{10b}\x{10b} 2428 0: \x{10b}\x{10b} 2429 1: \x{10b} 2430 \x{10b}\x{10a} 2431 0: \x{10b}\x{10a} 2432 1: \x{10b} 2433 2434# The next two tests are for property support in non-UTF mode 2435 2436/(?:\p{Lu}|\x20)+/ 2437 \x41\x20\x50\xC2\x54\xC9\x20\x54\x4F\x44\x41\x59 2438 0: A P\xc2T\xc9 TODAY 2439 2440/[\p{Lu}\x20]+/ 2441 \x41\x20\x50\xC2\x54\xC9\x20\x54\x4F\x44\x41\x59 2442 0: A P\xc2T\xc9 TODAY 2443 2444/\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 2445 \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} 2446 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} 2447 2448/^\w+/utf,ucp 2449 Az_\x{aa}\x{c0}\x{1c5}\x{2b0}\x{3b6}\x{1d7c9}\x{2fa1d}1\x{660}\x{bef}\x{16ee} 2450 0: Az_\x{aa}\x{c0}\x{1c5}\x{2b0}\x{3b6}\x{1d7c9}\x{2fa1d}1\x{660}\x{bef}\x{16ee} 2451 2452/^[[:xdigit:]]*/utf,ucp 2453 1a\x{660}\x{bef}\x{16ee} 2454 0: 1a 2455 2456/^\d+/utf,ucp 2457 1\x{660}\x{bef}\x{16ee} 2458 0: 1\x{660}\x{bef} 2459 2460/^[[:digit:]]+/utf,ucp 2461 1\x{660}\x{bef}\x{16ee} 2462 0: 1\x{660}\x{bef} 2463 2464/^>\s+/utf,ucp 2465 >\x{20}\x{a0}\x{1680}\x{2028}\x{2029}\x{202f}\x{9}\x{b} 2466 0: > \x{a0}\x{1680}\x{2028}\x{2029}\x{202f}\x{09}\x{0b} 2467 2468/^>\pZ+/utf,ucp 2469 >\x{20}\x{a0}\x{1680}\x{2028}\x{2029}\x{202f}\x{9}\x{b} 2470 0: > \x{a0}\x{1680}\x{2028}\x{2029}\x{202f} 2471 2472/^>[[:space:]]*/utf,ucp 2473 >\x{20}\x{a0}\x{1680}\x{2028}\x{2029}\x{202f}\x{9}\x{b} 2474 0: > \x{a0}\x{1680}\x{2028}\x{2029}\x{202f}\x{09}\x{0b} 2475 2476/^>[[:blank:]]*/utf,ucp 2477 >\x{20}\x{a0}\x{1680}\x{2000}\x{202f}\x{9}\x{b}\x{2028} 2478 0: > \x{a0}\x{1680}\x{2000}\x{202f}\x{09} 2479 2480/^[[:alpha:]]*/utf,ucp 2481 Az\x{aa}\x{c0}\x{1c5}\x{2b0}\x{3b6}\x{1d7c9}\x{2fa1d} 2482 0: Az\x{aa}\x{c0}\x{1c5}\x{2b0}\x{3b6}\x{1d7c9}\x{2fa1d} 2483 2484/^[[:alnum:]]*/utf,ucp 2485 Az\x{aa}\x{c0}\x{1c5}\x{2b0}\x{3b6}\x{1d7c9}\x{2fa1d}1\x{660}\x{bef}\x{16ee} 2486 0: Az\x{aa}\x{c0}\x{1c5}\x{2b0}\x{3b6}\x{1d7c9}\x{2fa1d}1\x{660}\x{bef}\x{16ee} 2487 2488/^[[:cntrl:]]*/utf,ucp 2489 \x{0}\x{09}\x{1f}\x{7f}\x{9f} 2490 0: \x{00}\x{09}\x{1f}\x{7f}\x{9f} 2491 2492/^[[:graph:]]*/utf,ucp 2493 A\x{a1}\x{a0} 2494 0: A\x{a1} 2495 2496/^[[:print:]]*/utf,ucp 2497 A z\x{a0}\x{a1} 2498 0: A z\x{a0}\x{a1} 2499 2500/^[[:punct:]]*/utf,ucp 2501 .+\x{a1}\x{a0} 2502 0: .+\x{a1} 2503 2504/\p{Zs}*?\R/ 2505\= Expect no match 2506 a\xFCb 2507No match 2508 2509/\p{Zs}*\R/ 2510\= Expect no match 2511 a\xFCb 2512No match 2513 2514/ⱥ/i,utf 2515 ⱥ 2516 0: \x{2c65} 2517 Ⱥx 2518 0: \x{23a} 2519 Ⱥ 2520 0: \x{23a} 2521 2522/[ⱥ]/i,utf 2523 ⱥ 2524 0: \x{2c65} 2525 Ⱥx 2526 0: \x{23a} 2527 Ⱥ 2528 0: \x{23a} 2529 2530/Ⱥ/i,utf 2531 Ⱥ 2532 0: \x{23a} 2533 ⱥ 2534 0: \x{2c65} 2535 2536# These are tests for extended grapheme clusters 2537 2538/^\X/utf,aftertext 2539 G\x{34e}\x{34e}X 2540 0: G\x{34e}\x{34e} 2541 0+ X 2542 \x{34e}\x{34e}X 2543 0: \x{34e}\x{34e} 2544 0+ X 2545 \x04X 2546 0: \x{04} 2547 0+ X 2548 \x{1100}X 2549 0: \x{1100} 2550 0+ X 2551 \x{1100}\x{34e}X 2552 0: \x{1100}\x{34e} 2553 0+ X 2554 \x{1b04}\x{1b04}X 2555 0: \x{1b04}\x{1b04} 2556 0+ X 2557 *These match up to the roman letters 2558 0: * 2559 0+ These match up to the roman letters 2560 \x{1111}\x{1111}L,L 2561 0: \x{1111}\x{1111} 2562 0+ L,L 2563 \x{1111}\x{1111}\x{1169}L,L,V 2564 0: \x{1111}\x{1111}\x{1169} 2565 0+ L,L,V 2566 \x{1111}\x{ae4c}L, LV 2567 0: \x{1111}\x{ae4c} 2568 0+ L, LV 2569 \x{1111}\x{ad89}L, LVT 2570 0: \x{1111}\x{ad89} 2571 0+ L, LVT 2572 \x{1111}\x{ae4c}\x{1169}L, LV, V 2573 0: \x{1111}\x{ae4c}\x{1169} 2574 0+ L, LV, V 2575 \x{1111}\x{ae4c}\x{1169}\x{1169}L, LV, V, V 2576 0: \x{1111}\x{ae4c}\x{1169}\x{1169} 2577 0+ L, LV, V, V 2578 \x{1111}\x{ae4c}\x{1169}\x{11fe}L, LV, V, T 2579 0: \x{1111}\x{ae4c}\x{1169}\x{11fe} 2580 0+ L, LV, V, T 2581 \x{1111}\x{ad89}\x{11fe}L, LVT, T 2582 0: \x{1111}\x{ad89}\x{11fe} 2583 0+ L, LVT, T 2584 \x{1111}\x{ad89}\x{11fe}\x{11fe}L, LVT, T, T 2585 0: \x{1111}\x{ad89}\x{11fe}\x{11fe} 2586 0+ L, LVT, T, T 2587 \x{ad89}\x{11fe}\x{11fe}LVT, T, T 2588 0: \x{ad89}\x{11fe}\x{11fe} 2589 0+ LVT, T, T 2590 *These match just the first codepoint (invalid sequence) 2591 0: * 2592 0+ These match just the first codepoint (invalid sequence) 2593 \x{1111}\x{11fe}L, T 2594 0: \x{1111} 2595 0+ \x{11fe}L, T 2596 \x{ae4c}\x{1111}LV, L 2597 0: \x{ae4c} 2598 0+ \x{1111}LV, L 2599 \x{ae4c}\x{ae4c}LV, LV 2600 0: \x{ae4c} 2601 0+ \x{ae4c}LV, LV 2602 \x{ae4c}\x{ad89}LV, LVT 2603 0: \x{ae4c} 2604 0+ \x{ad89}LV, LVT 2605 \x{1169}\x{1111}V, L 2606 0: \x{1169} 2607 0+ \x{1111}V, L 2608 \x{1169}\x{ae4c}V, LV 2609 0: \x{1169} 2610 0+ \x{ae4c}V, LV 2611 \x{1169}\x{ad89}V, LVT 2612 0: \x{1169} 2613 0+ \x{ad89}V, LVT 2614 \x{ad89}\x{1111}LVT, L 2615 0: \x{ad89} 2616 0+ \x{1111}LVT, L 2617 \x{ad89}\x{1169}LVT, V 2618 0: \x{ad89} 2619 0+ \x{1169}LVT, V 2620 \x{ad89}\x{ae4c}LVT, LV 2621 0: \x{ad89} 2622 0+ \x{ae4c}LVT, LV 2623 \x{ad89}\x{ad89}LVT, LVT 2624 0: \x{ad89} 2625 0+ \x{ad89}LVT, LVT 2626 \x{11fe}\x{1111}T, L 2627 0: \x{11fe} 2628 0+ \x{1111}T, L 2629 \x{11fe}\x{1169}T, V 2630 0: \x{11fe} 2631 0+ \x{1169}T, V 2632 \x{11fe}\x{ae4c}T, LV 2633 0: \x{11fe} 2634 0+ \x{ae4c}T, LV 2635 \x{11fe}\x{ad89}T, LVT 2636 0: \x{11fe} 2637 0+ \x{ad89}T, LVT 2638 *Test extend and spacing mark 2639 0: * 2640 0+ Test extend and spacing mark 2641 \x{1111}\x{ae4c}\x{0711}L, LV, extend 2642 0: \x{1111}\x{ae4c}\x{711} 2643 0+ L, LV, extend 2644 \x{1111}\x{ae4c}\x{1b04}L, LV, spacing mark 2645 0: \x{1111}\x{ae4c}\x{1b04} 2646 0+ L, LV, spacing mark 2647 \x{1111}\x{ae4c}\x{1b04}\x{0711}\x{1b04}L, LV, spacing mark, extend, spacing mark 2648 0: \x{1111}\x{ae4c}\x{1b04}\x{711}\x{1b04} 2649 0+ L, LV, spacing mark, extend, spacing mark 2650 *Test CR, LF, and control 2651 0: * 2652 0+ Test CR, LF, and control 2653 \x0d\x{0711}CR, extend 2654 0: \x{0d} 2655 0+ \x{711}CR, extend 2656 \x0d\x{1b04}CR, spacingmark 2657 0: \x{0d} 2658 0+ \x{1b04}CR, spacingmark 2659 \x0a\x{0711}LF, extend 2660 0: \x{0a} 2661 0+ \x{711}LF, extend 2662 \x0a\x{1b04}LF, spacingmark 2663 0: \x{0a} 2664 0+ \x{1b04}LF, spacingmark 2665 \x0b\x{0711}Control, extend 2666 0: \x{0b} 2667 0+ \x{711}Control, extend 2668 \x09\x{1b04}Control, spacingmark 2669 0: \x{09} 2670 0+ \x{1b04}Control, spacingmark 2671 *Test Extended Pictographic after bug fix 2672 0: * 2673 0+ Test Extended Pictographic after bug fix 2674 \x{261d}\x{261d}B Extended_Pictographic Extended_Pictographic 2675 0: \x{261d} 2676 0+ \x{261d}B Extended_Pictographic Extended_Pictographic 2677 \x{261D}\x{1F3FB}\x{261d}B Extended_Pictographic Extend E-P 2678 0: \x{261d}\x{1f3fb} 2679 0+ \x{261d}B Extended_Pictographic Extend E-P 2680 \x{261D}\x{1F3FB}\x{200d}\x{261d}B Extended_Pictographic Extend ZWJ E-P 2681 0: \x{261d}\x{1f3fb}\x{200d}\x{261d} 2682 0+ B Extended_Pictographic Extend ZWJ E-P 2683 \x{1f3f3}\x{fe0f}\x{200d}\x{1f308}\x{1f3f4}\x{200d}\x{2620}\x{fe0f}\x{1f3f3}\x{fe0f}\x{200d}\x{1f308}\x{1f3f4}\x{200d}\x{2620}\x{fe0f} 2684 0: \x{1f3f3}\x{fe0f}\x{200d}\x{1f308} 2685 0+ \x{1f3f4}\x{200d}\x{2620}\x{fe0f}\x{1f3f3}\x{fe0f}\x{200d}\x{1f308}\x{1f3f4}\x{200d}\x{2620}\x{fe0f} 2686 A\x{200d}\x{1f308}B 2687 0: A\x{200d} 2688 0+ \x{1f308}B 2689 A\x{200d}B A ZWJ 2690 0: A\x{200d} 2691 0+ B A ZWJ 2692 \x{261D}\x{1F3FB}B Extended_Pictographic Extend 2693 0: \x{261d}\x{1f3fb} 2694 0+ B Extended_Pictographic Extend 2695 \x{1F1E6}\x{1F1E7}B RegionalIndicator RegionalIndicator 2696 0: \x{1f1e6}\x{1f1e7} 2697 0+ B RegionalIndicator RegionalIndicator 2698 *There are no Prepend characters, so we can't test Prepend, CR 2699 0: * 2700 0+ There are no Prepend characters, so we can't test Prepend, CR 2701 2702/^(?>\X{2})X/utf,aftertext 2703 \x{1111}\x{ae4c}\x{1111}\x{ae4c}X 2704 0: \x{1111}\x{ae4c}\x{1111}\x{ae4c}X 2705 0+ 2706 2707/^\X{2,4}X/utf,aftertext 2708 \x{1111}\x{ae4c}\x{1111}\x{ae4c}X 2709 0: \x{1111}\x{ae4c}\x{1111}\x{ae4c}X 2710 0+ 2711 \x{1111}\x{ae4c}\x{1111}\x{ae4c}\x{1111}\x{ae4c}X 2712 0: \x{1111}\x{ae4c}\x{1111}\x{ae4c}\x{1111}\x{ae4c}X 2713 0+ 2714 \x{1111}\x{ae4c}\x{1111}\x{ae4c}\x{1111}\x{ae4c}\x{1111}\x{ae4c}X 2715 0: \x{1111}\x{ae4c}\x{1111}\x{ae4c}\x{1111}\x{ae4c}\x{1111}\x{ae4c}X 2716 0+ 2717 2718/^\X{2,4}?X/utf,aftertext 2719 \x{1111}\x{ae4c}\x{1111}\x{ae4c}X 2720 0: \x{1111}\x{ae4c}\x{1111}\x{ae4c}X 2721 0+ 2722 \x{1111}\x{ae4c}\x{1111}\x{ae4c}\x{1111}\x{ae4c}X 2723 0: \x{1111}\x{ae4c}\x{1111}\x{ae4c}\x{1111}\x{ae4c}X 2724 0+ 2725 \x{1111}\x{ae4c}\x{1111}\x{ae4c}\x{1111}\x{ae4c}\x{1111}\x{ae4c}X 2726 0: \x{1111}\x{ae4c}\x{1111}\x{ae4c}\x{1111}\x{ae4c}\x{1111}\x{ae4c}X 2727 0+ 2728 2729/\X*Z/utf,no_start_optimize 2730\= Expect no match 2731 A\x{300} 2732No match 2733 2734/\X*(.)/utf,no_start_optimize 2735 A\x{1111}\x{ae4c}\x{1169} 2736 0: A\x{1111} 2737 1: \x{1111} 2738 2739# -------------------------------------------- 2740 2741/\x{1e9e}+/i,utf 2742 \x{1e9e}\x{00df} 2743 0: \x{1e9e}\x{df} 2744 2745/[z\x{1e9e}]+/i,utf 2746 \x{1e9e}\x{00df} 2747 0: \x{1e9e}\x{df} 2748 2749/\x{00df}+/i,utf 2750 \x{1e9e}\x{00df} 2751 0: \x{1e9e}\x{df} 2752 2753/[z\x{00df}]+/i,utf 2754 \x{1e9e}\x{00df} 2755 0: \x{1e9e}\x{df} 2756 2757/\x{1f88}+/i,utf 2758 \x{1f88}\x{1f80} 2759 0: \x{1f88}\x{1f80} 2760 2761/[z\x{1f88}]+/i,utf 2762 \x{1f88}\x{1f80} 2763 0: \x{1f88}\x{1f80} 2764 2765# Check a reference with more than one other case 2766 2767/^(\x{00b5})\1{2}$/i,utf 2768 \x{00b5}\x{039c}\x{03bc} 2769 0: \x{b5}\x{39c}\x{3bc} 2770 1: \x{b5} 2771 2772# Characters with more than one other case; test in classes 2773 2774/[z\x{00b5}]+/i,utf 2775 \x{00b5}\x{039c}\x{03bc} 2776 0: \x{b5}\x{39c}\x{3bc} 2777 2778/[z\x{039c}]+/i,utf 2779 \x{00b5}\x{039c}\x{03bc} 2780 0: \x{b5}\x{39c}\x{3bc} 2781 2782/[z\x{03bc}]+/i,utf 2783 \x{00b5}\x{039c}\x{03bc} 2784 0: \x{b5}\x{39c}\x{3bc} 2785 2786/[z\x{00c5}]+/i,utf 2787 \x{00c5}\x{00e5}\x{212b} 2788 0: \x{c5}\x{e5}\x{212b} 2789 2790/[z\x{00e5}]+/i,utf 2791 \x{00c5}\x{00e5}\x{212b} 2792 0: \x{c5}\x{e5}\x{212b} 2793 2794/[z\x{212b}]+/i,utf 2795 \x{00c5}\x{00e5}\x{212b} 2796 0: \x{c5}\x{e5}\x{212b} 2797 2798/[z\x{01c4}]+/i,utf 2799 \x{01c4}\x{01c5}\x{01c6} 2800 0: \x{1c4}\x{1c5}\x{1c6} 2801 2802/[z\x{01c5}]+/i,utf 2803 \x{01c4}\x{01c5}\x{01c6} 2804 0: \x{1c4}\x{1c5}\x{1c6} 2805 2806/[z\x{01c6}]+/i,utf 2807 \x{01c4}\x{01c5}\x{01c6} 2808 0: \x{1c4}\x{1c5}\x{1c6} 2809 2810/[z\x{01c7}]+/i,utf 2811 \x{01c7}\x{01c8}\x{01c9} 2812 0: \x{1c7}\x{1c8}\x{1c9} 2813 2814/[z\x{01c8}]+/i,utf 2815 \x{01c7}\x{01c8}\x{01c9} 2816 0: \x{1c7}\x{1c8}\x{1c9} 2817 2818/[z\x{01c9}]+/i,utf 2819 \x{01c7}\x{01c8}\x{01c9} 2820 0: \x{1c7}\x{1c8}\x{1c9} 2821 2822/[z\x{01ca}]+/i,utf 2823 \x{01ca}\x{01cb}\x{01cc} 2824 0: \x{1ca}\x{1cb}\x{1cc} 2825 2826/[z\x{01cb}]+/i,utf 2827 \x{01ca}\x{01cb}\x{01cc} 2828 0: \x{1ca}\x{1cb}\x{1cc} 2829 2830/[z\x{01cc}]+/i,utf 2831 \x{01ca}\x{01cb}\x{01cc} 2832 0: \x{1ca}\x{1cb}\x{1cc} 2833 2834/[z\x{01f1}]+/i,utf 2835 \x{01f1}\x{01f2}\x{01f3} 2836 0: \x{1f1}\x{1f2}\x{1f3} 2837 2838/[z\x{01f2}]+/i,utf 2839 \x{01f1}\x{01f2}\x{01f3} 2840 0: \x{1f1}\x{1f2}\x{1f3} 2841 2842/[z\x{01f3}]+/i,utf 2843 \x{01f1}\x{01f2}\x{01f3} 2844 0: \x{1f1}\x{1f2}\x{1f3} 2845 2846/[z\x{0345}]+/i,utf 2847 \x{0345}\x{0399}\x{03b9}\x{1fbe} 2848 0: \x{345}\x{399}\x{3b9}\x{1fbe} 2849 2850/[z\x{0399}]+/i,utf 2851 \x{0345}\x{0399}\x{03b9}\x{1fbe} 2852 0: \x{345}\x{399}\x{3b9}\x{1fbe} 2853 2854/[z\x{03b9}]+/i,utf 2855 \x{0345}\x{0399}\x{03b9}\x{1fbe} 2856 0: \x{345}\x{399}\x{3b9}\x{1fbe} 2857 2858/[z\x{1fbe}]+/i,utf 2859 \x{0345}\x{0399}\x{03b9}\x{1fbe} 2860 0: \x{345}\x{399}\x{3b9}\x{1fbe} 2861 2862/[z\x{0392}]+/i,utf 2863 \x{0392}\x{03b2}\x{03d0} 2864 0: \x{392}\x{3b2}\x{3d0} 2865 2866/[z\x{03b2}]+/i,utf 2867 \x{0392}\x{03b2}\x{03d0} 2868 0: \x{392}\x{3b2}\x{3d0} 2869 2870/[z\x{03d0}]+/i,utf 2871 \x{0392}\x{03b2}\x{03d0} 2872 0: \x{392}\x{3b2}\x{3d0} 2873 2874/[z\x{0395}]+/i,utf 2875 \x{0395}\x{03b5}\x{03f5} 2876 0: \x{395}\x{3b5}\x{3f5} 2877 2878/[z\x{03b5}]+/i,utf 2879 \x{0395}\x{03b5}\x{03f5} 2880 0: \x{395}\x{3b5}\x{3f5} 2881 2882/[z\x{03f5}]+/i,utf 2883 \x{0395}\x{03b5}\x{03f5} 2884 0: \x{395}\x{3b5}\x{3f5} 2885 2886/[z\x{0398}]+/i,utf 2887 \x{0398}\x{03b8}\x{03d1}\x{03f4} 2888 0: \x{398}\x{3b8}\x{3d1}\x{3f4} 2889 2890/[z\x{03b8}]+/i,utf 2891 \x{0398}\x{03b8}\x{03d1}\x{03f4} 2892 0: \x{398}\x{3b8}\x{3d1}\x{3f4} 2893 2894/[z\x{03d1}]+/i,utf 2895 \x{0398}\x{03b8}\x{03d1}\x{03f4} 2896 0: \x{398}\x{3b8}\x{3d1}\x{3f4} 2897 2898/[z\x{03f4}]+/i,utf 2899 \x{0398}\x{03b8}\x{03d1}\x{03f4} 2900 0: \x{398}\x{3b8}\x{3d1}\x{3f4} 2901 2902/[z\x{039a}]+/i,utf 2903 \x{039a}\x{03ba}\x{03f0} 2904 0: \x{39a}\x{3ba}\x{3f0} 2905 2906/[z\x{03ba}]+/i,utf 2907 \x{039a}\x{03ba}\x{03f0} 2908 0: \x{39a}\x{3ba}\x{3f0} 2909 2910/[z\x{03f0}]+/i,utf 2911 \x{039a}\x{03ba}\x{03f0} 2912 0: \x{39a}\x{3ba}\x{3f0} 2913 2914/[z\x{03a0}]+/i,utf 2915 \x{03a0}\x{03c0}\x{03d6} 2916 0: \x{3a0}\x{3c0}\x{3d6} 2917 2918/[z\x{03c0}]+/i,utf 2919 \x{03a0}\x{03c0}\x{03d6} 2920 0: \x{3a0}\x{3c0}\x{3d6} 2921 2922/[z\x{03d6}]+/i,utf 2923 \x{03a0}\x{03c0}\x{03d6} 2924 0: \x{3a0}\x{3c0}\x{3d6} 2925 2926/[z\x{03a1}]+/i,utf 2927 \x{03a1}\x{03c1}\x{03f1} 2928 0: \x{3a1}\x{3c1}\x{3f1} 2929 2930/[z\x{03c1}]+/i,utf 2931 \x{03a1}\x{03c1}\x{03f1} 2932 0: \x{3a1}\x{3c1}\x{3f1} 2933 2934/[z\x{03f1}]+/i,utf 2935 \x{03a1}\x{03c1}\x{03f1} 2936 0: \x{3a1}\x{3c1}\x{3f1} 2937 2938/[z\x{03a3}]+/i,utf 2939 \x{03A3}\x{03C2}\x{03C3} 2940 0: \x{3a3}\x{3c2}\x{3c3} 2941 2942/[z\x{03c2}]+/i,utf 2943 \x{03A3}\x{03C2}\x{03C3} 2944 0: \x{3a3}\x{3c2}\x{3c3} 2945 2946/[z\x{03c3}]+/i,utf 2947 \x{03A3}\x{03C2}\x{03C3} 2948 0: \x{3a3}\x{3c2}\x{3c3} 2949 2950/[z\x{03a6}]+/i,utf 2951 \x{03a6}\x{03c6}\x{03d5} 2952 0: \x{3a6}\x{3c6}\x{3d5} 2953 2954/[z\x{03c6}]+/i,utf 2955 \x{03a6}\x{03c6}\x{03d5} 2956 0: \x{3a6}\x{3c6}\x{3d5} 2957 2958/[z\x{03d5}]+/i,utf 2959 \x{03a6}\x{03c6}\x{03d5} 2960 0: \x{3a6}\x{3c6}\x{3d5} 2961 2962/[z\x{03c9}]+/i,utf 2963 \x{03c9}\x{03a9}\x{2126} 2964 0: \x{3c9}\x{3a9}\x{2126} 2965 2966/[z\x{03a9}]+/i,utf 2967 \x{03c9}\x{03a9}\x{2126} 2968 0: \x{3c9}\x{3a9}\x{2126} 2969 2970/[z\x{2126}]+/i,utf 2971 \x{03c9}\x{03a9}\x{2126} 2972 0: \x{3c9}\x{3a9}\x{2126} 2973 2974/[z\x{1e60}]+/i,utf 2975 \x{1e60}\x{1e61}\x{1e9b} 2976 0: \x{1e60}\x{1e61}\x{1e9b} 2977 2978/[z\x{1e61}]+/i,utf 2979 \x{1e60}\x{1e61}\x{1e9b} 2980 0: \x{1e60}\x{1e61}\x{1e9b} 2981 2982/[z\x{1e9b}]+/i,utf 2983 \x{1e60}\x{1e61}\x{1e9b} 2984 0: \x{1e60}\x{1e61}\x{1e9b} 2985 2986# Perl 5.12.4 gets these wrong, but 5.15.3 is OK 2987 2988/[z\x{004b}]+/i,utf 2989 \x{004b}\x{006b}\x{212a} 2990 0: Kk\x{212a} 2991 2992/[z\x{006b}]+/i,utf 2993 \x{004b}\x{006b}\x{212a} 2994 0: Kk\x{212a} 2995 2996/[z\x{212a}]+/i,utf 2997 \x{004b}\x{006b}\x{212a} 2998 0: Kk\x{212a} 2999 3000/[z\x{0053}]+/i,utf 3001 \x{0053}\x{0073}\x{017f} 3002 0: Ss\x{17f} 3003 3004/[z\x{0073}]+/i,utf 3005 \x{0053}\x{0073}\x{017f} 3006 0: Ss\x{17f} 3007 3008/[z\x{017f}]+/i,utf 3009 \x{0053}\x{0073}\x{017f} 3010 0: Ss\x{17f} 3011 3012# -------------------------------------- 3013 3014/(ΣΆΜΟΣ) \1/i,utf 3015 ΣΆΜΟΣ ΣΆΜΟΣ 3016 0: \x{3a3}\x{386}\x{39c}\x{39f}\x{3a3} \x{3a3}\x{386}\x{39c}\x{39f}\x{3a3} 3017 1: \x{3a3}\x{386}\x{39c}\x{39f}\x{3a3} 3018 ΣΆΜΟΣ σάμος 3019 0: \x{3a3}\x{386}\x{39c}\x{39f}\x{3a3} \x{3c3}\x{3ac}\x{3bc}\x{3bf}\x{3c2} 3020 1: \x{3a3}\x{386}\x{39c}\x{39f}\x{3a3} 3021 σάμος σάμος 3022 0: \x{3c3}\x{3ac}\x{3bc}\x{3bf}\x{3c2} \x{3c3}\x{3ac}\x{3bc}\x{3bf}\x{3c2} 3023 1: \x{3c3}\x{3ac}\x{3bc}\x{3bf}\x{3c2} 3024 σάμος σάμοσ 3025 0: \x{3c3}\x{3ac}\x{3bc}\x{3bf}\x{3c2} \x{3c3}\x{3ac}\x{3bc}\x{3bf}\x{3c3} 3026 1: \x{3c3}\x{3ac}\x{3bc}\x{3bf}\x{3c2} 3027 σάμος ΣΆΜΟΣ 3028 0: \x{3c3}\x{3ac}\x{3bc}\x{3bf}\x{3c2} \x{3a3}\x{386}\x{39c}\x{39f}\x{3a3} 3029 1: \x{3c3}\x{3ac}\x{3bc}\x{3bf}\x{3c2} 3030 3031/(σάμος) \1/i,utf 3032 ΣΆΜΟΣ ΣΆΜΟΣ 3033 0: \x{3a3}\x{386}\x{39c}\x{39f}\x{3a3} \x{3a3}\x{386}\x{39c}\x{39f}\x{3a3} 3034 1: \x{3a3}\x{386}\x{39c}\x{39f}\x{3a3} 3035 ΣΆΜΟΣ σάμος 3036 0: \x{3a3}\x{386}\x{39c}\x{39f}\x{3a3} \x{3c3}\x{3ac}\x{3bc}\x{3bf}\x{3c2} 3037 1: \x{3a3}\x{386}\x{39c}\x{39f}\x{3a3} 3038 σάμος σάμος 3039 0: \x{3c3}\x{3ac}\x{3bc}\x{3bf}\x{3c2} \x{3c3}\x{3ac}\x{3bc}\x{3bf}\x{3c2} 3040 1: \x{3c3}\x{3ac}\x{3bc}\x{3bf}\x{3c2} 3041 σάμος σάμοσ 3042 0: \x{3c3}\x{3ac}\x{3bc}\x{3bf}\x{3c2} \x{3c3}\x{3ac}\x{3bc}\x{3bf}\x{3c3} 3043 1: \x{3c3}\x{3ac}\x{3bc}\x{3bf}\x{3c2} 3044 σάμος ΣΆΜΟΣ 3045 0: \x{3c3}\x{3ac}\x{3bc}\x{3bf}\x{3c2} \x{3a3}\x{386}\x{39c}\x{39f}\x{3a3} 3046 1: \x{3c3}\x{3ac}\x{3bc}\x{3bf}\x{3c2} 3047 3048/(ΣΆΜΟΣ) \1*/i,utf 3049 ΣΆΜΟΣ\x20 3050 0: \x{3a3}\x{386}\x{39c}\x{39f}\x{3a3} 3051 1: \x{3a3}\x{386}\x{39c}\x{39f}\x{3a3} 3052 ΣΆΜΟΣ ΣΆΜΟΣσάμοςσάμος 3053 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} 3054 1: \x{3a3}\x{386}\x{39c}\x{39f}\x{3a3} 3055 3056# Perl matches these 3057 3058/\x{00b5}+/i,utf 3059 \x{00b5}\x{039c}\x{03bc} 3060 0: \x{b5}\x{39c}\x{3bc} 3061 3062/\x{039c}+/i,utf 3063 \x{00b5}\x{039c}\x{03bc} 3064 0: \x{b5}\x{39c}\x{3bc} 3065 3066/\x{03bc}+/i,utf 3067 \x{00b5}\x{039c}\x{03bc} 3068 0: \x{b5}\x{39c}\x{3bc} 3069 3070 3071/\x{00c5}+/i,utf 3072 \x{00c5}\x{00e5}\x{212b} 3073 0: \x{c5}\x{e5}\x{212b} 3074 3075/\x{00e5}+/i,utf 3076 \x{00c5}\x{00e5}\x{212b} 3077 0: \x{c5}\x{e5}\x{212b} 3078 3079/\x{212b}+/i,utf 3080 \x{00c5}\x{00e5}\x{212b} 3081 0: \x{c5}\x{e5}\x{212b} 3082 3083 3084/\x{01c4}+/i,utf 3085 \x{01c4}\x{01c5}\x{01c6} 3086 0: \x{1c4}\x{1c5}\x{1c6} 3087 3088/\x{01c5}+/i,utf 3089 \x{01c4}\x{01c5}\x{01c6} 3090 0: \x{1c4}\x{1c5}\x{1c6} 3091 3092/\x{01c6}+/i,utf 3093 \x{01c4}\x{01c5}\x{01c6} 3094 0: \x{1c4}\x{1c5}\x{1c6} 3095 3096 3097/\x{01c7}+/i,utf 3098 \x{01c7}\x{01c8}\x{01c9} 3099 0: \x{1c7}\x{1c8}\x{1c9} 3100 3101/\x{01c8}+/i,utf 3102 \x{01c7}\x{01c8}\x{01c9} 3103 0: \x{1c7}\x{1c8}\x{1c9} 3104 3105/\x{01c9}+/i,utf 3106 \x{01c7}\x{01c8}\x{01c9} 3107 0: \x{1c7}\x{1c8}\x{1c9} 3108 3109 3110/\x{01ca}+/i,utf 3111 \x{01ca}\x{01cb}\x{01cc} 3112 0: \x{1ca}\x{1cb}\x{1cc} 3113 3114/\x{01cb}+/i,utf 3115 \x{01ca}\x{01cb}\x{01cc} 3116 0: \x{1ca}\x{1cb}\x{1cc} 3117 3118/\x{01cc}+/i,utf 3119 \x{01ca}\x{01cb}\x{01cc} 3120 0: \x{1ca}\x{1cb}\x{1cc} 3121 3122 3123/\x{01f1}+/i,utf 3124 \x{01f1}\x{01f2}\x{01f3} 3125 0: \x{1f1}\x{1f2}\x{1f3} 3126 3127/\x{01f2}+/i,utf 3128 \x{01f1}\x{01f2}\x{01f3} 3129 0: \x{1f1}\x{1f2}\x{1f3} 3130 3131/\x{01f3}+/i,utf 3132 \x{01f1}\x{01f2}\x{01f3} 3133 0: \x{1f1}\x{1f2}\x{1f3} 3134 3135 3136/\x{0345}+/i,utf 3137 \x{0345}\x{0399}\x{03b9}\x{1fbe} 3138 0: \x{345}\x{399}\x{3b9}\x{1fbe} 3139 3140/\x{0399}+/i,utf 3141 \x{0345}\x{0399}\x{03b9}\x{1fbe} 3142 0: \x{345}\x{399}\x{3b9}\x{1fbe} 3143 3144/\x{03b9}+/i,utf 3145 \x{0345}\x{0399}\x{03b9}\x{1fbe} 3146 0: \x{345}\x{399}\x{3b9}\x{1fbe} 3147 3148/\x{1fbe}+/i,utf 3149 \x{0345}\x{0399}\x{03b9}\x{1fbe} 3150 0: \x{345}\x{399}\x{3b9}\x{1fbe} 3151 3152 3153/\x{0392}+/i,utf 3154 \x{0392}\x{03b2}\x{03d0} 3155 0: \x{392}\x{3b2}\x{3d0} 3156 3157/\x{03b2}+/i,utf 3158 \x{0392}\x{03b2}\x{03d0} 3159 0: \x{392}\x{3b2}\x{3d0} 3160 3161/\x{03d0}+/i,utf 3162 \x{0392}\x{03b2}\x{03d0} 3163 0: \x{392}\x{3b2}\x{3d0} 3164 3165 3166/\x{0395}+/i,utf 3167 \x{0395}\x{03b5}\x{03f5} 3168 0: \x{395}\x{3b5}\x{3f5} 3169 3170/\x{03b5}+/i,utf 3171 \x{0395}\x{03b5}\x{03f5} 3172 0: \x{395}\x{3b5}\x{3f5} 3173 3174/\x{03f5}+/i,utf 3175 \x{0395}\x{03b5}\x{03f5} 3176 0: \x{395}\x{3b5}\x{3f5} 3177 3178 3179/\x{0398}+/i,utf 3180 \x{0398}\x{03b8}\x{03d1}\x{03f4} 3181 0: \x{398}\x{3b8}\x{3d1}\x{3f4} 3182 3183/\x{03b8}+/i,utf 3184 \x{0398}\x{03b8}\x{03d1}\x{03f4} 3185 0: \x{398}\x{3b8}\x{3d1}\x{3f4} 3186 3187/\x{03d1}+/i,utf 3188 \x{0398}\x{03b8}\x{03d1}\x{03f4} 3189 0: \x{398}\x{3b8}\x{3d1}\x{3f4} 3190 3191/\x{03f4}+/i,utf 3192 \x{0398}\x{03b8}\x{03d1}\x{03f4} 3193 0: \x{398}\x{3b8}\x{3d1}\x{3f4} 3194 3195 3196/\x{039a}+/i,utf 3197 \x{039a}\x{03ba}\x{03f0} 3198 0: \x{39a}\x{3ba}\x{3f0} 3199 3200/\x{03ba}+/i,utf 3201 \x{039a}\x{03ba}\x{03f0} 3202 0: \x{39a}\x{3ba}\x{3f0} 3203 3204/\x{03f0}+/i,utf 3205 \x{039a}\x{03ba}\x{03f0} 3206 0: \x{39a}\x{3ba}\x{3f0} 3207 3208 3209/\x{03a0}+/i,utf 3210 \x{03a0}\x{03c0}\x{03d6} 3211 0: \x{3a0}\x{3c0}\x{3d6} 3212 3213/\x{03c0}+/i,utf 3214 \x{03a0}\x{03c0}\x{03d6} 3215 0: \x{3a0}\x{3c0}\x{3d6} 3216 3217/\x{03d6}+/i,utf 3218 \x{03a0}\x{03c0}\x{03d6} 3219 0: \x{3a0}\x{3c0}\x{3d6} 3220 3221 3222/\x{03a1}+/i,utf 3223 \x{03a1}\x{03c1}\x{03f1} 3224 0: \x{3a1}\x{3c1}\x{3f1} 3225 3226/\x{03c1}+/i,utf 3227 \x{03a1}\x{03c1}\x{03f1} 3228 0: \x{3a1}\x{3c1}\x{3f1} 3229 3230/\x{03f1}+/i,utf 3231 \x{03a1}\x{03c1}\x{03f1} 3232 0: \x{3a1}\x{3c1}\x{3f1} 3233 3234 3235/\x{03a3}+/i,utf 3236 \x{03A3}\x{03C2}\x{03C3} 3237 0: \x{3a3}\x{3c2}\x{3c3} 3238 3239/\x{03c2}+/i,utf 3240 \x{03A3}\x{03C2}\x{03C3} 3241 0: \x{3a3}\x{3c2}\x{3c3} 3242 3243/\x{03c3}+/i,utf 3244 \x{03A3}\x{03C2}\x{03C3} 3245 0: \x{3a3}\x{3c2}\x{3c3} 3246 3247 3248/\x{03a6}+/i,utf 3249 \x{03a6}\x{03c6}\x{03d5} 3250 0: \x{3a6}\x{3c6}\x{3d5} 3251 3252/\x{03c6}+/i,utf 3253 \x{03a6}\x{03c6}\x{03d5} 3254 0: \x{3a6}\x{3c6}\x{3d5} 3255 3256/\x{03d5}+/i,utf 3257 \x{03a6}\x{03c6}\x{03d5} 3258 0: \x{3a6}\x{3c6}\x{3d5} 3259 3260 3261/\x{03c9}+/i,utf 3262 \x{03c9}\x{03a9}\x{2126} 3263 0: \x{3c9}\x{3a9}\x{2126} 3264 3265/\x{03a9}+/i,utf 3266 \x{03c9}\x{03a9}\x{2126} 3267 0: \x{3c9}\x{3a9}\x{2126} 3268 3269/\x{2126}+/i,utf 3270 \x{03c9}\x{03a9}\x{2126} 3271 0: \x{3c9}\x{3a9}\x{2126} 3272 3273 3274/\x{1e60}+/i,utf 3275 \x{1e60}\x{1e61}\x{1e9b} 3276 0: \x{1e60}\x{1e61}\x{1e9b} 3277 3278/\x{1e61}+/i,utf 3279 \x{1e60}\x{1e61}\x{1e9b} 3280 0: \x{1e60}\x{1e61}\x{1e9b} 3281 3282/\x{1e9b}+/i,utf 3283 \x{1e60}\x{1e61}\x{1e9b} 3284 0: \x{1e60}\x{1e61}\x{1e9b} 3285 3286 3287/\x{1e9e}+/i,utf 3288 \x{1e9e}\x{00df} 3289 0: \x{1e9e}\x{df} 3290 3291/\x{00df}+/i,utf 3292 \x{1e9e}\x{00df} 3293 0: \x{1e9e}\x{df} 3294 3295 3296/\x{1f88}+/i,utf 3297 \x{1f88}\x{1f80} 3298 0: \x{1f88}\x{1f80} 3299 3300/\x{1f80}+/i,utf 3301 \x{1f88}\x{1f80} 3302 0: \x{1f88}\x{1f80} 3303 3304# Perl 5.12.4 gets these wrong, but 5.15.3 is OK 3305 3306/\x{004b}+/i,utf 3307 \x{004b}\x{006b}\x{212a} 3308 0: Kk\x{212a} 3309 3310/\x{006b}+/i,utf 3311 \x{004b}\x{006b}\x{212a} 3312 0: Kk\x{212a} 3313 3314/\x{212a}+/i,utf 3315 \x{004b}\x{006b}\x{212a} 3316 0: Kk\x{212a} 3317 3318 3319/\x{0053}+/i,utf 3320 \x{0053}\x{0073}\x{017f} 3321 0: Ss\x{17f} 3322 3323/\x{0073}+/i,utf 3324 \x{0053}\x{0073}\x{017f} 3325 0: Ss\x{17f} 3326 3327/\x{017f}+/i,utf 3328 \x{0053}\x{0073}\x{017f} 3329 0: Ss\x{17f} 3330 3331/^\p{Any}*\d{4}/utf 3332 1234 3333 0: 1234 3334\= Expect no match 3335 123 3336No match 3337 3338/^\X*\w{4}/utf 3339 1234 3340 0: 1234 3341\= Expect no match 3342 123 3343No match 3344 3345/^A\s+Z/utf,ucp 3346 A\x{2005}Z 3347 0: A\x{2005}Z 3348 A\x{85}\x{2005}Z 3349 0: A\x{85}\x{2005}Z 3350 3351/^A[\s]+Z/utf,ucp 3352 A\x{2005}Z 3353 0: A\x{2005}Z 3354 A\x{85}\x{2005}Z 3355 0: A\x{85}\x{2005}Z 3356 3357/^[[:graph:]]+$/utf,ucp 3358 Letter:ABC 3359 0: Letter:ABC 3360 Mark:\x{300}\x{1d172}\x{1d17b} 3361 0: Mark:\x{300}\x{1d172}\x{1d17b} 3362 Number:9\x{660} 3363 0: Number:9\x{660} 3364 Punctuation:\x{66a},; 3365 0: Punctuation:\x{66a},; 3366 Symbol:\x{6de}<>\x{fffc} 3367 0: Symbol:\x{6de}<>\x{fffc} 3368 Cf-property:\x{ad}\x{600}\x{601}\x{602}\x{603}\x{604}\x{6dd}\x{70f} 3369 0: Cf-property:\x{ad}\x{600}\x{601}\x{602}\x{603}\x{604}\x{6dd}\x{70f} 3370 \x{200b}\x{200c}\x{200d}\x{200e}\x{200f} 3371 0: \x{200b}\x{200c}\x{200d}\x{200e}\x{200f} 3372 \x{202a}\x{202b}\x{202c}\x{202d}\x{202e} 3373 0: \x{202a}\x{202b}\x{202c}\x{202d}\x{202e} 3374 \x{2060}\x{2061}\x{2062}\x{2063}\x{2064} 3375 0: \x{2060}\x{2061}\x{2062}\x{2063}\x{2064} 3376 \x{206a}\x{206b}\x{206c}\x{206d}\x{206e}\x{206f} 3377 0: \x{206a}\x{206b}\x{206c}\x{206d}\x{206e}\x{206f} 3378 \x{feff} 3379 0: \x{feff} 3380 \x{fff9}\x{fffa}\x{fffb} 3381 0: \x{fff9}\x{fffa}\x{fffb} 3382 \x{110bd} 3383 0: \x{110bd} 3384 \x{1d173}\x{1d174}\x{1d175}\x{1d176}\x{1d177}\x{1d178}\x{1d179}\x{1d17a} 3385 0: \x{1d173}\x{1d174}\x{1d175}\x{1d176}\x{1d177}\x{1d178}\x{1d179}\x{1d17a} 3386 \x{e0001} 3387 0: \x{e0001} 3388 \x{e0020}\x{e0030}\x{e0040}\x{e0050}\x{e0060}\x{e0070}\x{e007f} 3389 0: \x{e0020}\x{e0030}\x{e0040}\x{e0050}\x{e0060}\x{e0070}\x{e007f} 3390\= Expect no match 3391 \x{09} 3392No match 3393 \x{0a} 3394No match 3395 \x{1D} 3396No match 3397 \x{20} 3398No match 3399 \x{85} 3400No match 3401 \x{a0} 3402No match 3403 \x{1680} 3404No match 3405 \x{2028} 3406No match 3407 \x{2029} 3408No match 3409 \x{202f} 3410No match 3411 \x{2065} 3412No match 3413 \x{3000} 3414No match 3415 \x{e0002} 3416No match 3417 \x{e001f} 3418No match 3419 \x{e0080} 3420No match 3421 3422/^[[:print:]]+$/utf,ucp 3423 Space: \x{a0} 3424 0: Space: \x{a0} 3425 \x{1680}\x{2000}\x{2001}\x{2002}\x{2003}\x{2004}\x{2005} 3426 0: \x{1680}\x{2000}\x{2001}\x{2002}\x{2003}\x{2004}\x{2005} 3427 \x{2006}\x{2007}\x{2008}\x{2009}\x{200a} 3428 0: \x{2006}\x{2007}\x{2008}\x{2009}\x{200a} 3429 \x{202f}\x{205f} 3430 0: \x{202f}\x{205f} 3431 \x{3000} 3432 0: \x{3000} 3433 Letter:ABC 3434 0: Letter:ABC 3435 Mark:\x{300}\x{1d172}\x{1d17b} 3436 0: Mark:\x{300}\x{1d172}\x{1d17b} 3437 Number:9\x{660} 3438 0: Number:9\x{660} 3439 Punctuation:\x{66a},; 3440 0: Punctuation:\x{66a},; 3441 Symbol:\x{6de}<>\x{fffc} 3442 0: Symbol:\x{6de}<>\x{fffc} 3443 Cf-property:\x{ad}\x{600}\x{601}\x{602}\x{603}\x{604}\x{6dd}\x{70f} 3444 0: Cf-property:\x{ad}\x{600}\x{601}\x{602}\x{603}\x{604}\x{6dd}\x{70f} 3445 \x{200b}\x{200c}\x{200d}\x{200e}\x{200f} 3446 0: \x{200b}\x{200c}\x{200d}\x{200e}\x{200f} 3447 \x{202a}\x{202b}\x{202c}\x{202d}\x{202e} 3448 0: \x{202a}\x{202b}\x{202c}\x{202d}\x{202e} 3449 \x{202f} 3450 0: \x{202f} 3451 \x{2060}\x{2061}\x{2062}\x{2063}\x{2064} 3452 0: \x{2060}\x{2061}\x{2062}\x{2063}\x{2064} 3453 \x{206a}\x{206b}\x{206c}\x{206d}\x{206e}\x{206f} 3454 0: \x{206a}\x{206b}\x{206c}\x{206d}\x{206e}\x{206f} 3455 \x{feff} 3456 0: \x{feff} 3457 \x{fff9}\x{fffa}\x{fffb} 3458 0: \x{fff9}\x{fffa}\x{fffb} 3459 \x{110bd} 3460 0: \x{110bd} 3461 \x{1d173}\x{1d174}\x{1d175}\x{1d176}\x{1d177}\x{1d178}\x{1d179}\x{1d17a} 3462 0: \x{1d173}\x{1d174}\x{1d175}\x{1d176}\x{1d177}\x{1d178}\x{1d179}\x{1d17a} 3463 \x{e0001} 3464 0: \x{e0001} 3465 \x{e0020}\x{e0030}\x{e0040}\x{e0050}\x{e0060}\x{e0070}\x{e007f} 3466 0: \x{e0020}\x{e0030}\x{e0040}\x{e0050}\x{e0060}\x{e0070}\x{e007f} 3467\= Expect no match 3468 \x{09} 3469No match 3470 \x{1D} 3471No match 3472 \x{85} 3473No match 3474 \x{2028} 3475No match 3476 \x{2029} 3477No match 3478 \x{2065} 3479No match 3480 \x{e0002} 3481No match 3482 \x{e001f} 3483No match 3484 \x{e0080} 3485No match 3486 3487/^[[:punct:]]+$/utf,ucp 3488 \$+<=>^`|~ 3489 0: $+<=>^`|~ 3490 !\"#%&'()*,-./:;?@[\\]_{} 3491 0: !"#%&'()*,-./:;?@[\]_{} 3492 \x{a1}\x{a7} 3493 0: \x{a1}\x{a7} 3494 \x{37e} 3495 0: \x{37e} 3496\= Expect no match 3497 abcde 3498No match 3499 3500/^[[:^graph:]]+$/utf,ucp 3501 \x{09}\x{0a}\x{1D}\x{20}\x{85}\x{a0}\x{1680} 3502 0: \x{09}\x{0a}\x{1d} \x{85}\x{a0}\x{1680} 3503 \x{2028}\x{2029}\x{202f}\x{2065} 3504 0: \x{2028}\x{2029}\x{202f}\x{2065} 3505 \x{3000}\x{e0002}\x{e001f}\x{e0080} 3506 0: \x{3000}\x{e0002}\x{e001f}\x{e0080} 3507\= Expect no match 3508 Letter:ABC 3509No match 3510 Mark:\x{300}\x{1d172}\x{1d17b} 3511No match 3512 Number:9\x{660} 3513No match 3514 Punctuation:\x{66a},; 3515No match 3516 Symbol:\x{6de}<>\x{fffc} 3517No match 3518 Cf-property:\x{ad}\x{600}\x{601}\x{602}\x{603}\x{604}\x{6dd}\x{70f} 3519No match 3520 \x{200b}\x{200c}\x{200d}\x{200e}\x{200f} 3521No match 3522 \x{202a}\x{202b}\x{202c}\x{202d}\x{202e} 3523No match 3524 \x{2060}\x{2061}\x{2062}\x{2063}\x{2064} 3525No match 3526 \x{206a}\x{206b}\x{206c}\x{206d}\x{206e}\x{206f} 3527No match 3528 \x{feff} 3529No match 3530 \x{fff9}\x{fffa}\x{fffb} 3531No match 3532 \x{110bd} 3533No match 3534 \x{1d173}\x{1d174}\x{1d175}\x{1d176}\x{1d177}\x{1d178}\x{1d179}\x{1d17a} 3535No match 3536 \x{e0001} 3537No match 3538 \x{e0020}\x{e0030}\x{e0040}\x{e0050}\x{e0060}\x{e0070}\x{e007f} 3539No match 3540 3541/^[[:^print:]]+$/utf,ucp 3542 \x{09}\x{1D}\x{85}\x{2028}\x{2029}\x{2065} 3543 0: \x{09}\x{1d}\x{85}\x{2028}\x{2029}\x{2065} 3544 \x{e0002}\x{e001f}\x{e0080} 3545 0: \x{e0002}\x{e001f}\x{e0080} 3546\= Expect no match 3547 Space: \x{a0} 3548No match 3549 \x{1680}\x{2000}\x{2001}\x{2002}\x{2003}\x{2004}\x{2005} 3550No match 3551 \x{2006}\x{2007}\x{2008}\x{2009}\x{200a} 3552No match 3553 \x{202f}\x{205f} 3554No match 3555 \x{3000} 3556No match 3557 Letter:ABC 3558No match 3559 Mark:\x{300}\x{1d172}\x{1d17b} 3560No match 3561 Number:9\x{660} 3562No match 3563 Punctuation:\x{66a},; 3564No match 3565 Symbol:\x{6de}<>\x{fffc} 3566No match 3567 Cf-property:\x{ad}\x{600}\x{601}\x{602}\x{603}\x{604}\x{6dd}\x{70f} 3568No match 3569 \x{200b}\x{200c}\x{200d}\x{200e}\x{200f} 3570No match 3571 \x{202a}\x{202b}\x{202c}\x{202d}\x{202e} 3572No match 3573 \x{202f} 3574No match 3575 \x{2060}\x{2061}\x{2062}\x{2063}\x{2064} 3576No match 3577 \x{206a}\x{206b}\x{206c}\x{206d}\x{206e}\x{206f} 3578No match 3579 \x{feff} 3580No match 3581 \x{fff9}\x{fffa}\x{fffb} 3582No match 3583 \x{110bd} 3584No match 3585 \x{1d173}\x{1d174}\x{1d175}\x{1d176}\x{1d177}\x{1d178}\x{1d179}\x{1d17a} 3586No match 3587 \x{e0001} 3588No match 3589 \x{e0020}\x{e0030}\x{e0040}\x{e0050}\x{e0060}\x{e0070}\x{e007f} 3590No match 3591 3592/^[[:^punct:]]+$/utf,ucp 3593 abcde 3594 0: abcde 3595\= Expect no match 3596 \$+<=>^`|~ 3597No match 3598 !\"#%&'()*,-./:;?@[\\]_{} 3599No match 3600 \x{a1}\x{a7} 3601No match 3602 \x{37e} 3603No match 3604 3605/[RST]+/i,utf,ucp 3606 Ss\x{17f} 3607 0: Ss\x{17f} 3608 3609/[R-T]+/i,utf,ucp 3610 Ss\x{17f} 3611 0: Ss\x{17f} 3612 3613/[q-u]+/i,utf,ucp 3614 Ss\x{17f} 3615 0: Ss\x{17f} 3616 3617/^s?c/im,utf 3618 scat 3619 0: sc 3620 3621# The next four tests are for repeated caseless back references when the 3622# code unit length of the matched text is different to that of the original 3623# group in the UTF-8 case. 3624 3625/^(\x{23a})\1*(.)/i,utf 3626 \x{23a}\x{23a}\x{23a}\x{23a} 3627 0: \x{23a}\x{23a}\x{23a}\x{23a} 3628 1: \x{23a} 3629 2: \x{23a} 3630 \x{23a}\x{2c65}\x{2c65}\x{2c65} 3631 0: \x{23a}\x{2c65}\x{2c65}\x{2c65} 3632 1: \x{23a} 3633 2: \x{2c65} 3634 \x{23a}\x{23a}\x{2c65}\x{23a} 3635 0: \x{23a}\x{23a}\x{2c65}\x{23a} 3636 1: \x{23a} 3637 2: \x{23a} 3638 3639/^(\x{23a})\1*(..)/i,utf 3640 \x{23a}\x{2c65}\x{2c65}\x{2c65} 3641 0: \x{23a}\x{2c65}\x{2c65}\x{2c65} 3642 1: \x{23a} 3643 2: \x{2c65}\x{2c65} 3644 \x{23a}\x{23a}\x{2c65}\x{23a} 3645 0: \x{23a}\x{23a}\x{2c65}\x{23a} 3646 1: \x{23a} 3647 2: \x{2c65}\x{23a} 3648 3649/^(\x{23a})\1*(...)/i,utf 3650 \x{23a}\x{2c65}\x{2c65}\x{2c65} 3651 0: \x{23a}\x{2c65}\x{2c65}\x{2c65} 3652 1: \x{23a} 3653 2: \x{2c65}\x{2c65}\x{2c65} 3654 \x{23a}\x{23a}\x{2c65}\x{23a} 3655 0: \x{23a}\x{23a}\x{2c65}\x{23a} 3656 1: \x{23a} 3657 2: \x{23a}\x{2c65}\x{23a} 3658 3659/^(\x{23a})\1*(....)/i,utf 3660\= Expect no match 3661 \x{23a}\x{2c65}\x{2c65}\x{2c65} 3662No match 3663 \x{23a}\x{23a}\x{2c65}\x{23a} 3664No match 3665 3666/[A-`]/i,utf 3667 abcdefghijklmno 3668 0: a 3669 3670/[\S\V\H]/utf 3671 3672/[^\p{Any}]*+x/utf 3673 x 3674 0: x 3675 3676/[[:punct:]]/utf,ucp 3677 \x{b4} 3678No match 3679 3680/[[:^ascii:]]/utf,ucp 3681 \x{100} 3682 0: \x{100} 3683 \x{200} 3684 0: \x{200} 3685 \x{300} 3686 0: \x{300} 3687 \x{37e} 3688 0: \x{37e} 3689\= Expect no match 3690 aa 3691No match 3692 99 3693No match 3694 3695/[[:^ascii:]\w]/utf,ucp 3696 aa 3697 0: a 3698 99 3699 0: 9 3700 gg 3701 0: g 3702 \x{100} 3703 0: \x{100} 3704 \x{200} 3705 0: \x{200} 3706 \x{300} 3707 0: \x{300} 3708 \x{37e} 3709 0: \x{37e} 3710 3711/[\w[:^ascii:]]/utf,ucp 3712 aa 3713 0: a 3714 99 3715 0: 9 3716 gg 3717 0: g 3718 \x{100} 3719 0: \x{100} 3720 \x{200} 3721 0: \x{200} 3722 \x{300} 3723 0: \x{300} 3724 \x{37e} 3725 0: \x{37e} 3726 3727/[^[:ascii:]\W]/utf,ucp 3728 \x{100} 3729 0: \x{100} 3730 \x{200} 3731 0: \x{200} 3732\= Expect no match 3733 aa 3734No match 3735 99 3736No match 3737 gg 3738No match 3739 \x{37e} 3740No match 3741 3742/[^[:^ascii:]\d]/utf,ucp 3743 a 3744 0: a 3745 ~ 3746 0: ~ 3747 \a 3748 0: \x{07} 3749 \x{7f} 3750 0: \x{7f} 3751\= Expect no match 3752 0 3753No match 3754 \x{389} 3755No match 3756 \x{20ac} 3757No match 3758 3759/(?=.*b)\pL/ 3760 11bb 3761 0: b 3762 3763/(?(?=.*b)(?=.*b)\pL|.*c)/ 3764 11bb 3765 0: b 3766 3767/^\x{123}+?$/utf,no_auto_possess 3768 \x{123}\x{123}\x{123} 3769 0: \x{123}\x{123}\x{123} 3770 3771/^\x{123}+?$/i,utf,no_auto_possess 3772 \x{123}\x{122}\x{123} 3773 0: \x{123}\x{122}\x{123} 3774\= Expect no match 3775 \x{123}\x{124}\x{123} 3776No match 3777 3778/\N{U+1234}/utf 3779 \x{1234} 3780 0: \x{1234} 3781 3782/[\N{U+1234}]/utf 3783 \x{1234} 3784 0: \x{1234} 3785 3786# Test the full list of Unicode "Pattern White Space" characters that are to 3787# be ignored by /x. The pattern lines below may show up oddly in text editors 3788# or when listed to the screen. Note that characters such as U+2002, which are 3789# matched as space by \h and \v are *not* "Pattern White Space". 3790 3791/A B/x,utf 3792 AB 3793 0: AB 3794 3795/A B/x,utf 3796 A\x{2002}B 3797 0: A\x{2002}B 3798\= Expect no match 3799 AB 3800No match 3801 3802# ------- 3803 3804/[^\x{100}-\x{ffff}]*[\x80-\xff]/utf 3805 \x{99}\x{99}\x{99} 3806 0: \x{99}\x{99}\x{99} 3807 3808/[^\x{100}-\x{ffff}ABC]*[\x80-\xff]/utf 3809 \x{99}\x{99}\x{99} 3810 0: \x{99}\x{99}\x{99} 3811 3812/[^\x{100}-\x{ffff}]*[\x80-\xff]/i,utf 3813 \x{99}\x{99}\x{99} 3814 0: \x{99}\x{99}\x{99} 3815 3816# Script run tests 3817 3818/^(*script_run:.{4})/utf 3819 abcd Latin x4 3820 0: abcd 3821 \x{2e80}\x{2fa1d}\x{3041}\x{30a1} Han Han Hiragana Katakana 3822 0: \x{2e80}\x{2fa1d}\x{3041}\x{30a1} 3823 \x{3041}\x{30a1}\x{3007}\x{3007} Hiragana Katakana Han Han 3824 0: \x{3041}\x{30a1}\x{3007}\x{3007} 3825 \x{30a1}\x{3041}\x{3007}\x{3007} Katakana Hiragana Han Han 3826 0: \x{30a1}\x{3041}\x{3007}\x{3007} 3827 \x{1100}\x{2e80}\x{2e80}\x{1101} Hangul Han Han Hangul 3828 0: \x{1100}\x{2e80}\x{2e80}\x{1101} 3829 \x{2e80}\x{3105}\x{2e80}\x{3105} Han Bopomofo Han Bopomofo 3830 0: \x{2e80}\x{3105}\x{2e80}\x{3105} 3831 \x{02ea}\x{2e80}\x{2e80}\x{3105} Bopomofo-Sk Han Han Bopomofo 3832 0: \x{2ea}\x{2e80}\x{2e80}\x{3105} 3833 \x{3105}\x{2e80}\x{2e80}\x{3105} Bopomofo Han Han Bopomofo 3834 0: \x{3105}\x{2e80}\x{2e80}\x{3105} 3835 \x{0300}cd! Inherited Latin Latin Common 3836 0: \x{300}cd! 3837 \x{0391}12\x{03a9} Greek Common-digits Greek 3838 0: \x{391}12\x{3a9} 3839 \x{0400}12\x{fe2f} Cyrillic Common-digits Cyrillic 3840 0: \x{400}12\x{fe2f} 3841 \x{0531}12\x{fb17} Armenian Common-digits Armenian 3842 0: \x{531}12\x{fb17} 3843 \x{0591}12\x{fb4f} Hebrew Common-digits Hebrew 3844 0: \x{591}12\x{fb4f} 3845 \x{0600}12\x{1eef1} Arabic Common-digits Arabic 3846 0: \x{600}12\x{1eef1} 3847 \x{0600}\x{0660}\x{0669}\x{1eef1} Arabic Arabic-digits Arabic 3848 0: \x{600}\x{660}\x{669}\x{1eef1} 3849 \x{0700}12\x{086a} Syriac Common-digits Syriac 3850 0: \x{700}12\x{86a} 3851 \x{1200}12\x{ab2e} Ethiopic Common-digits Ethiopic 3852 0: \x{1200}12\x{ab2e} 3853 \x{1680}12\x{169c} Ogham Common-digits Ogham 3854 0: \x{1680}12\x{169c} 3855 \x{3041}12\x{3041} Hiragana Common-digits Hiragana 3856 0: \x{3041}12\x{3041} 3857 \x{0980}\x{09e6}\x{09e7}\x{0993} Bengali Bengali-digits Bengali 3858 0: \x{980}\x{9e6}\x{9e7}\x{993} 3859 !cde Common Latin Latin Latin 3860 0: !cde 3861 A..B Latin Common Common Latin 3862 0: A..B 3863 0abc Ascii-digit Latin Latin Latin 3864 0: 0abc 3865 1\x{0700}\x{0700}\x{0700} Ascii-digit Syriac x 3 3866 0: 1\x{700}\x{700}\x{700} 3867 \x{1A80}\x{1A80}\x{1a40}\x{1a41} Tai Tham Hora digits, letters 3868 0: \x{1a80}\x{1a80}\x{1a40}\x{1a41} 3869\= Expect no match 3870 a\x{370}bcd Latin Greek Latin Latin 3871No match 3872 \x{1100}\x{02ea}\x{02ea}\x{02ea} Hangul Bopomofo x3 3873No match 3874 \x{02ea}\x{02ea}\x{02ea}\x{1100} Bopomofo x3 Hangul 3875No match 3876 \x{1100}\x{2e80}\x{3041}\x{1101} Hangul Han Hiragana Hangul 3877No match 3878 \x{0391}\x{09e6}\x{09e7}\x{03a9} Greek Bengali digits Greek 3879No match 3880 \x{0600}7\x{0669}\x{1eef1} Arabic ascii-digit Arabic-digit Arabic 3881No match 3882 \x{0600}\x{0669}7\x{1eef1} Arabic Arabic-digit ascii-digit Arabic 3883No match 3884 A5\x{ff19}B Latin Common-ascii/notascii-digits Latin 3885No match 3886 \x{0300}cd\x{0391} Inherited Latin Latin Greek 3887No match 3888 !cd\x{0391} Common Latin Latin Greek 3889No match 3890 \x{1A80}\x{1A90}\x{1a40}\x{1a41} Tai Tham Hora digit, Tham digit, letters 3891No match 3892 A\x{1d7ce}\x{1d7ff}B Common fancy-common-2-sets-digits Common 3893No match 3894 \x{2e80}\x{3105}\x{2e80}\x{30a1} Han Bopomofo Han Katakana 3895No match 3896 3897/^(*sr:.{4}|..)/utf 3898 \x{2e80}\x{3105}\x{2e80}\x{30a1} Han Bopomofo Han Katakana 3899 0: \x{2e80}\x{3105} 3900 3901/^(*atomic_script_run:.{4}|..)/utf 3902\= Expect no match 3903 \x{2e80}\x{3105}\x{2e80}\x{30a1} Han Bopomofo Han Katakana 3904No match 3905 3906/^(*asr:.*)/utf 3907\= Expect no match 3908 \x{2e80}\x{3105}\x{2e80}\x{30a1} Han Bopomofo Han Katakana 3909No match 3910 3911/^(?>(*sr:.*))/utf 3912 \x{2e80}\x{3105}\x{2e80}\x{30a1} Han Bopomofo Han Katakana 3913 0: \x{2e80}\x{3105}\x{2e80} 3914 3915/^(*sr:.*)/utf 3916 \x{2e80}\x{3105}\x{2e80}\x{30a1} Han Bopomofo Han Katakana 3917 0: \x{2e80}\x{3105}\x{2e80} 3918 \x{10fffd}\x{10fffd}\x{10fffd} Private use (Unknown) 3919 0: \x{10fffd} 3920 3921/^(*sr:\x{2e80}*)/utf 3922 \x{2e80}\x{2e80}\x{3105} Han Han Bopomofo 3923 0: \x{2e80}\x{2e80} 3924 3925/^(*sr:\x{2e80}*)\x{2e80}/utf 3926 \x{2e80}\x{2e80}\x{3105} Han Han Bopomofo 3927 0: \x{2e80}\x{2e80} 3928 3929/^(*sr:.*)Test/utf 3930 Test script run on an empty string 3931 0: Test 3932 3933/^(*sr:(.{2})){2}/utf 3934 \x{0600}7\x{0669}\x{1eef1} Arabic ascii-digit Arabic-digit Arabic 3935 0: \x{600}7\x{669}\x{1eef1} 3936 1: \x{669}\x{1eef1} 3937 \x{1A80}\x{1A80}\x{1a40}\x{1a41} Tai Tham Hora digits, letters 3938 0: \x{1a80}\x{1a80}\x{1a40}\x{1a41} 3939 1: \x{1a40}\x{1a41} 3940 \x{1A80}\x{1a40}\x{1A90}\x{1a41} Tai Tham Hora digit, letter, Tham digit, letter 3941 0: \x{1a80}\x{1a40}\x{1a90}\x{1a41} 3942 1: \x{1a90}\x{1a41} 3943\= Expect no match 3944 \x{1100}\x{2e80}\x{3041}\x{1101} Hangul Han Hiragana Hangul 3945No match 3946 3947/^(*sr:\S*)/utf 3948 \x{1cf4}\x{20f0}\x{900}\x{11305} [Dev,Gran,Kan] [Dev,Gran,Lat] Dev Gran 3949 0: \x{1cf4}\x{20f0}\x{900} 3950 \x{1cf4}\x{20f0}\x{11305}\x{900} [Dev,Gran,Kan] [Dev,Gran,Lat] Gran Dev 3951 0: \x{1cf4}\x{20f0}\x{11305} 3952 \x{1cf4}\x{20f0}\x{900}ABC [Dev,Gran,Kan] [Dev,Gran,Lat] Dev Lat 3953 0: \x{1cf4}\x{20f0}\x{900} 3954 \x{1cf4}\x{20f0}ABC [Dev,Gran,Kan] [Dev,Gran,Lat] Lat 3955 0: \x{1cf4}\x{20f0} 3956 \x{20f0}ABC [Dev,Gran,Lat] Lat 3957 0: \x{20f0}ABC 3958 XYZ\x{20f0}ABC Lat [Dev,Gran,Lat] Lat 3959 0: XYZ\x{20f0}ABC 3960 \x{a36}\x{a33}\x{900} [Dev,...] [Dev,...] Dev 3961 0: \x{a36}\x{a33} 3962 \x{3001}\x{2e80}\x{3041}\x{30a1} [Bopo, Han, etc] Han Hira Kata 3963 0: \x{3001}\x{2e80}\x{3041}\x{30a1} 3964 \x{3001}\x{30a1}\x{2e80}\x{3041} [Bopo, Han, etc] Kata Han Hira 3965 0: \x{3001}\x{30a1}\x{2e80}\x{3041} 3966 \x{3001}\x{3105}\x{2e80}\x{1101} [Bopo, Han, etc] Bopomofo Han Hangul 3967 0: \x{3001}\x{3105}\x{2e80} 3968 \x{3105}\x{3001}\x{2e80}\x{1101} Bopomofo [Bopo, Han, etc] Han Hangul 3969 0: \x{3105}\x{3001}\x{2e80} 3970 \x{3031}\x{3041}\x{30a1}\x{2e80} [Hira Kata] Hira Kata Han 3971 0: \x{3031}\x{3041}\x{30a1}\x{2e80} 3972 \x{060c}\x{06d4}\x{0600}\x{10d00}\x{0700} [Arab Rohg Syrc Thaa] [Arab Rohg] Arab Rohg Syrc 3973 0: \x{60c}\x{6d4}\x{600} 3974 \x{060c}\x{06d4}\x{0700}\x{0600}\x{10d00} [Arab Rohg Syrc Thaa] [Arab Rohg] Syrc Arab Rohg 3975 0: \x{60c}\x{6d4} 3976 \x{2e80}\x{3041}\x{3001}\x{3031}\x{2e80} Han Hira [Bopo, Han, etc] [Hira Kata] Han 3977 0: \x{2e80}\x{3041}\x{3001}\x{3031}\x{2e80} 3978 3979/(?<!)(*sr:)/ 3980 3981/(?<!X(*sr:B)C)/ 3982 3983/(?<=abc(?=X(*sr:BCY)Z)XBCYZ)./ 3984 abcXBCYZ! 3985 0: ! 3986 3987/(?<=abc(?=X(*sr:BXY)CCC)XBXYCCC)./ 3988 abcXBXYCCC! 3989 0: ! 3990 3991/^(*sr:\S*)/utf 3992 \x{10d00}\x{10d00}\x{06d4} Rohingya Rohingya Arabic-full-stop 3993 0: \x{10d00}\x{10d00}\x{6d4} 3994 \x{06d4}\x{10d00}\x{10d00} Arabic-full-stop Rohingya Rohingya 3995 0: \x{6d4}\x{10d00}\x{10d00} 3996 \x{10d00}\x{10d00}\x{0363} Rohingya Rohingya Inherited-extend-Latin 3997 0: \x{10d00}\x{10d00} 3998 \x{0363}\x{10d00}\x{10d00} Inherited-extend-Latin Rohingya Rohingya 3999 0: \x{363} 4000 AB\x{0363} Latin Latin Inherited-extend-Latin 4001 0: AB\x{363} 4002 \x{0363}AB Inherited-extend-Latin Latin Latin 4003 0: \x{363}AB 4004 AB\x{1cf7} Latin Latin Common-extended-Beng 4005 0: AB 4006 \x{1cf7}AB Common-extend-Beng Latin Latin 4007 0: \x{1cf7} 4008 \x{1cf7}\x{0993} Common-extend-Beng Bengali 4009 0: \x{1cf7}\x{993} 4010 A\x{1abe}BC Test enclosing mark 4011 0: A\x{1abe}BC 4012 \x{0370}\x{1abe}\x{0371} Which can occur with any script (Greek here) 4013 0: \x{370}\x{1abe}\x{371} 4014 \x{3001}\x{adf9}\x{3001} [.. Hangul ..] Hangul [.. Hangul ..] 4015 0: \x{3001}\x{adf9}\x{3001} 4016 \x{3400}\x{3001}XXX Han [Han etc.] 4017 0: \x{3400}\x{3001} 4018 \x{3400}\x{1cd5} Han [Bengali Devanagari] 4019 0: \x{3400} 4020 \x{ac01}\x{3400} Hangul [.. Hangul ..] 4021 0: \x{ac01}\x{3400} 4022 \x{ac01}\x{1cd5} Hangul [Bengali Devanagari] 4023 0: \x{ac01} 4024 \x{102e0}\x{06d4}\x{1ee4d} [Arabic Coptic] [Arab Rohingya] Arabic 4025 0: \x{102e0}\x{6d4}\x{1ee4d} 4026 \x{102e0}\x{06d4}\x{2cc9} [Arabic Coptic] [Arab Rohingya] Coptic 4027 0: \x{102e0}\x{6d4} 4028 \x{102e0}\x{06d4}\x{10d30} [Arabic Coptic] [Arab Rohingya] Rohingya 4029 0: \x{102e0}\x{6d4} 4030 4031# Test loop breaking for empty string match 4032 4033/^(*sr:A|)*BCD/utf 4034 AABCD 4035 0: AABCD 4036 ABCD 4037 0: ABCD 4038 BCD 4039 0: BCD 4040 4041# The use of (*ACCEPT) breaks script run checking 4042 4043/^(*sr:.*(*ACCEPT)ZZ)/utf 4044 \x{1100}\x{2e80}\x{3041}\x{1101} Hangul Han Hiragana Hangul 4045 0: \x{1100}\x{2e80}\x{3041}\x{1101} Hangul Han Hiragana Hangul 4046 4047# ------- 4048 4049# Test group names containing non-ASCII letters and digits 4050 4051/(?'ABáC'...)\g{ABáC}/utf 4052 abcabcdefg 4053 0: abcabc 4054 1: abc 4055 4056/(?'XʰABC'...)/utf 4057 xyzpq 4058 0: xyz 4059 1: xyz 4060 4061/(?'XאABC'...)/utf 4062 12345 4063 0: 123 4064 1: 123 4065 4066/(?'XᾈABC'...)/utf 4067 %^&*(... 4068 0: %^& 4069 1: %^& 4070 4071/(?'ABC'...)/utf 4072 abcde 4073 0: abc 4074 1: abc 4075 4076/^(?'אABC'...)(?&אABC)(?P=אABC)/utf 4077 123123123456 4078 0: 123123123 4079 1: 123 4080 4081/^(?'אABC'...)(?&אABC)/utf 4082 123123123456 4083 0: 123123 4084 1: 123 4085 4086/\X*/ 4087 \xF3aaa\xE4\xEA\xEB\xFEa 4088 0: \xf3aaa\xe4\xea\xeb\xfea 4089 4090/Я/i,utf 4091 \x{42f} 4092 0: \x{42f} 4093 \x{44f} 4094 0: \x{44f} 4095 4096/(?=Я)/i,utf 4097 \x{42f} 4098 0: 4099 \x{44f} 4100 0: 4101 4102# ----------------------------------------------------------------------------- 4103# Tests for bidi control and bidi class properties. 4104 4105/\p{ bidi_control }/utf 4106 -->\x{202c}<-- 4107 0: \x{202c} 4108 4109/\p{bidicontrol}+/utf 4110 -->\x{061c}\x{200e}\x{200f}\x{202a}\x{202b}\x{202c}\x{202d}<-- 4111 0: \x{61c}\x{200e}\x{200f}\x{202a}\x{202b}\x{202c}\x{202d} 4112 -->\x{2066}\x{2067}\x{2068}\x{2069}<-- 4113 0: \x{2066}\x{2067}\x{2068}\x{2069} 4114 4115/\p{bidic}+?/utf 4116 -->\x{061c}\x{200e}\x{200f}\x{202a}\x{202b}\x{202c}\x{202d}<-- 4117 0: \x{61c} 4118 -->\x{2066}\x{2067}\x{2068}\x{2069}<-- 4119 0: \x{2066} 4120 4121/\p{bidi_control}++/utf 4122 -->\x{061c}\x{200e}\x{200f}\x{202a}\x{202b}\x{202c}\x{202d}<-- 4123 0: \x{61c}\x{200e}\x{200f}\x{202a}\x{202b}\x{202c}\x{202d} 4124 -->\x{2066}\x{2067}\x{2068}\x{2069}<-- 4125 0: \x{2066}\x{2067}\x{2068}\x{2069} 4126 4127/[\p{bidi_c}]/utf 4128 -->\x{202c}<-- 4129 0: \x{202c} 4130 4131/[\p{bidicontrol}]+/utf 4132 -->\x{061c}\x{200e}\x{200f}\x{202a}\x{202b}\x{202c}\x{202d}<-- 4133 0: \x{61c}\x{200e}\x{200f}\x{202a}\x{202b}\x{202c}\x{202d} 4134 -->\x{2066}\x{2067}\x{2068}\x{2069}<-- 4135 0: \x{2066}\x{2067}\x{2068}\x{2069} 4136 4137/[\p{bidicontrol}]+?/utf 4138 -->\x{061c}\x{200e}\x{200f}\x{202a}\x{202b}\x{202c}\x{202d}<-- 4139 0: \x{61c} 4140 -->\x{2066}\x{2067}\x{2068}\x{2069}<-- 4141 0: \x{2066} 4142 4143/[\p{bidicontrol}]++/utf 4144 -->\x{061c}\x{200e}\x{200f}\x{202a}\x{202b}\x{202c}\x{202d}<-- 4145 0: \x{61c}\x{200e}\x{200f}\x{202a}\x{202b}\x{202c}\x{202d} 4146 -->\x{2066}\x{2067}\x{2068}\x{2069}<-- 4147 0: \x{2066}\x{2067}\x{2068}\x{2069} 4148 4149/[\p{bidicontrol}<>]+/utf 4150 -->\x{061c}\x{200e}\x{200f}\x{202a}\x{202b}\x{202c}\x{202d}<-- 4151 0: >\x{61c}\x{200e}\x{200f}\x{202a}\x{202b}\x{202c}\x{202d}< 4152 -->\x{2066}\x{2067}\x{2068}\x{2069}<-- 4153 0: >\x{2066}\x{2067}\x{2068}\x{2069}< 4154 4155/\P{bidicontrol}+/g,utf 4156 -->\x{061c}\x{200e}\x{200f}\x{202a}\x{202b}\x{202c}\x{202d}<-- 4157 0: --> 4158 0: <-- 4159 -->\x{2066}\x{2067}\x{2068}\x{2069}<-- 4160 0: --> 4161 0: <-- 4162 4163/\p{^bidicontrol}+/g,utf 4164 -->\x{061c}\x{200e}\x{200f}\x{202a}\x{202b}\x{202c}\x{202d}<-- 4165 0: --> 4166 0: <-- 4167 -->\x{2066}\x{2067}\x{2068}\x{2069}<-- 4168 0: --> 4169 0: <-- 4170 4171/\p{bidi class = al}/utf 4172 -->\x{061D}<-- 4173 0: \x{61d} 4174 4175/\p{bc = al}+/utf 4176 -->\x{061D}\x{061e}\x{061f}<-- 4177 0: \x{61d}\x{61e}\x{61f} 4178 4179/\p{bidi_class : AL}+?/utf 4180 -->\x{061D}\x{061e}\x{061f}<-- 4181 0: \x{61d} 4182 4183/\p{Bidi_Class : AL}++/utf 4184 -->\x{061D}\x{061e}\x{061f}<-- 4185 0: \x{61d}\x{61e}\x{61f} 4186 4187/\p{b_c = aN}+/utf 4188 -->\x{061D}\x{0602}\x{0604}\x{061f}<-- 4189 0: \x{602}\x{604} 4190 4191/\p{bidi class = B}+/utf 4192 -->\x{0a}\x{0d}\x{01c}\x{01e}\x{085}\x{2029}<-- 4193 0: \x{0a}\x{0d}\x{1c}\x{1e}\x{85}\x{2029} 4194 4195/\p{bidi class:BN}+/utf 4196 -->\x{0}\x{08}\x{200c}\x{fffe}\x{dfffe}\x{10ffff}<-- 4197 0: \x{00}\x{08}\x{200c}\x{fffe}\x{dfffe}\x{10ffff} 4198 4199/\p{bidiclass:cs}+/utf 4200 -->,.\x{060c}\x{ff1a}<-- 4201 0: ,.\x{60c}\x{ff1a} 4202 4203/\p{bidiclass:En}+/utf 4204 -->09\x{b2}\x{2074}\x{1fbf9}<-- 4205 0: 09\x{b2}\x{2074}\x{1fbf9} 4206 4207/\p{bidiclass:es}+/utf 4208 ==>+-\x{207a}\x{ff0d}<== 4209 0: +-\x{207a}\x{ff0d} 4210 4211/\p{bidiclass:et}+/utf 4212 -->#\{24}%\x{a2}\x{A838}\x{1e2ff}<-- 4213 0: # 4214 4215/\p{bidiclass:FSI}+/utf 4216 -->\x{2068}<-- 4217 0: \x{2068} 4218 4219/\p{bidi class:L}+/utf 4220 -->ABC<-- 4221 0: ABC 4222 4223/\P{bidi class:L}+/utf 4224 -->ABC<-- 4225 0: --> 4226 4227/\p{bidi class:LRE}+\p{bidiclass=lri}*\p{bidiclass:lro}/utf 4228 -->\x{202a}\x{2066}\x{202d}<-- 4229 0: \x{202a}\x{2066}\x{202d} 4230 4231/\p{bidi class:NSM}+/utf 4232 -->\x{9bc}\x{a71}\x{e31}<-- 4233 0: \x{9bc}\x{a71}\x{e31} 4234 4235/\p{bidi class:ON}+/utf 4236 -->\x{21}'()*;@\x{384}\x{2039}<=- 4237 0: >!'()*;@\x{384}\x{2039}<= 4238 4239/\p{bidiclass:pdf}\p{bidiclass:pdi}/utf 4240 -->\x{202c}\x{2069}<-- 4241 0: \x{202c}\x{2069} 4242 4243/\p{bidi class:R}+/utf 4244 -->\x{590}\x{5c6}\x{200f}\x{10805}<-- 4245 0: \x{590}\x{5c6}\x{200f}\x{10805} 4246 4247/\p{bidi class:RLE}+\p{bidi class:RLI}*\p{bidi class:RLO}+/utf 4248 -->\x{202b}\x{2067}\x{202e}<-- 4249 0: \x{202b}\x{2067}\x{202e} 4250 4251/\p{bidi class:S}+\p{bidiclass:WS}+/utf 4252 -->\x{9}\x{b}\x{1f} \x{c} \x{2000} \x{3000}<-- 4253 0: \x{09}\x{0b}\x{1f} \x{0c} \x{2000} \x{3000} 4254 4255# ----------------------------------------------------------------------------- 4256 4257/[\p{taml}\p{sc:ugar}]+/utf 4258 \x{0b82}\x{10380} 4259 0: \x{b82}\x{10380} 4260 4261/^[\p{sc:Arabic}]/utf 4262\= Expect no match 4263 \x{650} 4264No match 4265 \x{651} 4266No match 4267 \x{652} 4268No match 4269 \x{653} 4270No match 4271 \x{654} 4272No match 4273 \x{655} 4274No match 4275 4276# ----------------------------------------------------------------------------- 4277# Tests for newly-added Boolean Properties 4278 4279/\p{ahex}\p{asciihexdigit}/utf 4280 >4F< 4281 0: 4F 4282 4283/\p{alpha}\p{alphabetic}/g,utf 4284 >AB<>\x{148}\x{1234} 4285 0: AB 4286 0: \x{148}\x{1234} 4287 4288/\p{ascii}\p{ascii}/g,utf 4289 >AB<>\x{148}\x{1234} 4290 0: >A 4291 0: B< 4292 4293/\p{Bidi_C}\p{bidicontrol}/g,utf 4294 >\x{202d}\x{2069}< 4295 0: \x{202d}\x{2069} 4296 4297/\p{Bidi_M}\p{bidimirrored}/g,utf 4298 >\x{202d}\x{2069}<>\x{298b}\x{bb}< 4299 0: <> 4300 0: \x{298b}\x{bb} 4301 4302/\p{cased}\p{cased}/g,utf 4303 >AN<>\x{149}\x{120}< 4304 0: AN 4305 0: \x{149}\x{120} 4306 4307/\p{caseignorable}\p{ci}/g,utf 4308 >AN<>\x{60}\x{859}< 4309 0: `\x{859} 4310 4311/\p{changeswhencasefolded}\p{cwcf}/g,utf 4312 >AN<>\x{149}\x{120}< 4313 0: AN 4314 0: \x{149}\x{120} 4315 4316/\p{changeswhencasemapped}\p{cwcm}/g,utf 4317 >AN<>\x{149}\x{120}< 4318 0: AN 4319 0: \x{149}\x{120} 4320 4321/\p{changeswhenlowercased}\p{cwl}/g,utf 4322 >AN<>\x{149}\x{120}<>yz< 4323 0: AN 4324 4325/\p{changeswhenuppercased}\p{cwu}/g,utf 4326 >AN<>\x{149}\x{120}<>yz< 4327 0: yz 4328 4329/\p{changeswhentitlecased}\p{cwt}/g,utf 4330 >AN<>\x{149}\x{120}<>yz< 4331 0: yz 4332 4333/\p{dash}\p{dash}/g,utf 4334 >\x{2d}\x{1400}<>yz< 4335 0: -\x{1400} 4336 4337/\p{defaultignorablecodepoint}\p{di}/g,utf 4338 >AN<>\x{ad}\x{e0fff}<>yz< 4339 0: \x{ad}\x{e0fff} 4340 4341/\p{deprecated}\p{dep}/g,utf 4342 >AN<>\x{149}\x{e0001}<>yz< 4343 0: \x{149}\x{e0001} 4344 4345/\p{diacritic}\p{dia}/g,utf 4346 >AN<>\x{f84}\x{5e}<>yz< 4347 0: \x{f84}^ 4348 4349/\p{emojicomponent}\p{ecomp}/g,utf 4350 >AN<>\x{200d}\x{e007f}<>yz< 4351 0: \x{200d}\x{e007f} 4352 4353/\p{emojimodifier}\p{emod}/g,utf 4354 >AN<>\x{1f3fb}\x{1f3ff}<>yz< 4355 0: \x{1f3fb}\x{1f3ff} 4356 4357/\p{emojipresentation}\p{epres}/g,utf 4358 >AN<>\x{2653}\x{1f6d2}<>yz< 4359 0: \x{2653}\x{1f6d2} 4360 4361/\p{extender}\p{ext}/g,utf 4362 >AN<>\x{1e944}\x{b7}<>yz< 4363 0: \x{1e944}\x{b7} 4364 4365/\p{extendedpictographic}\p{extpict}/g,utf 4366 >AN<>\x{26cf}\x{ae}<>yz< 4367 0: \x{26cf}\x{ae} 4368 4369/\p{graphemebase}\p{grbase}/g,utf 4370 >AN<>\x{10f}\x{60}<>yz< 4371 0: >A 4372 0: N< 4373 0: >\x{10f} 4374 0: `< 4375 0: >y 4376 0: z< 4377 4378/\p{graphemeextend}\p{grext}/g,utf 4379 >AN<>\x{300}\x{b44}<>yz< 4380 0: \x{300}\x{b44} 4381 4382/\p{hexdigit}\p{hex}/g,utf 4383 >AF23<>\x{ff46}\x{ff10}<>yz< 4384 0: AF 4385 0: 23 4386 0: \x{ff46}\x{ff10} 4387 4388/\p{idcontinue}\p{idc}/g,utf 4389 >AF23<>\x{146}\x{7a}<>yz< 4390 0: AF 4391 0: 23 4392 0: \x{146}z 4393 0: yz 4394 4395/\p{ideographic}\p{ideo}/g,utf 4396 >AF23<>\x{30000}\x{3006}<>yz< 4397 0: \x{30000}\x{3006} 4398 4399/\p{idstart}\p{ids}/g,utf 4400 >AF23<>\x{146}\x{7a}<>yz< 4401 0: AF 4402 0: \x{146}z 4403 0: yz 4404 4405/\p{idsbinaryoperator}\p{idsb}/g,utf 4406 >AF23<>\x{2ff0}\x{2ffb}<>yz<\x{2ff2}\x{2ff1} 4407 0: \x{2ff0}\x{2ffb} 4408 4409/\p{idstrinaryoperator}\p{idst}/g,utf 4410 >AF23<>\x{2ff2}\x{2ff3}<>yz< 4411 0: \x{2ff2}\x{2ff3} 4412 4413/\p{Join Control}\p{joinc}/g,utf 4414 >AF23<>\x{200c}\x{200d}<>yz< 4415 0: \x{200c}\x{200d} 4416 4417/\p{logical_order_exception}\p{loe}/g,utf 4418 >AF23<>\x{e40}\x{aabc}<>yz< 4419 0: \x{e40}\x{aabc} 4420 4421/\p{Lowercase}\p{lower}/g,utf 4422 >AF23<>\x{146}\x{7a}<>yz< 4423 0: \x{146}z 4424 0: yz 4425 4426/\p{math}\p{math}/g,utf 4427 >AF23<>\x{2215}\x{2b}<>yz< 4428 0: <> 4429 0: \x{2215}+ 4430 0: <> 4431 4432/\p{Non Character Code Point}\p{nchar}/g,utf 4433 >AF23<>\x{10ffff}\x{fdd0}<>yz< 4434 0: \x{10ffff}\x{fdd0} 4435 4436/\p{patternsyntax}\p{patsyn}/g,utf 4437 >AF23<>\x{21cd}\x{21}<>yz< 4438 0: <> 4439 0: \x{21cd}! 4440 0: <> 4441 4442/\p{patternwhitespace}\p{patws}/g,utf 4443 >AF23<>\x{2029}\x{85}<>yz< 4444 0: \x{2029}\x{85} 4445 4446/\p{prependedconcatenationmark}\p{pcm}/g,utf 4447 >AF23<>\x{600}\x{110cd}<>yz< 4448 0: \x{600}\x{110cd} 4449 4450/\p{quotationmark}\p{qmark}/g,utf 4451 >AF23<>\x{ff63}\x{22}<>yz< 4452 0: \x{ff63}" 4453 4454/\p{radical}\p{radical}/g,utf 4455 >AF23<>\x{2fd5}\x{2e80}<>yz< 4456 0: \x{2fd5}\x{2e80} 4457 4458/\p{regionalindicator}\p{ri}/g,utf 4459 >AF23<>\x{1f1e6}\x{1f1ff}<>yz< 4460 0: \x{1f1e6}\x{1f1ff} 4461 4462/=\p{whitespace}\p{space}\p{wspace}=/g,utf 4463 >AF23<=\x{d}\x{1680}\x{3000}=>yz< 4464 0: =\x{0d}\x{1680}\x{3000}= 4465 4466/\p{sentenceterminal}\p{sterm}/g,utf 4467 >AF23<>\x{1da88}\x{2e}<>yz< 4468 0: \x{1da88}. 4469 4470/\p{terminalpunctuation}\p{term}/g,utf 4471 >AF23<>\x{1da88}\x{2e}<>yz< 4472 0: \x{1da88}. 4473 4474/\p{unified ideograph}\p{uideo}/g,utf 4475 >AF23<>\x{30000}\x{3400}<>yz< 4476 0: \x{30000}\x{3400} 4477 4478/\p{UPPERcase}\p{upper}/g,utf 4479 >AF23<>\x{146}\x{7a}<>yz< 4480 0: AF 4481 4482/\p{variationselector}\p{vs}/g,utf 4483 >AF23<>\x{180b}\x{e01ef}<>yz< 4484 0: \x{180b}\x{e01ef} 4485 4486/\p{xidcontinue}\p{xidc}/g,utf 4487 >AF23<>\x{146}\x{30}<>yz< 4488 0: AF 4489 0: 23 4490 0: \x{146}0 4491 0: yz 4492 4493# ----------------------------------------------------------------------------- 4494# Variable-length lookbehinds. 4495 4496/(?<=áb?c).../g,utf 4497 ábcdèfgácxyz 4498 0: d\x{e8}f 4499 0: xyz 4500 4501/(?<=PQR|áb?c).../g,utf 4502 ábcdèfgácxyzPQR123 4503 0: d\x{e8}f 4504 0: xyz 4505 0: 123 4506 4507/(?<=áb?c|PQR).../g,utf 4508 ábcdèfgácxyzPQR123 4509 0: d\x{e8}f 4510 0: xyz 4511 0: 123 4512 4513/(?<=PQ|áb?c).../g,utf 4514 ábcdèfgácxyzPQR123 4515 0: d\x{e8}f 4516 0: xyz 4517 0: R12 4518 4519/(?<=áb?c|PQ).../g,utf 4520 ábcdèfgácxyzPQR123 4521 0: d\x{e8}f 4522 0: xyz 4523 0: R12 4524 4525/(?<=á(b?c|d?è?è)f)X./g,utf 4526 ácfX1zzzáèfX2zzzádèèfX3zzzX4zzz 4527 0: X1 4528 1: c 4529 0: X2 4530 1: \x{e8} 4531 0: X3 4532 1: d\x{e8}\x{e8} 4533 4534/(?<!á(b?c|d?è?è)f)X./g,utf 4535 ácfX1zzzáèfX2zzzádèèfX3zzzX4zzz 4536 0: X4 4537 4538/(?(?<=áb?c)d|è)/utf 4539 ábcdèfg 4540 0: d 4541 ácdèfg 4542 0: d 4543 áxdèfg 4544 0: \x{e8} 4545 4546/(?<=\d{2,3}|áBC)./utf 4547 áBCD 4548 0: D 4549 4550/(?<=á(b?c){3}d)X/utf 4551 ZXácbccdXYZ 4552 0: X 4553 1: c 4554 4555/(?<=á(b?c){0}d)X/utf 4556 ZXádXYZ 4557 0: X 4558 4559/(?<=á?(b?c){0}d)X./utf 4560 ZXádXYZ 4561 0: XY 4562 4563# -------------------------------------------------------------------------- 4564 4565/\N{ U+1234 }/utf 4566 \x{1234} 4567 0: \x{1234} 4568 4569/\o{ 1234 }/utf 4570 x\o{1234}y 4571 0: \x{29c} 4572 4573/\x{ 1234 }/utf 4574 x\x{1234}y 4575 0: \x{1234} 4576 4577/\p{ L }/ 4578 23AB56 4579 0: A 4580 4581/\w+/utf,ucp 4582 --cafe\x{300}_au\x{203f}lait! 4583 0: cafe\x{300}_au\x{203f}lait 4584 4585/[\w]+/utf,ucp 4586 --cafe\x{300}_au\x{203f}lait! 4587 0: cafe\x{300}_au\x{203f}lait 4588 4589/[[:word:]]+/utf,ucp 4590 --cafe\x{300}_au\x{203f}lait! 4591 0: cafe\x{300}_au\x{203f}lait 4592 4593/[[:xdigit:]]+/utf,ucp 4594 --123ef\x{ff10}\x{ff19}\x{ff21}\x{ff26}\x{ff1a} 4595 0: 123ef\x{ff10}\x{ff19}\x{ff21}\x{ff26} 4596 4597/\b.+?\b/utf,ucp 4598 --cafe\x{300}_au\x{203f}lait! 4599 0: cafe\x{300}_au\x{203f}lait 4600 4601/caf\B.+?\B/utf,ucp 4602 --cafe\x{300}_au\x{203f}lait! 4603 0: cafe 4604 4605# End of testinput4 4606