1/-- This set of tests is for UTF support, excluding Unicode properties. It is 2 compatible with all versions of Perl >= 5.10 and both the 8-bit and 16-bit 3 PCRE libraries. --/ 4 5< forbid 9?=ABCDEFfGILMNPTUWXZ< 6 7/a.b/8 8 acb 9 0: acb 10 a\x7fb 11 0: a\x{7f}b 12 a\x{100}b 13 0: a\x{100}b 14 *** Failers 15No match 16 a\nb 17No match 18 19/a(.{3})b/8 20 a\x{4000}xyb 21 0: a\x{4000}xyb 22 1: \x{4000}xy 23 a\x{4000}\x7fyb 24 0: a\x{4000}\x{7f}yb 25 1: \x{4000}\x{7f}y 26 a\x{4000}\x{100}yb 27 0: a\x{4000}\x{100}yb 28 1: \x{4000}\x{100}y 29 *** Failers 30No match 31 a\x{4000}b 32No match 33 ac\ncb 34No match 35 36/a(.*?)(.)/ 37 a\xc0\x88b 38 0: a\xc0 39 1: 40 2: \xc0 41 42/a(.*?)(.)/8 43 a\x{100}b 44 0: a\x{100} 45 1: 46 2: \x{100} 47 48/a(.*)(.)/ 49 a\xc0\x88b 50 0: a\xc0\x88b 51 1: \xc0\x88 52 2: b 53 54/a(.*)(.)/8 55 a\x{100}b 56 0: a\x{100}b 57 1: \x{100} 58 2: b 59 60/a(.)(.)/ 61 a\xc0\x92bcd 62 0: a\xc0\x92 63 1: \xc0 64 2: \x92 65 66/a(.)(.)/8 67 a\x{240}bcd 68 0: a\x{240}b 69 1: \x{240} 70 2: b 71 72/a(.?)(.)/ 73 a\xc0\x92bcd 74 0: a\xc0\x92 75 1: \xc0 76 2: \x92 77 78/a(.?)(.)/8 79 a\x{240}bcd 80 0: a\x{240}b 81 1: \x{240} 82 2: b 83 84/a(.??)(.)/ 85 a\xc0\x92bcd 86 0: a\xc0 87 1: 88 2: \xc0 89 90/a(.??)(.)/8 91 a\x{240}bcd 92 0: a\x{240} 93 1: 94 2: \x{240} 95 96/a(.{3})b/8 97 a\x{1234}xyb 98 0: a\x{1234}xyb 99 1: \x{1234}xy 100 a\x{1234}\x{4321}yb 101 0: a\x{1234}\x{4321}yb 102 1: \x{1234}\x{4321}y 103 a\x{1234}\x{4321}\x{3412}b 104 0: a\x{1234}\x{4321}\x{3412}b 105 1: \x{1234}\x{4321}\x{3412} 106 *** Failers 107No match 108 a\x{1234}b 109No match 110 ac\ncb 111No match 112 113/a(.{3,})b/8 114 a\x{1234}xyb 115 0: a\x{1234}xyb 116 1: \x{1234}xy 117 a\x{1234}\x{4321}yb 118 0: a\x{1234}\x{4321}yb 119 1: \x{1234}\x{4321}y 120 a\x{1234}\x{4321}\x{3412}b 121 0: a\x{1234}\x{4321}\x{3412}b 122 1: \x{1234}\x{4321}\x{3412} 123 axxxxbcdefghijb 124 0: axxxxbcdefghijb 125 1: xxxxbcdefghij 126 a\x{1234}\x{4321}\x{3412}\x{3421}b 127 0: a\x{1234}\x{4321}\x{3412}\x{3421}b 128 1: \x{1234}\x{4321}\x{3412}\x{3421} 129 *** Failers 130No match 131 a\x{1234}b 132No match 133 134/a(.{3,}?)b/8 135 a\x{1234}xyb 136 0: a\x{1234}xyb 137 1: \x{1234}xy 138 a\x{1234}\x{4321}yb 139 0: a\x{1234}\x{4321}yb 140 1: \x{1234}\x{4321}y 141 a\x{1234}\x{4321}\x{3412}b 142 0: a\x{1234}\x{4321}\x{3412}b 143 1: \x{1234}\x{4321}\x{3412} 144 axxxxbcdefghijb 145 0: axxxxb 146 1: xxxx 147 a\x{1234}\x{4321}\x{3412}\x{3421}b 148 0: a\x{1234}\x{4321}\x{3412}\x{3421}b 149 1: \x{1234}\x{4321}\x{3412}\x{3421} 150 *** Failers 151No match 152 a\x{1234}b 153No match 154 155/a(.{3,5})b/8 156 a\x{1234}xyb 157 0: a\x{1234}xyb 158 1: \x{1234}xy 159 a\x{1234}\x{4321}yb 160 0: a\x{1234}\x{4321}yb 161 1: \x{1234}\x{4321}y 162 a\x{1234}\x{4321}\x{3412}b 163 0: a\x{1234}\x{4321}\x{3412}b 164 1: \x{1234}\x{4321}\x{3412} 165 axxxxbcdefghijb 166 0: axxxxb 167 1: xxxx 168 a\x{1234}\x{4321}\x{3412}\x{3421}b 169 0: a\x{1234}\x{4321}\x{3412}\x{3421}b 170 1: \x{1234}\x{4321}\x{3412}\x{3421} 171 axbxxbcdefghijb 172 0: axbxxb 173 1: xbxx 174 axxxxxbcdefghijb 175 0: axxxxxb 176 1: xxxxx 177 *** Failers 178No match 179 a\x{1234}b 180No match 181 axxxxxxbcdefghijb 182No match 183 184/a(.{3,5}?)b/8 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 *** Failers 207No match 208 a\x{1234}b 209No match 210 axxxxxxbcdefghijb 211No match 212 213/^[a\x{c0}]/8 214 *** Failers 215No match 216 \x{100} 217No match 218 219/(?<=aXb)cd/8 220 aXbcd 221 0: cd 222 223/(?<=a\x{100}b)cd/8 224 a\x{100}bcd 225 0: cd 226 227/(?<=a\x{100000}b)cd/8 228 a\x{100000}bcd 229 0: cd 230 231/(?:\x{100}){3}b/8 232 \x{100}\x{100}\x{100}b 233 0: \x{100}\x{100}\x{100}b 234 *** Failers 235No match 236 \x{100}\x{100}b 237No match 238 239/\x{ab}/8 240 \x{ab} 241 0: \x{ab} 242 \xc2\xab 243 0: \x{ab} 244 *** Failers 245No match 246 \x00{ab} 247No match 248 249/(?<=(.))X/8 250 WXYZ 251 0: X 252 1: W 253 \x{256}XYZ 254 0: X 255 1: \x{256} 256 *** Failers 257No match 258 XYZ 259No match 260 261/[^a]+/8g 262 bcd 263 0: bcd 264 \x{100}aY\x{256}Z 265 0: \x{100} 266 0: Y\x{256}Z 267 268/^[^a]{2}/8 269 \x{100}bc 270 0: \x{100}b 271 272/^[^a]{2,}/8 273 \x{100}bcAa 274 0: \x{100}bcA 275 276/^[^a]{2,}?/8 277 \x{100}bca 278 0: \x{100}b 279 280/[^a]+/8ig 281 bcd 282 0: bcd 283 \x{100}aY\x{256}Z 284 0: \x{100} 285 0: Y\x{256}Z 286 287/^[^a]{2}/8i 288 \x{100}bc 289 0: \x{100}b 290 291/^[^a]{2,}/8i 292 \x{100}bcAa 293 0: \x{100}bc 294 295/^[^a]{2,}?/8i 296 \x{100}bca 297 0: \x{100}b 298 299/\x{100}{0,0}/8 300 abcd 301 0: 302 303/\x{100}?/8 304 abcd 305 0: 306 \x{100}\x{100} 307 0: \x{100} 308 309/\x{100}{0,3}/8 310 \x{100}\x{100} 311 0: \x{100}\x{100} 312 \x{100}\x{100}\x{100}\x{100} 313 0: \x{100}\x{100}\x{100} 314 315/\x{100}*/8 316 abce 317 0: 318 \x{100}\x{100}\x{100}\x{100} 319 0: \x{100}\x{100}\x{100}\x{100} 320 321/\x{100}{1,1}/8 322 abcd\x{100}\x{100}\x{100}\x{100} 323 0: \x{100} 324 325/\x{100}{1,3}/8 326 abcd\x{100}\x{100}\x{100}\x{100} 327 0: \x{100}\x{100}\x{100} 328 329/\x{100}+/8 330 abcd\x{100}\x{100}\x{100}\x{100} 331 0: \x{100}\x{100}\x{100}\x{100} 332 333/\x{100}{3}/8 334 abcd\x{100}\x{100}\x{100}XX 335 0: \x{100}\x{100}\x{100} 336 337/\x{100}{3,5}/8 338 abcd\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}XX 339 0: \x{100}\x{100}\x{100}\x{100}\x{100} 340 341/\x{100}{3,}/8 342 abcd\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}XX 343 0: \x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100} 344 345/(?<=a\x{100}{2}b)X/8+ 346 Xyyya\x{100}\x{100}bXzzz 347 0: X 348 0+ zzz 349 350/\D*/8 351 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa 352 0: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa 353 354/\D*/8 355 \x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100} 356 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} 357 358/\D/8 359 1X2 360 0: X 361 1\x{100}2 362 0: \x{100} 363 364/>\S/8 365 > >X Y 366 0: >X 367 > >\x{100} Y 368 0: >\x{100} 369 370/\d/8 371 \x{100}3 372 0: 3 373 374/\s/8 375 \x{100} X 376 0: 377 378/\D+/8 379 12abcd34 380 0: abcd 381 *** Failers 382 0: *** Failers 383 1234 384No match 385 386/\D{2,3}/8 387 12abcd34 388 0: abc 389 12ab34 390 0: ab 391 *** Failers 392 0: *** 393 1234 394No match 395 12a34 396No match 397 398/\D{2,3}?/8 399 12abcd34 400 0: ab 401 12ab34 402 0: ab 403 *** Failers 404 0: ** 405 1234 406No match 407 12a34 408No match 409 410/\d+/8 411 12abcd34 412 0: 12 413 *** Failers 414No match 415 416/\d{2,3}/8 417 12abcd34 418 0: 12 419 1234abcd 420 0: 123 421 *** Failers 422No match 423 1.4 424No match 425 426/\d{2,3}?/8 427 12abcd34 428 0: 12 429 1234abcd 430 0: 12 431 *** Failers 432No match 433 1.4 434No match 435 436/\S+/8 437 12abcd34 438 0: 12abcd34 439 *** Failers 440 0: *** 441 \ \ 442No match 443 444/\S{2,3}/8 445 12abcd34 446 0: 12a 447 1234abcd 448 0: 123 449 *** Failers 450 0: *** 451 \ \ 452No match 453 454/\S{2,3}?/8 455 12abcd34 456 0: 12 457 1234abcd 458 0: 12 459 *** Failers 460 0: ** 461 \ \ 462No match 463 464/>\s+</8+ 465 12> <34 466 0: > < 467 0+ 34 468 *** Failers 469No match 470 471/>\s{2,3}</8+ 472 ab> <cd 473 0: > < 474 0+ cd 475 ab> <ce 476 0: > < 477 0+ ce 478 *** Failers 479No match 480 ab> <cd 481No match 482 483/>\s{2,3}?</8+ 484 ab> <cd 485 0: > < 486 0+ cd 487 ab> <ce 488 0: > < 489 0+ ce 490 *** Failers 491No match 492 ab> <cd 493No match 494 495/\w+/8 496 12 34 497 0: 12 498 *** Failers 499 0: Failers 500 +++=*! 501No match 502 503/\w{2,3}/8 504 ab cd 505 0: ab 506 abcd ce 507 0: abc 508 *** Failers 509 0: Fai 510 a.b.c 511No match 512 513/\w{2,3}?/8 514 ab cd 515 0: ab 516 abcd ce 517 0: ab 518 *** Failers 519 0: Fa 520 a.b.c 521No match 522 523/\W+/8 524 12====34 525 0: ==== 526 *** Failers 527 0: *** 528 abcd 529No match 530 531/\W{2,3}/8 532 ab====cd 533 0: === 534 ab==cd 535 0: == 536 *** Failers 537 0: *** 538 a.b.c 539No match 540 541/\W{2,3}?/8 542 ab====cd 543 0: == 544 ab==cd 545 0: == 546 *** Failers 547 0: ** 548 a.b.c 549No match 550 551/[\x{100}]/8 552 \x{100} 553 0: \x{100} 554 Z\x{100} 555 0: \x{100} 556 \x{100}Z 557 0: \x{100} 558 *** Failers 559No match 560 561/[Z\x{100}]/8 562 Z\x{100} 563 0: Z 564 \x{100} 565 0: \x{100} 566 \x{100}Z 567 0: \x{100} 568 *** Failers 569No match 570 571/[\x{100}\x{200}]/8 572 ab\x{100}cd 573 0: \x{100} 574 ab\x{200}cd 575 0: \x{200} 576 *** Failers 577No match 578 579/[\x{100}-\x{200}]/8 580 ab\x{100}cd 581 0: \x{100} 582 ab\x{200}cd 583 0: \x{200} 584 ab\x{111}cd 585 0: \x{111} 586 *** Failers 587No match 588 589/[z-\x{200}]/8 590 ab\x{100}cd 591 0: \x{100} 592 ab\x{200}cd 593 0: \x{200} 594 ab\x{111}cd 595 0: \x{111} 596 abzcd 597 0: z 598 ab|cd 599 0: | 600 *** Failers 601No match 602 603/[Q\x{100}\x{200}]/8 604 ab\x{100}cd 605 0: \x{100} 606 ab\x{200}cd 607 0: \x{200} 608 Q? 609 0: Q 610 *** Failers 611No match 612 613/[Q\x{100}-\x{200}]/8 614 ab\x{100}cd 615 0: \x{100} 616 ab\x{200}cd 617 0: \x{200} 618 ab\x{111}cd 619 0: \x{111} 620 Q? 621 0: Q 622 *** Failers 623No match 624 625/[Qz-\x{200}]/8 626 ab\x{100}cd 627 0: \x{100} 628 ab\x{200}cd 629 0: \x{200} 630 ab\x{111}cd 631 0: \x{111} 632 abzcd 633 0: z 634 ab|cd 635 0: | 636 Q? 637 0: Q 638 *** Failers 639No match 640 641/[\x{100}\x{200}]{1,3}/8 642 ab\x{100}cd 643 0: \x{100} 644 ab\x{200}cd 645 0: \x{200} 646 ab\x{200}\x{100}\x{200}\x{100}cd 647 0: \x{200}\x{100}\x{200} 648 *** Failers 649No match 650 651/[\x{100}\x{200}]{1,3}?/8 652 ab\x{100}cd 653 0: \x{100} 654 ab\x{200}cd 655 0: \x{200} 656 ab\x{200}\x{100}\x{200}\x{100}cd 657 0: \x{200} 658 *** Failers 659No match 660 661/[Q\x{100}\x{200}]{1,3}/8 662 ab\x{100}cd 663 0: \x{100} 664 ab\x{200}cd 665 0: \x{200} 666 ab\x{200}\x{100}\x{200}\x{100}cd 667 0: \x{200}\x{100}\x{200} 668 *** Failers 669No match 670 671/[Q\x{100}\x{200}]{1,3}?/8 672 ab\x{100}cd 673 0: \x{100} 674 ab\x{200}cd 675 0: \x{200} 676 ab\x{200}\x{100}\x{200}\x{100}cd 677 0: \x{200} 678 *** Failers 679No match 680 681/(?<=[\x{100}\x{200}])X/8 682 abc\x{200}X 683 0: X 684 abc\x{100}X 685 0: X 686 *** Failers 687No match 688 X 689No match 690 691/(?<=[Q\x{100}\x{200}])X/8 692 abc\x{200}X 693 0: X 694 abc\x{100}X 695 0: X 696 abQX 697 0: X 698 *** Failers 699No match 700 X 701No match 702 703/(?<=[\x{100}\x{200}]{3})X/8 704 abc\x{100}\x{200}\x{100}X 705 0: X 706 *** Failers 707No match 708 abc\x{200}X 709No match 710 X 711No match 712 713/[^\x{100}\x{200}]X/8 714 AX 715 0: AX 716 \x{150}X 717 0: \x{150}X 718 \x{500}X 719 0: \x{500}X 720 *** Failers 721No match 722 \x{100}X 723No match 724 \x{200}X 725No match 726 727/[^Q\x{100}\x{200}]X/8 728 AX 729 0: AX 730 \x{150}X 731 0: \x{150}X 732 \x{500}X 733 0: \x{500}X 734 *** Failers 735No match 736 \x{100}X 737No match 738 \x{200}X 739No match 740 QX 741No match 742 743/[^\x{100}-\x{200}]X/8 744 AX 745 0: AX 746 \x{500}X 747 0: \x{500}X 748 *** Failers 749No match 750 \x{100}X 751No match 752 \x{150}X 753No match 754 \x{200}X 755No match 756 757/[z-\x{100}]/8i 758 z 759 0: z 760 Z 761 0: Z 762 \x{100} 763 0: \x{100} 764 *** Failers 765No match 766 \x{102} 767No match 768 y 769No match 770 771/[\xFF]/ 772 >\xff< 773 0: \xff 774 775/[\xff]/8 776 >\x{ff}< 777 0: \x{ff} 778 779/[^\xFF]/ 780 XYZ 781 0: X 782 783/[^\xff]/8 784 XYZ 785 0: X 786 \x{123} 787 0: \x{123} 788 789/^[ac]*b/8 790 xb 791No match 792 793/^[ac\x{100}]*b/8 794 xb 795No match 796 797/^[^x]*b/8i 798 xb 799No match 800 801/^[^x]*b/8 802 xb 803No match 804 805/^\d*b/8 806 xb 807No match 808 809/(|a)/g8 810 catac 811 0: 812 1: 813 0: 814 1: 815 0: a 816 1: a 817 0: 818 1: 819 0: 820 1: 821 0: a 822 1: a 823 0: 824 1: 825 0: 826 1: 827 a\x{256}a 828 0: 829 1: 830 0: a 831 1: a 832 0: 833 1: 834 0: 835 1: 836 0: a 837 1: a 838 0: 839 1: 840 841/^\x{85}$/8i 842 \x{85} 843 0: \x{85} 844 845/^ሴ/8 846 ሴ 847 0: \x{1234} 848 849/^\ሴ/8 850 ሴ 851 0: \x{1234} 852 853"(?s)(.{1,5})"8 854 abcdefg 855 0: abcde 856 1: abcde 857 ab 858 0: ab 859 1: ab 860 861/a*\x{100}*\w/8 862 a 863 0: a 864 865/\S\S/8g 866 A\x{a3}BC 867 0: A\x{a3} 868 0: BC 869 870/\S{2}/8g 871 A\x{a3}BC 872 0: A\x{a3} 873 0: BC 874 875/\W\W/8g 876 +\x{a3}== 877 0: +\x{a3} 878 0: == 879 880/\W{2}/8g 881 +\x{a3}== 882 0: +\x{a3} 883 0: == 884 885/\S/8g 886 \x{442}\x{435}\x{441}\x{442} 887 0: \x{442} 888 0: \x{435} 889 0: \x{441} 890 0: \x{442} 891 892/[\S]/8g 893 \x{442}\x{435}\x{441}\x{442} 894 0: \x{442} 895 0: \x{435} 896 0: \x{441} 897 0: \x{442} 898 899/\D/8g 900 \x{442}\x{435}\x{441}\x{442} 901 0: \x{442} 902 0: \x{435} 903 0: \x{441} 904 0: \x{442} 905 906/[\D]/8g 907 \x{442}\x{435}\x{441}\x{442} 908 0: \x{442} 909 0: \x{435} 910 0: \x{441} 911 0: \x{442} 912 913/\W/8g 914 \x{2442}\x{2435}\x{2441}\x{2442} 915 0: \x{2442} 916 0: \x{2435} 917 0: \x{2441} 918 0: \x{2442} 919 920/[\W]/8g 921 \x{2442}\x{2435}\x{2441}\x{2442} 922 0: \x{2442} 923 0: \x{2435} 924 0: \x{2441} 925 0: \x{2442} 926 927/[\S\s]*/8 928 abc\n\r\x{442}\x{435}\x{441}\x{442}xyz 929 0: abc\x{0a}\x{0d}\x{442}\x{435}\x{441}\x{442}xyz 930 931/[\x{41f}\S]/8g 932 \x{442}\x{435}\x{441}\x{442} 933 0: \x{442} 934 0: \x{435} 935 0: \x{441} 936 0: \x{442} 937 938/.[^\S]./8g 939 abc def\x{442}\x{443}xyz\npqr 940 0: c d 941 0: z\x{0a}p 942 943/.[^\S\n]./8g 944 abc def\x{442}\x{443}xyz\npqr 945 0: c d 946 947/[[:^alnum:]]/8g 948 +\x{2442} 949 0: + 950 0: \x{2442} 951 952/[[:^alpha:]]/8g 953 +\x{2442} 954 0: + 955 0: \x{2442} 956 957/[[:^ascii:]]/8g 958 A\x{442} 959 0: \x{442} 960 961/[[:^blank:]]/8g 962 A\x{442} 963 0: A 964 0: \x{442} 965 966/[[:^cntrl:]]/8g 967 A\x{442} 968 0: A 969 0: \x{442} 970 971/[[:^digit:]]/8g 972 A\x{442} 973 0: A 974 0: \x{442} 975 976/[[:^graph:]]/8g 977 \x19\x{e01ff} 978 0: \x{19} 979 0: \x{e01ff} 980 981/[[:^lower:]]/8g 982 A\x{422} 983 0: A 984 0: \x{422} 985 986/[[:^print:]]/8g 987 \x{19}\x{e01ff} 988 0: \x{19} 989 0: \x{e01ff} 990 991/[[:^punct:]]/8g 992 A\x{442} 993 0: A 994 0: \x{442} 995 996/[[:^space:]]/8g 997 A\x{442} 998 0: A 999 0: \x{442} 1000 1001/[[:^upper:]]/8g 1002 a\x{442} 1003 0: a 1004 0: \x{442} 1005 1006/[[:^word:]]/8g 1007 +\x{2442} 1008 0: + 1009 0: \x{2442} 1010 1011/[[:^xdigit:]]/8g 1012 M\x{442} 1013 0: M 1014 0: \x{442} 1015 1016/[^ABCDEFGHIJKLMNOPQRSTUVWXYZÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞĀĂĄĆĈĊČĎĐĒĔĖĘĚĜĞĠĢĤĦĨĪĬĮİIJĴĶĹĻĽĿŁŃŅŇŊŌŎŐŒŔŖŘŚŜŞŠŢŤŦŨŪŬŮŰŲŴŶŸŹŻŽƁƂƄƆƇƉƊƋƎƏƐƑƓƔƖƗƘƜƝƟƠƢƤƦƧƩƬƮƯƱƲƳƵƷƸƼDŽLJNJǍǏǑǓǕǗǙǛǞǠǢǤǦǨǪǬǮDZǴǶǷǸǺǼǾȀȂȄȆȈȊȌȎȐȒȔȖȘȚȜȞȠȢȤȦȨȪȬȮȰȲȺȻȽȾɁΆΈΉΊΌΎΏΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡΣΤΥΦΧΨΩΪΫϒϓϔϘϚϜϞϠϢϤϦϨϪϬϮϴϷϹϺϽϾϿЀЁЂЃЄЅІЇЈЉЊЋЌЍЎЏАБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯѠѢѤѦѨѪѬѮѰѲѴѶѸѺѼѾҀҊҌҎҐҒҔҖҘҚҜҞҠҢҤҦҨҪҬҮҰҲҴҶҸҺҼҾӀӁӃӅӇӉӋӍӐӒӔӖӘӚӜӞӠӢӤӦӨӪӬӮӰӲӴӶӸԀԂԄԆԈԊԌԎԱԲԳԴԵԶԷԸԹԺԻԼԽԾԿՀՁՂՃՄՅՆՇՈՉՊՋՌՍՎՏՐՑՒՓՔՕՖႠႡႢႣႤႥႦႧႨႩႪႫႬႭႮႯႰႱႲႳႴႵႶႷႸႹႺႻႼႽႾႿჀჁჂჃჄჅḀḂḄḆḈḊḌḎḐḒḔḖḘḚḜḞḠḢḤḦḨḪḬḮḰḲḴḶḸḺḼḾṀṂṄṆṈṊṌṎṐṒṔṖṘṚṜṞṠṢṤṦṨṪṬṮṰṲṴṶṸṺṼṾẀẂẄẆẈẊẌẎẐẒẔẠẢẤẦẨẪẬẮẰẲẴẶẸẺẼẾỀỂỄỆỈỊỌỎỐỒỔỖỘỚỜỞỠỢỤỦỨỪỬỮỰỲỴỶỸἈἉἊἋἌἍἎἏἘἙἚἛἜἝἨἩἪἫἬἭἮἯἸἹἺἻἼἽἾἿὈὉὊὋὌὍὙὛὝὟὨὩὪὫὬὭὮὯᾸᾹᾺΆῈΈῊΉῘῙῚΊῨῩῪΎῬῸΌῺΏabcdefghijklmnopqrstuvwxyzªµºßàáâãäåæçèéêëìíîïðñòóôõöøùúûüýþÿāăąćĉċčďđēĕėęěĝğġģĥħĩīĭįıijĵķĸĺļľŀłńņňʼnŋōŏőœŕŗřśŝşšţťŧũūŭůűųŵŷźżžſƀƃƅƈƌƍƒƕƙƚƛƞơƣƥƨƪƫƭưƴƶƹƺƽƾƿdžljnjǎǐǒǔǖǘǚǜǝǟǡǣǥǧǩǫǭǯǰdzǵǹǻǽǿȁȃȅȇȉȋȍȏȑȓȕȗșțȝȟȡȣȥȧȩȫȭȯȱȳȴȵȶȷȸȹȼȿɀɐɑɒɓɔɕɖɗɘəɚɛɜɝɞɟɠɡɢɣɤɥɦɧɨɩɪɫɬɭɮɯɰɱɲɳɴɵɶɷɸɹɺɻɼɽɾɿʀʁʂʃʄʅʆʇʈʉʊʋʌʍʎʏʐʑʒʓʔʕʖʗʘʙʚʛʜʝʞʟʠʡʢʣʤʥʦʧʨʩʪʫʬʭʮʯΐάέήίΰαβγδεζηθικλμνξοπρςστυφχψωϊϋόύώϐϑϕϖϗϙϛϝϟϡϣϥϧϩϫϭϯϰϱϲϳϵϸϻϼабвгдежзийклмнопрстуфхцчшщъыьэюяѐёђѓєѕіїјљњћќѝўџѡѣѥѧѩѫѭѯѱѳѵѷѹѻѽѿҁҋҍҏґғҕҗҙқҝҟҡңҥҧҩҫҭүұҳҵҷҹһҽҿӂӄӆӈӊӌӎӑӓӕӗәӛӝӟӡӣӥӧөӫӭӯӱӳӵӷӹԁԃԅԇԉԋԍԏաբգդեզէըթժիլխծկհձղճմյնշոչպջռսվտրցւփքօֆևᴀᴁᴂᴃᴄᴅᴆᴇᴈᴉᴊᴋᴌᴍᴎᴏᴐᴑᴒᴓᴔᴕᴖᴗᴘᴙᴚᴛᴜᴝᴞᴟᴠᴡᴢᴣᴤᴥᴦᴧᴨᴩᴪᴫᵢᵣᵤᵥᵦᵧᵨᵩᵪᵫᵬᵭᵮᵯᵰᵱᵲᵳᵴᵵᵶᵷᵹᵺᵻᵼᵽᵾᵿᶀᶁᶂᶃᶄᶅᶆᶇᶈᶉᶊᶋᶌᶍᶎᶏᶐᶑᶒᶓᶔᶕᶖᶗᶘᶙᶚḁḃḅḇḉḋḍḏḑḓḕḗḙḛḝḟḡḣḥḧḩḫḭḯḱḳḵḷḹḻḽḿṁṃṅṇṉṋṍṏṑṓṕṗṙṛṝṟṡṣṥṧṩṫṭṯṱṳṵṷṹṻṽṿẁẃẅẇẉẋẍẏẑẓẕẖẗẘẙẚẛạảấầẩẫậắằẳẵặẹẻẽếềểễệỉịọỏốồổỗộớờởỡợụủứừửữựỳỵỷỹἀἁἂἃἄἅἆἇἐἑἒἓἔἕἠἡἢἣἤἥἦἧἰἱἲἳἴἵἶἷὀὁὂὃὄὅὐὑὒὓὔὕὖὗὠὡὢὣὤὥὦὧὰάὲέὴήὶίὸόὺύὼώᾀᾁᾂᾃᾄᾅᾆᾇᾐᾑᾒᾓᾔᾕᾖᾗᾠᾡᾢᾣᾤᾥᾦᾧᾰᾱᾲᾳᾴᾶᾷιῂῃῄῆῇῐῑῒΐῖῗῠῡῢΰῤῥῦῧῲῳῴῶῷⲁⲃⲅⲇⲉⲋⲍⲏⲑⲓⲕⲗⲙⲛⲝⲟⲡⲣⲥⲧⲩⲫⲭⲯⲱⲳⲵⲷⲹⲻⲽⲿⳁⳃⳅⳇⳉⳋⳍⳏⳑⳓⳕⳗⳙⳛⳝⳟⳡⳣⳤⴀⴁⴂⴃⴄⴅⴆⴇⴈⴉⴊⴋⴌⴍⴎⴏⴐⴑⴒⴓⴔⴕⴖⴗⴘⴙⴚⴛⴜⴝⴞⴟⴠⴡⴢⴣⴤⴥfffiflffifflſtstﬓﬔﬕﬖﬗ\d-_^]/8 1017 1018/^[^d]*?$/ 1019 abc 1020 0: abc 1021 1022/^[^d]*?$/8 1023 abc 1024 0: abc 1025 1026/^[^d]*?$/i 1027 abc 1028 0: abc 1029 1030/^[^d]*?$/8i 1031 abc 1032 0: abc 1033 1034/(?i)[\xc3\xa9\xc3\xbd]|[\xc3\xa9\xc3\xbdA]/8 1035 1036/^[a\x{c0}]b/8 1037 \x{c0}b 1038 0: \x{c0}b 1039 1040/^([a\x{c0}]*?)aa/8 1041 a\x{c0}aaaa/ 1042 0: a\x{c0}aa 1043 1: a\x{c0} 1044 1045/^([a\x{c0}]*?)aa/8 1046 a\x{c0}aaaa/ 1047 0: a\x{c0}aa 1048 1: a\x{c0} 1049 a\x{c0}a\x{c0}aaa/ 1050 0: a\x{c0}a\x{c0}aa 1051 1: a\x{c0}a\x{c0} 1052 1053/^([a\x{c0}]*)aa/8 1054 a\x{c0}aaaa/ 1055 0: a\x{c0}aaaa 1056 1: a\x{c0}aa 1057 a\x{c0}a\x{c0}aaa/ 1058 0: a\x{c0}a\x{c0}aaa 1059 1: a\x{c0}a\x{c0}a 1060 1061/^([a\x{c0}]*)a\x{c0}/8 1062 a\x{c0}aaaa/ 1063 0: a\x{c0} 1064 1: 1065 a\x{c0}a\x{c0}aaa/ 1066 0: a\x{c0}a\x{c0} 1067 1: a\x{c0} 1068 1069/A*/g8 1070 AAB\x{123}BAA 1071 0: AA 1072 0: 1073 0: 1074 0: 1075 0: AA 1076 0: 1077 1078/(abc)\1/8i 1079 abc 1080No match 1081 1082/(abc)\1/8 1083 abc 1084No match 1085 1086/a(*:a\x{1234}b)/8K 1087 abc 1088 0: a 1089MK: a\x{1234}b 1090 1091/a(*:a£b)/8K 1092 abc 1093 0: a 1094MK: a\x{a3}b 1095 1096/-- Noncharacters --/ 1097 1098/./8 1099 \x{fffe} 1100 0: \x{fffe} 1101 \x{ffff} 1102 0: \x{ffff} 1103 \x{1fffe} 1104 0: \x{1fffe} 1105 \x{1ffff} 1106 0: \x{1ffff} 1107 \x{2fffe} 1108 0: \x{2fffe} 1109 \x{2ffff} 1110 0: \x{2ffff} 1111 \x{3fffe} 1112 0: \x{3fffe} 1113 \x{3ffff} 1114 0: \x{3ffff} 1115 \x{4fffe} 1116 0: \x{4fffe} 1117 \x{4ffff} 1118 0: \x{4ffff} 1119 \x{5fffe} 1120 0: \x{5fffe} 1121 \x{5ffff} 1122 0: \x{5ffff} 1123 \x{6fffe} 1124 0: \x{6fffe} 1125 \x{6ffff} 1126 0: \x{6ffff} 1127 \x{7fffe} 1128 0: \x{7fffe} 1129 \x{7ffff} 1130 0: \x{7ffff} 1131 \x{8fffe} 1132 0: \x{8fffe} 1133 \x{8ffff} 1134 0: \x{8ffff} 1135 \x{9fffe} 1136 0: \x{9fffe} 1137 \x{9ffff} 1138 0: \x{9ffff} 1139 \x{afffe} 1140 0: \x{afffe} 1141 \x{affff} 1142 0: \x{affff} 1143 \x{bfffe} 1144 0: \x{bfffe} 1145 \x{bffff} 1146 0: \x{bffff} 1147 \x{cfffe} 1148 0: \x{cfffe} 1149 \x{cffff} 1150 0: \x{cffff} 1151 \x{dfffe} 1152 0: \x{dfffe} 1153 \x{dffff} 1154 0: \x{dffff} 1155 \x{efffe} 1156 0: \x{efffe} 1157 \x{effff} 1158 0: \x{effff} 1159 \x{ffffe} 1160 0: \x{ffffe} 1161 \x{fffff} 1162 0: \x{fffff} 1163 \x{10fffe} 1164 0: \x{10fffe} 1165 \x{10ffff} 1166 0: \x{10ffff} 1167 \x{fdd0} 1168 0: \x{fdd0} 1169 \x{fdd1} 1170 0: \x{fdd1} 1171 \x{fdd2} 1172 0: \x{fdd2} 1173 \x{fdd3} 1174 0: \x{fdd3} 1175 \x{fdd4} 1176 0: \x{fdd4} 1177 \x{fdd5} 1178 0: \x{fdd5} 1179 \x{fdd6} 1180 0: \x{fdd6} 1181 \x{fdd7} 1182 0: \x{fdd7} 1183 \x{fdd8} 1184 0: \x{fdd8} 1185 \x{fdd9} 1186 0: \x{fdd9} 1187 \x{fdda} 1188 0: \x{fdda} 1189 \x{fddb} 1190 0: \x{fddb} 1191 \x{fddc} 1192 0: \x{fddc} 1193 \x{fddd} 1194 0: \x{fddd} 1195 \x{fdde} 1196 0: \x{fdde} 1197 \x{fddf} 1198 0: \x{fddf} 1199 \x{fde0} 1200 0: \x{fde0} 1201 \x{fde1} 1202 0: \x{fde1} 1203 \x{fde2} 1204 0: \x{fde2} 1205 \x{fde3} 1206 0: \x{fde3} 1207 \x{fde4} 1208 0: \x{fde4} 1209 \x{fde5} 1210 0: \x{fde5} 1211 \x{fde6} 1212 0: \x{fde6} 1213 \x{fde7} 1214 0: \x{fde7} 1215 \x{fde8} 1216 0: \x{fde8} 1217 \x{fde9} 1218 0: \x{fde9} 1219 \x{fdea} 1220 0: \x{fdea} 1221 \x{fdeb} 1222 0: \x{fdeb} 1223 \x{fdec} 1224 0: \x{fdec} 1225 \x{fded} 1226 0: \x{fded} 1227 \x{fdee} 1228 0: \x{fdee} 1229 \x{fdef} 1230 0: \x{fdef} 1231 1232/^\d*\w{4}/8 1233 1234 1234 0: 1234 1235 123 1236No match 1237 1238/^[^b]*\w{4}/8 1239 aaaa 1240 0: aaaa 1241 aaa 1242No match 1243 1244/^[^b]*\w{4}/8i 1245 aaaa 1246 0: aaaa 1247 aaa 1248No match 1249 1250/^\x{100}*.{4}/8 1251 \x{100}\x{100}\x{100}\x{100} 1252 0: \x{100}\x{100}\x{100}\x{100} 1253 \x{100}\x{100}\x{100} 1254No match 1255 1256/^\x{100}*.{4}/8i 1257 \x{100}\x{100}\x{100}\x{100} 1258 0: \x{100}\x{100}\x{100}\x{100} 1259 \x{100}\x{100}\x{100} 1260No match 1261 1262/^a+[a\x{200}]/8 1263 aa 1264 0: aa 1265 1266/^.\B.\B./8 1267 \x{10123}\x{10124}\x{10125} 1268 0: \x{10123}\x{10124}\x{10125} 1269 1270/^#[^\x{ffff}]#[^\x{ffff}]#[^\x{ffff}]#/8 1271 #\x{10000}#\x{100}#\x{10ffff}# 1272 0: #\x{10000}#\x{100}#\x{10ffff}# 1273 1274/-- End of testinput4 --/ 1275