1/-- This set of tests is not Perl-compatible. It checks on special features 2 of PCRE's API, error diagnostics, and the compiled code of some patterns. 3 It also checks the non-Perl syntax the PCRE supports (Python, .NET, 4 Oniguruma). Finally, there are some tests where PCRE and Perl differ, 5 either because PCRE can't be compatible, or there is a possible Perl 6 bug. 7 8 NOTE: This is a non-UTF set of tests. When UTF support is needed, use 9 test 5, and if Unicode Property Support is needed, use test 7. --/ 10 11/(a)b|/I 12 13/abc/I 14 abc 15 defabc 16 \Aabc 17 *** Failers 18 \Adefabc 19 ABC 20 21/^abc/I 22 abc 23 \Aabc 24 *** Failers 25 defabc 26 \Adefabc 27 28/a+bc/I 29 30/a*bc/I 31 32/a{3}bc/I 33 34/(abc|a+z)/I 35 36/^abc$/I 37 abc 38 *** Failers 39 def\nabc 40 41/ab\idef/X 42 43/(?X)ab\idef/X 44 45/x{5,4}/ 46 47/z{65536}/ 48 49/[abcd/ 50 51/(?X)[\B]/ 52 53/(?X)[\R]/ 54 55/(?X)[\X]/ 56 57/[\B]/BZ 58 59/[\R]/BZ 60 61/[\X]/BZ 62 63/[z-a]/ 64 65/^*/ 66 67/(abc/ 68 69/(?# abc/ 70 71/(?z)abc/ 72 73/.*b/I 74 75/.*?b/I 76 77/cat|dog|elephant/I 78 this sentence eventually mentions a cat 79 this sentences rambles on and on for a while and then reaches elephant 80 81/cat|dog|elephant/IS 82 this sentence eventually mentions a cat 83 this sentences rambles on and on for a while and then reaches elephant 84 85/cat|dog|elephant/IiS 86 this sentence eventually mentions a CAT cat 87 this sentences rambles on and on for a while to elephant ElePhant 88 89/a|[bcd]/IS 90 91/(a|[^\dZ])/IS 92 93/(a|b)*[\s]/IS 94 95/(ab\2)/ 96 97/{4,5}abc/ 98 99/(a)(b)(c)\2/I 100 abcb 101 \O0abcb 102 \O3abcb 103 \O6abcb 104 \O9abcb 105 \O12abcb 106 107/(a)bc|(a)(b)\2/I 108 abc 109 \O0abc 110 \O3abc 111 \O6abc 112 aba 113 \O0aba 114 \O3aba 115 \O6aba 116 \O9aba 117 \O12aba 118 119/abc$/IE 120 abc 121 *** Failers 122 abc\n 123 abc\ndef 124 125/(a)(b)(c)(d)(e)\6/ 126 127/the quick brown fox/I 128 the quick brown fox 129 this is a line with the quick brown fox 130 131/the quick brown fox/IA 132 the quick brown fox 133 *** Failers 134 this is a line with the quick brown fox 135 136/ab(?z)cd/ 137 138/^abc|def/I 139 abcdef 140 abcdef\B 141 142/.*((abc)$|(def))/I 143 defabc 144 \Zdefabc 145 146/)/ 147 148/a[]b/ 149 150/[^aeiou ]{3,}/I 151 co-processors, and for 152 153/<.*>/I 154 abc<def>ghi<klm>nop 155 156/<.*?>/I 157 abc<def>ghi<klm>nop 158 159/<.*>/IU 160 abc<def>ghi<klm>nop 161 162/(?U)<.*>/I 163 abc<def>ghi<klm>nop 164 165/<.*?>/IU 166 abc<def>ghi<klm>nop 167 168/={3,}/IU 169 abc========def 170 171/(?U)={3,}?/I 172 abc========def 173 174/(?<!bar|cattle)foo/I 175 foo 176 catfoo 177 *** Failers 178 the barfoo 179 and cattlefoo 180 181/(?<=a+)b/ 182 183/(?<=aaa|b{0,3})b/ 184 185/(?<!(foo)a\1)bar/ 186 187/(?i)abc/I 188 189/(a|(?m)a)/I 190 191/(?i)^1234/I 192 193/(^b|(?i)^d)/I 194 195/(?s).*/I 196 197/[abcd]/IS 198 199/(?i)[abcd]/IS 200 201/(?m)[xy]|(b|c)/IS 202 203/(^a|^b)/Im 204 205/(?i)(^a|^b)/Im 206 207/(a)(?(1)a|b|c)/ 208 209/(?(?=a)a|b|c)/ 210 211/(?(1a)/ 212 213/(?(1a))/ 214 215/(?(?i))/ 216 217/(?(abc))/ 218 219/(?(?<ab))/ 220 221/((?s)blah)\s+\1/I 222 223/((?i)blah)\s+\1/I 224 225/((?i)b)/IDZS 226 227/(a*b|(?i:c*(?-i)d))/IS 228 229/a$/I 230 a 231 a\n 232 *** Failers 233 \Za 234 \Za\n 235 236/a$/Im 237 a 238 a\n 239 \Za\n 240 *** Failers 241 \Za 242 243/\Aabc/Im 244 245/^abc/Im 246 247/^((a+)(?U)([ab]+)(?-U)([bc]+)(\w*))/I 248 aaaaabbbbbcccccdef 249 250/(?<=foo)[ab]/IS 251 252/(?<!foo)(alpha|omega)/IS 253 254/(?!alphabet)[ab]/IS 255 256/(?<=foo\n)^bar/Im 257 foo\nbarbar 258 ***Failers 259 rhubarb 260 barbell 261 abc\nbarton 262 263/^(?<=foo\n)bar/Im 264 foo\nbarbar 265 ***Failers 266 rhubarb 267 barbell 268 abc\nbarton 269 270/(?>^abc)/Im 271 abc 272 def\nabc 273 *** Failers 274 defabc 275 276/(?<=ab(c+)d)ef/ 277 278/(?<=ab(?<=c+)d)ef/ 279 280/(?<=ab(c|de)f)g/ 281 282/The next three are in testinput2 because they have variable length branches/ 283 284/(?<=bullock|donkey)-cart/I 285 the bullock-cart 286 a donkey-cart race 287 *** Failers 288 cart 289 horse-and-cart 290 291/(?<=ab(?i)x|y|z)/I 292 293/(?>.*)(?<=(abcd)|(xyz))/I 294 alphabetabcd 295 endingxyz 296 297/(?<=ab(?i)x(?-i)y|(?i)z|b)ZZ/I 298 abxyZZ 299 abXyZZ 300 ZZZ 301 zZZ 302 bZZ 303 BZZ 304 *** Failers 305 ZZ 306 abXYZZ 307 zzz 308 bzz 309 310/(?<!(foo)a)bar/I 311 bar 312 foobbar 313 *** Failers 314 fooabar 315 316/This one is here because Perl 5.005_02 doesn't fail it/I 317 318/^(a)?(?(1)a|b)+$/I 319 *** Failers 320 a 321 322/This one is here because Perl behaves differently; see also the following/I 323 324/^(a\1?){4}$/I 325 aaaa 326 aaaaaa 327 328/Perl does not fail these two for the final subjects. Neither did PCRE until/ 329/release 8.01. The problem is in backtracking into a subpattern that contains/ 330/a recursive reference to itself. PCRE has now made these into atomic patterns./ 331 332/^(xa|=?\1a){2}$/ 333 xa=xaa 334 ** Failers 335 xa=xaaa 336 337/^(xa|=?\1a)+$/ 338 xa=xaa 339 ** Failers 340 xa=xaaa 341 342/These are syntax tests from Perl 5.005/I 343 344/a[b-a]/ 345 346/a[]b/ 347 348/a[/ 349 350/*a/ 351 352/(*)b/ 353 354/abc)/ 355 356/(abc/ 357 358/a**/ 359 360/)(/ 361 362/\1/ 363 364/\2/ 365 366/(a)|\2/ 367 368/a[b-a]/Ii 369 370/a[]b/Ii 371 372/a[/Ii 373 374/*a/Ii 375 376/(*)b/Ii 377 378/abc)/Ii 379 380/(abc/Ii 381 382/a**/Ii 383 384/)(/Ii 385 386/:(?:/ 387 388/(?<%)b/ 389 390/a(?{)b/ 391 392/a(?{{})b/ 393 394/a(?{}})b/ 395 396/a(?{"{"})b/ 397 398/a(?{"{"}})b/ 399 400/(?(1?)a|b)/ 401 402/[a[:xyz:/ 403 404/(?<=x+)y/ 405 406/a{37,17}/ 407 408/abc/\ 409 410/abc/\i 411 412/(a)bc(d)/I 413 abcd 414 abcd\C2 415 abcd\C5 416 417/(.{20})/I 418 abcdefghijklmnopqrstuvwxyz 419 abcdefghijklmnopqrstuvwxyz\C1 420 abcdefghijklmnopqrstuvwxyz\G1 421 422/(.{15})/I 423 abcdefghijklmnopqrstuvwxyz 424 abcdefghijklmnopqrstuvwxyz\C1\G1 425 426/(.{16})/I 427 abcdefghijklmnopqrstuvwxyz 428 abcdefghijklmnopqrstuvwxyz\C1\G1\L 429 430/^(a|(bc))de(f)/I 431 adef\G1\G2\G3\G4\L 432 bcdef\G1\G2\G3\G4\L 433 adefghijk\C0 434 435/^abc\00def/I 436 abc\00def\L\C0 437 438/word ((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ 439)((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ 440)?)?)?)?)?)?)?)?)?otherword/I 441 442/.*X/IDZ 443 444/.*X/IDZs 445 446/(.*X|^B)/IDZ 447 448/(.*X|^B)/IDZs 449 450/(?s)(.*X|^B)/IDZ 451 452/(?s:.*X|^B)/IDZ 453 454/\Biss\B/I+ 455 Mississippi 456 457/iss/IG+ 458 Mississippi 459 460/\Biss\B/IG+ 461 Mississippi 462 463/\Biss\B/Ig+ 464 Mississippi 465 *** Failers 466 Mississippi\A 467 468/(?<=[Ms])iss/Ig+ 469 Mississippi 470 471/(?<=[Ms])iss/IG+ 472 Mississippi 473 474/^iss/Ig+ 475 ississippi 476 477/.*iss/Ig+ 478 abciss\nxyzisspqr 479 480/.i./I+g 481 Mississippi 482 Mississippi\A 483 Missouri river 484 Missouri river\A 485 486/^.is/I+g 487 Mississippi 488 489/^ab\n/Ig+ 490 ab\nab\ncd 491 492/^ab\n/Img+ 493 ab\nab\ncd 494 495/abc/I 496 497/abc|bac/I 498 499/(abc|bac)/I 500 501/(abc|(c|dc))/I 502 503/(abc|(d|de)c)/I 504 505/a*/I 506 507/a+/I 508 509/(baa|a+)/I 510 511/a{0,3}/I 512 513/baa{3,}/I 514 515/"([^\\"]+|\\.)*"/I 516 517/(abc|ab[cd])/I 518 519/(a|.)/I 520 521/a|ba|\w/I 522 523/abc(?=pqr)/I 524 525/...(?<=abc)/I 526 527/abc(?!pqr)/I 528 529/ab./I 530 531/ab[xyz]/I 532 533/abc*/I 534 535/ab.c*/I 536 537/a.c*/I 538 539/.c*/I 540 541/ac*/I 542 543/(a.c*|b.c*)/I 544 545/a.c*|aba/I 546 547/.+a/I 548 549/(?=abcda)a.*/I 550 551/(?=a)a.*/I 552 553/a(b)*/I 554 555/a\d*/I 556 557/ab\d*/I 558 559/a(\d)*/I 560 561/abcde{0,0}/I 562 563/ab\d+/I 564 565/a(?(1)b)(.)/I 566 567/a(?(1)bag|big)(.)/I 568 569/a(?(1)bag|big)*(.)/I 570 571/a(?(1)bag|big)+(.)/I 572 573/a(?(1)b..|b..)(.)/I 574 575/ab\d{0}e/I 576 577/a?b?/I 578 a 579 b 580 ab 581 \ 582 *** Failers 583 \N 584 585/|-/I 586 abcd 587 -abc 588 \Nab-c 589 *** Failers 590 \Nabc 591 592/^.?abcd/IS 593 594/\( # ( at start 595 (?: # Non-capturing bracket 596 (?>[^()]+) # Either a sequence of non-brackets (no backtracking) 597 | # Or 598 (?R) # Recurse - i.e. nested bracketed string 599 )* # Zero or more contents 600 \) # Closing ) 601 /Ix 602 (abcd) 603 (abcd)xyz 604 xyz(abcd) 605 (ab(xy)cd)pqr 606 (ab(xycd)pqr 607 () abc () 608 12(abcde(fsh)xyz(foo(bar))lmno)89 609 *** Failers 610 abcd 611 abcd) 612 (abcd 613 614/\( ( (?>[^()]+) | (?R) )* \) /Ixg 615 (ab(xy)cd)pqr 616 1(abcd)(x(y)z)pqr 617 618/\( (?: (?>[^()]+) | (?R) ) \) /Ix 619 (abcd) 620 (ab(xy)cd) 621 (a(b(c)d)e) 622 ((ab)) 623 *** Failers 624 () 625 626/\( (?: (?>[^()]+) | (?R) )? \) /Ix 627 () 628 12(abcde(fsh)xyz(foo(bar))lmno)89 629 630/\( ( (?>[^()]+) | (?R) )* \) /Ix 631 (ab(xy)cd) 632 633/\( ( ( (?>[^()]+) | (?R) )* ) \) /Ix 634 (ab(xy)cd) 635 636/\( (123)? ( ( (?>[^()]+) | (?R) )* ) \) /Ix 637 (ab(xy)cd) 638 (123ab(xy)cd) 639 640/\( ( (123)? ( (?>[^()]+) | (?R) )* ) \) /Ix 641 (ab(xy)cd) 642 (123ab(xy)cd) 643 644/\( (((((((((( ( (?>[^()]+) | (?R) )* )))))))))) \) /Ix 645 (ab(xy)cd) 646 647/\( ( ( (?>[^()<>]+) | ((?>[^()]+)) | (?R) )* ) \) /Ix 648 (abcd(xyz<p>qrs)123) 649 650/\( ( ( (?>[^()]+) | ((?R)) )* ) \) /Ix 651 (ab(cd)ef) 652 (ab(cd(ef)gh)ij) 653 654/^[[:alnum:]]/DZ 655 656/^[[:^alnum:]]/DZ 657 658/^[[:alpha:]]/DZ 659 660/^[[:^alpha:]]/DZ 661 662/[_[:alpha:]]/IS 663 664/^[[:ascii:]]/DZ 665 666/^[[:^ascii:]]/DZ 667 668/^[[:blank:]]/DZ 669 670/^[[:^blank:]]/DZ 671 672/[\n\x0b\x0c\x0d[:blank:]]/IS 673 674/^[[:cntrl:]]/DZ 675 676/^[[:digit:]]/DZ 677 678/^[[:graph:]]/DZ 679 680/^[[:lower:]]/DZ 681 682/^[[:print:]]/DZ 683 684/^[[:punct:]]/DZ 685 686/^[[:space:]]/DZ 687 688/^[[:upper:]]/DZ 689 690/^[[:xdigit:]]/DZ 691 692/^[[:word:]]/DZ 693 694/^[[:^cntrl:]]/DZ 695 696/^[12[:^digit:]]/DZ 697 698/^[[:^blank:]]/DZ 699 700/[01[:alpha:]%]/DZ 701 702/[[.ch.]]/I 703 704/[[=ch=]]/I 705 706/[[:rhubarb:]]/I 707 708/[[:upper:]]/Ii 709 A 710 a 711 712/[[:lower:]]/Ii 713 A 714 a 715 716/((?-i)[[:lower:]])[[:lower:]]/Ii 717 ab 718 aB 719 *** Failers 720 Ab 721 AB 722 723/[\200-\110]/I 724 725/^(?(0)f|b)oo/I 726 727/This one's here because of the large output vector needed/I 728 729/(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\w+)\s+(\270)/I 730 \O900 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 ABC ABC 731 732/This one's here because Perl does this differently and PCRE can't at present/I 733 734/(main(O)?)+/I 735 mainmain 736 mainOmain 737 738/These are all cases where Perl does it differently (nested captures)/I 739 740/^(a(b)?)+$/I 741 aba 742 743/^(aa(bb)?)+$/I 744 aabbaa 745 746/^(aa|aa(bb))+$/I 747 aabbaa 748 749/^(aa(bb)??)+$/I 750 aabbaa 751 752/^(?:aa(bb)?)+$/I 753 aabbaa 754 755/^(aa(b(b))?)+$/I 756 aabbaa 757 758/^(?:aa(b(b))?)+$/I 759 aabbaa 760 761/^(?:aa(b(?:b))?)+$/I 762 aabbaa 763 764/^(?:aa(bb(?:b))?)+$/I 765 aabbbaa 766 767/^(?:aa(b(?:bb))?)+$/I 768 aabbbaa 769 770/^(?:aa(?:b(b))?)+$/I 771 aabbaa 772 773/^(?:aa(?:b(bb))?)+$/I 774 aabbbaa 775 776/^(aa(b(bb))?)+$/I 777 aabbbaa 778 779/^(aa(bb(bb))?)+$/I 780 aabbbbaa 781 782/--------------------------------------------------------------------/I 783 784/#/IxDZ 785 786/a#/IxDZ 787 788/[\s]/DZ 789 790/[\S]/DZ 791 792/a(?i)b/DZ 793 ab 794 aB 795 *** Failers 796 AB 797 798/(a(?i)b)/DZ 799 ab 800 aB 801 *** Failers 802 AB 803 804/ (?i)abc/IxDZ 805 806/#this is a comment 807 (?i)abc/IxDZ 808 809/123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890/DZ 810 811/\Q123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890/DZ 812 813/\Q\E/DZ 814 \ 815 816/\Q\Ex/DZ 817 818/ \Q\E/DZ 819 820/a\Q\E/DZ 821 abc 822 bca 823 bac 824 825/a\Q\Eb/DZ 826 abc 827 828/\Q\Eabc/DZ 829 830/x*+\w/DZ 831 *** Failers 832 xxxxx 833 834/x?+/DZ 835 836/x++/DZ 837 838/x{1,3}+/DZ 839 840/(x)*+/DZ 841 842/^(\w++|\s++)*$/I 843 now is the time for all good men to come to the aid of the party 844 *** Failers 845 this is not a line with only words and spaces! 846 847/(\d++)(\w)/I 848 12345a 849 *** Failers 850 12345+ 851 852/a++b/I 853 aaab 854 855/(a++b)/I 856 aaab 857 858/(a++)b/I 859 aaab 860 861/([^()]++|\([^()]*\))+/I 862 ((abc(ade)ufh()()x 863 864/\(([^()]++|\([^()]+\))+\)/I 865 (abc) 866 (abc(def)xyz) 867 *** Failers 868 ((()aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa 869 870/(abc){1,3}+/DZ 871 872/a+?+/I 873 874/a{2,3}?+b/I 875 876/(?U)a+?+/I 877 878/a{2,3}?+b/IU 879 880/x(?U)a++b/DZ 881 xaaaab 882 883/(?U)xa++b/DZ 884 xaaaab 885 886/^((a+)(?U)([ab]+)(?-U)([bc]+)(\w*))/DZ 887 888/^x(?U)a+b/DZ 889 890/^x(?U)(a+)b/DZ 891 892/[.x.]/I 893 894/[=x=]/I 895 896/[:x:]/I 897 898/\l/I 899 900/\L/I 901 902/\N{name}/I 903 904/\u/I 905 906/\U/I 907 908/[/I 909 910/[a-/I 911 912/[[:space:]/I 913 914/[\s]/IDZ 915 916/[[:space:]]/IDZ 917 918/[[:space:]abcde]/IDZ 919 920/< (?: (?(R) \d++ | [^<>]*+) | (?R)) * >/Ix 921 <> 922 <abcd> 923 <abc <123> hij> 924 <abc <def> hij> 925 <abc<>def> 926 <abc<> 927 *** Failers 928 <abc 929 930|8J\$WE\<\.rX\+ix\[d1b\!H\#\?vV0vrK\:ZH1\=2M\>iV\;\?aPhFB\<\*vW\@QW\@sO9\}cfZA\-i\'w\%hKd6gt1UJP\,15_\#QY\$M\^Mss_U\/\]\&LK9\[5vQub\^w\[KDD\<EjmhUZ\?\.akp2dF\>qmj\;2\}YWFdYx\.Ap\]hjCPTP\(n28k\+3\;o\&WXqs\/gOXdr\$\:r\'do0\;b4c\(f_Gr\=\"\\4\)\[01T7ajQJvL\$W\~mL_sS\/4h\:x\*\[ZN\=KLs\&L5zX\/\/\>it\,o\:aU\(\;Z\>pW\&T7oP\'2K\^E\:x9\'c\[\%z\-\,64JQ5AeH_G\#KijUKghQw\^\\vea3a\?kka_G\$8\#\`\*kynsxzBLru\'\]k_\[7FrVx\}\^\=\$blx\>s\-N\%j\;D\*aZDnsw\:YKZ\%Q\.Kne9\#hP\?\+b3\(SOvL\,\^\;\&u5\@\?5C5Bhb\=m\-vEh_L15Jl\]U\)0RP6\{q\%L\^_z5E\'Dw6X\b|IDZ 931 932|\$\<\.X\+ix\[d1b\!H\#\?vV0vrK\:ZH1\=2M\>iV\;\?aPhFB\<\*vW\@QW\@sO9\}cfZA\-i\'w\%hKd6gt1UJP\,15_\#QY\$M\^Mss_U\/\]\&LK9\[5vQub\^w\[KDD\<EjmhUZ\?\.akp2dF\>qmj\;2\}YWFdYx\.Ap\]hjCPTP\(n28k\+3\;o\&WXqs\/gOXdr\$\:r\'do0\;b4c\(f_Gr\=\"\\4\)\[01T7ajQJvL\$W\~mL_sS\/4h\:x\*\[ZN\=KLs\&L5zX\/\/\>it\,o\:aU\(\;Z\>pW\&T7oP\'2K\^E\:x9\'c\[\%z\-\,64JQ5AeH_G\#KijUKghQw\^\\vea3a\?kka_G\$8\#\`\*kynsxzBLru\'\]k_\[7FrVx\}\^\=\$blx\>s\-N\%j\;D\*aZDnsw\:YKZ\%Q\.Kne9\#hP\?\+b3\(SOvL\,\^\;\&u5\@\?5C5Bhb\=m\-vEh_L15Jl\]U\)0RP6\{q\%L\^_z5E\'Dw6X\b|IDZ 933 934/(.*)\d+\1/I 935 936/(.*)\d+/I 937 938/(.*)\d+\1/Is 939 940/(.*)\d+/Is 941 942/(.*(xyz))\d+\2/I 943 944/((.*))\d+\1/I 945 abc123bc 946 947/a[b]/I 948 949/(?=a).*/I 950 951/(?=abc).xyz/IiI 952 953/(?=abc)(?i).xyz/I 954 955/(?=a)(?=b)/I 956 957/(?=.)a/I 958 959/((?=abcda)a)/I 960 961/((?=abcda)ab)/I 962 963/()a/I 964 965/(?(1)ab|ac)(.)/I 966 967/(?(1)abz|acz)(.)/I 968 969/(?(1)abz)(.)/I 970 971/(?(1)abz)(1)23/I 972 973/(a)+/I 974 975/(a){2,3}/I 976 977/(a)*/I 978 979/[a]/I 980 981/[ab]/I 982 983/[ab]/IS 984 985/[^a]/I 986 987/\d456/I 988 989/\d456/IS 990 991/a^b/I 992 993/^a/Im 994 abcde 995 xy\nabc 996 *** Failers 997 xyabc 998 999/c|abc/I 1000 1001/(?i)[ab]/IS 1002 1003/[ab](?i)cd/IS 1004 1005/abc(?C)def/I 1006 abcdef 1007 1234abcdef 1008 *** Failers 1009 abcxyz 1010 abcxyzf 1011 1012/abc(?C)de(?C1)f/I 1013 123abcdef 1014 1015/(?C1)\dabc(?C2)def/IS 1016 1234abcdef 1017 *** Failers 1018 abcdef 1019 1020/(?C1)\dabc(?C2)def/ISS 1021 1234abcdef 1022 *** Failers 1023 abcdef 1024 1025/(?C255)ab/I 1026 1027/(?C256)ab/I 1028 1029/(?Cab)xx/I 1030 1031/(?C12vr)x/I 1032 1033/abc(?C)def/I 1034 *** Failers 1035 \x83\x0\x61bcdef 1036 1037/(abc)(?C)de(?C1)f/I 1038 123abcdef 1039 123abcdef\C+ 1040 123abcdef\C- 1041 *** Failers 1042 123abcdef\C!1 1043 1044/(?C0)(abc(?C1))*/I 1045 abcabcabc 1046 abcabc\C!1!3 1047 *** Failers 1048 abcabcabc\C!1!3 1049 1050/(\d{3}(?C))*/I 1051 123\C+ 1052 123456\C+ 1053 123456789\C+ 1054 1055/((xyz)(?C)p|(?C1)xyzabc)/I 1056 xyzabc\C+ 1057 1058/(X)((xyz)(?C)p|(?C1)xyzabc)/I 1059 Xxyzabc\C+ 1060 1061/(?=(abc))(?C)abcdef/I 1062 abcdef\C+ 1063 1064/(?!(abc)(?C1)d)(?C2)abcxyz/I 1065 abcxyz\C+ 1066 1067/(?<=(abc)(?C))xyz/I 1068 abcxyz\C+ 1069 1070/a(b+)(c*)(?C1)/I 1071 abbbbbccc\C*1 1072 1073/a(b+?)(c*?)(?C1)/I 1074 abbbbbccc\C*1 1075 1076/(?C)abc/I 1077 1078/(?C)^abc/I 1079 1080/(?C)a|b/IS 1081 1082/(?R)/I 1083 1084/(a|(?R))/I 1085 1086/(ab|(bc|(de|(?R))))/I 1087 1088/x(ab|(bc|(de|(?R))))/I 1089 xab 1090 xbc 1091 xde 1092 xxab 1093 xxxab 1094 *** Failers 1095 xyab 1096 1097/(ab|(bc|(de|(?1))))/I 1098 1099/x(ab|(bc|(de|(?1)x)x)x)/I 1100 1101/^([^()]|\((?1)*\))*$/I 1102 abc 1103 a(b)c 1104 a(b(c))d 1105 *** Failers) 1106 a(b(c)d 1107 1108/^>abc>([^()]|\((?1)*\))*<xyz<$/I 1109 >abc>123<xyz< 1110 >abc>1(2)3<xyz< 1111 >abc>(1(2)3)<xyz< 1112 1113/(a(?1)b)/DZ 1114 1115/(a(?1)+b)/DZ 1116 1117/^(\d+|\((?1)([+*-])(?1)\)|-(?1))$/I 1118 12 1119 (((2+2)*-3)-7) 1120 -12 1121 *** Failers 1122 ((2+2)*-3)-7) 1123 1124/^(x(y|(?1){2})z)/I 1125 xyz 1126 xxyzxyzz 1127 *** Failers 1128 xxyzz 1129 xxyzxyzxyzz 1130 1131/((< (?: (?(R) \d++ | [^<>]*+) | (?2)) * >))/Ix 1132 <> 1133 <abcd> 1134 <abc <123> hij> 1135 <abc <def> hij> 1136 <abc<>def> 1137 <abc<> 1138 *** Failers 1139 <abc 1140 1141/(?1)/I 1142 1143/((?2)(abc)/I 1144 1145/^(abc)def(?1)/I 1146 abcdefabc 1147 1148/^(a|b|c)=(?1)+/I 1149 a=a 1150 a=b 1151 a=bc 1152 1153/^(a|b|c)=((?1))+/I 1154 a=a 1155 a=b 1156 a=bc 1157 1158/a(?P<name1>b|c)d(?P<longername2>e)/DZ 1159 abde 1160 acde 1161 1162/(?:a(?P<c>c(?P<d>d)))(?P<a>a)/DZ 1163 1164/(?P<a>a)...(?P=a)bbb(?P>a)d/DZ 1165 1166/^\W*(?:(?P<one>(?P<two>.)\W*(?P>one)\W*(?P=two)|)|(?P<three>(?P<four>.)\W*(?P>three)\W*(?P=four)|\W*.\W*))\W*$/Ii 1167 1221 1168 Satan, oscillate my metallic sonatas! 1169 A man, a plan, a canal: Panama! 1170 Able was I ere I saw Elba. 1171 *** Failers 1172 The quick brown fox 1173 1174/((?(R)a|b))\1(?1)?/I 1175 bb 1176 bbaa 1177 1178/(.*)a/Is 1179 1180/(.*)a\1/Is 1181 1182/(.*)a(b)\2/Is 1183 1184/((.*)a|(.*)b)z/Is 1185 1186/((.*)a|(.*)b)z\1/Is 1187 1188/((.*)a|(.*)b)z\2/Is 1189 1190/((.*)a|(.*)b)z\3/Is 1191 1192/((.*)a|^(.*)b)z\3/Is 1193 1194/(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a/Is 1195 1196/(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a\31/Is 1197 1198/(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a\32/Is 1199 1200/(a)(bc)/INDZ 1201 abc 1202 1203/(?P<one>a)(bc)/INDZ 1204 abc 1205 1206/(a)(?P<named>bc)/INDZ 1207 1208/(a+)*zz/I 1209 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaazzbbbbbb\M 1210 aaaaaaaaaaaaaz\M 1211 1212/(aaa(?C1)bbb|ab)/I 1213 aaabbb 1214 aaabbb\C*0 1215 aaabbb\C*1 1216 aaabbb\C*-1 1217 1218/ab(?P<one>cd)ef(?P<two>gh)/I 1219 abcdefgh 1220 abcdefgh\C1\Gtwo 1221 abcdefgh\Cone\Ctwo 1222 abcdefgh\Cthree 1223 1224/(?P<Tes>)(?P<Test>)/DZ 1225 1226/(?P<Test>)(?P<Tes>)/DZ 1227 1228/(?P<Z>zz)(?P<A>aa)/I 1229 zzaa\CZ 1230 zzaa\CA 1231 1232/(?P<x>eks)(?P<x>eccs)/I 1233 1234/(?P<abc>abc(?P<def>def)(?P<abc>xyz))/I 1235 1236"\[((?P<elem>\d+)(,(?P>elem))*)\]"I 1237 [10,20,30,5,5,4,4,2,43,23,4234] 1238 *** Failers 1239 [] 1240 1241"\[((?P<elem>\d+)(,(?P>elem))*)?\]"I 1242 [10,20,30,5,5,4,4,2,43,23,4234] 1243 [] 1244 1245/(a(b(?2)c))?/DZ 1246 1247/(a(b(?2)c))*/DZ 1248 1249/(a(b(?2)c)){0,2}/DZ 1250 1251/[ab]{1}+/DZ 1252 1253/((w\/|-|with)*(free|immediate)*.*?shipping\s*[!.-]*)/Ii 1254 Baby Bjorn Active Carrier - With free SHIPPING!! 1255 1256/((w\/|-|with)*(free|immediate)*.*?shipping\s*[!.-]*)/IiS 1257 Baby Bjorn Active Carrier - With free SHIPPING!! 1258 1259/a*.*b/ISDZ 1260 1261/(a|b)*.?c/ISDZ 1262 1263/abc(?C255)de(?C)f/DZ 1264 1265/abcde/ICDZ 1266 abcde 1267 abcdfe 1268 1269/a*b/ICDZS 1270 ab 1271 aaaab 1272 aaaacb 1273 1274/a*b/ICDZSS 1275 ab 1276 aaaab 1277 aaaacb 1278 1279/a+b/ICDZ 1280 ab 1281 aaaab 1282 aaaacb 1283 1284/(abc|def)x/ICDZS 1285 abcx 1286 defx 1287 ** Failers 1288 abcdefzx 1289 1290/(abc|def)x/ICDZSS 1291 abcx 1292 defx 1293 ** Failers 1294 abcdefzx 1295 1296/(ab|cd){3,4}/IC 1297 ababab 1298 abcdabcd 1299 abcdcdcdcdcd 1300 1301/([ab]{,4}c|xy)/ICDZS 1302 Note: that { does NOT introduce a quantifier 1303 1304/([ab]{,4}c|xy)/ICDZSS 1305 Note: that { does NOT introduce a quantifier 1306 1307/([ab]{1,4}c|xy){4,5}?123/ICDZ 1308 aacaacaacaacaac123 1309 1310/\b.*/I 1311 ab cd\>1 1312 1313/\b.*/Is 1314 ab cd\>1 1315 1316/(?!.bcd).*/I 1317 Xbcd12345 1318 1319/abcde/I 1320 ab\P 1321 abc\P 1322 abcd\P 1323 abcde\P 1324 the quick brown abc\P 1325 ** Failers\P 1326 the quick brown abxyz fox\P 1327 1328"^(0?[1-9]|[12][0-9]|3[01])/(0?[1-9]|1[012])/(20)?\d\d$"I 1329 13/05/04\P 1330 13/5/2004\P 1331 02/05/09\P 1332 1\P 1333 1/2\P 1334 1/2/0\P 1335 1/2/04\P 1336 0\P 1337 02/\P 1338 02/0\P 1339 02/1\P 1340 ** Failers\P 1341 \P 1342 123\P 1343 33/4/04\P 1344 3/13/04\P 1345 0/1/2003\P 1346 0/\P 1347 02/0/\P 1348 02/13\P 1349 1350/0{0,2}ABC/I 1351 1352/\d{3,}ABC/I 1353 1354/\d*ABC/I 1355 1356/[abc]+DE/I 1357 1358/[abc]?123/I 1359 123\P 1360 a\P 1361 b\P 1362 c\P 1363 c12\P 1364 c123\P 1365 1366/^(?:\d){3,5}X/I 1367 1\P 1368 123\P 1369 123X 1370 1234\P 1371 1234X 1372 12345\P 1373 12345X 1374 *** Failers 1375 1X 1376 123456\P 1377 1378/abc/IS>testsavedregex 1379<testsavedregex 1380 abc 1381 ** Failers 1382 bca 1383 1384/abc/ISS>testsavedregex 1385<testsavedregex 1386 abc 1387 ** Failers 1388 bca 1389 1390/abc/IFS>testsavedregex 1391<testsavedregex 1392 abc 1393 ** Failers 1394 bca 1395 1396/abc/IFSS>testsavedregex 1397<testsavedregex 1398 abc 1399 ** Failers 1400 bca 1401 1402/(a|b)/IS>testsavedregex 1403<testsavedregex 1404 abc 1405 ** Failers 1406 def 1407 1408/(a|b)/ISS>testsavedregex 1409<testsavedregex 1410 abc 1411 ** Failers 1412 def 1413 1414/(a|b)/ISF>testsavedregex 1415<testsavedregex 1416 abc 1417 ** Failers 1418 def 1419 1420/(a|b)/ISSF>testsavedregex 1421<testsavedregex 1422 abc 1423 ** Failers 1424 def 1425 1426~<(\w+)/?>(.)*</(\1)>~smgI 1427 \J1024<!DOCTYPE seite SYSTEM "http://www.lco.lineas.de/xmlCms.dtd">\n<seite>\n<dokumenteninformation>\n<seitentitel>Partner der LCO</seitentitel>\n<sprache>de</sprache>\n<seitenbeschreibung>Partner der LINEAS Consulting\nGmbH</seitenbeschreibung>\n<schluesselworte>LINEAS Consulting GmbH Hamburg\nPartnerfirmen</schluesselworte>\n<revisit>30 days</revisit>\n<robots>index,follow</robots>\n<menueinformation>\n<aktiv>ja</aktiv>\n<menueposition>3</menueposition>\n<menuetext>Partner</menuetext>\n</menueinformation>\n<lastedited>\n<autor>LCO</autor>\n<firma>LINEAS Consulting</firma>\n<datum>15.10.2003</datum>\n</lastedited>\n</dokumenteninformation>\n<inhalt>\n\n<absatzueberschrift>Die Partnerfirmen der LINEAS Consulting\nGmbH</absatzueberschrift>\n\n<absatz><link ziel="http://www.ca.com/" zielfenster="_blank">\n<bild name="logo_ca.gif" rahmen="no"/></link> <link\nziel="http://www.ey.com/" zielfenster="_blank"><bild\nname="logo_euy.gif" rahmen="no"/></link>\n</absatz>\n\n<absatz><link ziel="http://www.cisco.de/" zielfenster="_blank">\n<bild name="logo_cisco.gif" rahmen="ja"/></link></absatz>\n\n<absatz><link ziel="http://www.atelion.de/"\nzielfenster="_blank"><bild\nname="logo_atelion.gif" rahmen="no"/></link>\n</absatz>\n\n<absatz><link ziel="http://www.line-information.de/"\nzielfenster="_blank">\n<bild name="logo_line_information.gif" rahmen="no"/></link>\n</absatz>\n\n<absatz><bild name="logo_aw.gif" rahmen="no"/></absatz>\n\n<absatz><link ziel="http://www.incognis.de/"\nzielfenster="_blank"><bild\nname="logo_incognis.gif" rahmen="no"/></link></absatz>\n\n<absatz><link ziel="http://www.addcraft.com/"\nzielfenster="_blank"><bild\nname="logo_addcraft.gif" rahmen="no"/></link></absatz>\n\n<absatz><link ziel="http://www.comendo.com/"\nzielfenster="_blank"><bild\nname="logo_comendo.gif" rahmen="no"/></link></absatz>\n\n</inhalt>\n</seite> 1428 1429/^a/IF 1430 1431/line\nbreak/I 1432 this is a line\nbreak 1433 line one\nthis is a line\nbreak in the second line 1434 1435/line\nbreak/If 1436 this is a line\nbreak 1437 ** Failers 1438 line one\nthis is a line\nbreak in the second line 1439 1440/line\nbreak/Imf 1441 this is a line\nbreak 1442 ** Failers 1443 line one\nthis is a line\nbreak in the second line 1444 1445/(?i)(?-i)AbCd/I 1446 AbCd 1447 ** Failers 1448 abcd 1449 1450/a{11111111111111111111}/I 1451 1452/(){64294967295}/I 1453 1454/(){2,4294967295}/I 1455 1456"(?i:a)(?i:b)(?i:c)(?i:d)(?i:e)(?i:f)(?i:g)(?i:h)(?i:i)(?i:j)(k)(?i:l)A\1B"I 1457 abcdefghijklAkB 1458 1459"(?P<n0>a)(?P<n1>b)(?P<n2>c)(?P<n3>d)(?P<n4>e)(?P<n5>f)(?P<n6>g)(?P<n7>h)(?P<n8>i)(?P<n9>j)(?P<n10>k)(?P<n11>l)A\11B"I 1460 abcdefghijklAkB 1461 1462"(a)(b)(c)(d)(e)(f)(g)(h)(i)(j)(k)(l)A\11B"I 1463 abcdefghijklAkB 1464 1465"(?P<name0>a)(?P<name1>a)(?P<name2>a)(?P<name3>a)(?P<name4>a)(?P<name5>a)(?P<name6>a)(?P<name7>a)(?P<name8>a)(?P<name9>a)(?P<name10>a)(?P<name11>a)(?P<name12>a)(?P<name13>a)(?P<name14>a)(?P<name15>a)(?P<name16>a)(?P<name17>a)(?P<name18>a)(?P<name19>a)(?P<name20>a)(?P<name21>a)(?P<name22>a)(?P<name23>a)(?P<name24>a)(?P<name25>a)(?P<name26>a)(?P<name27>a)(?P<name28>a)(?P<name29>a)(?P<name30>a)(?P<name31>a)(?P<name32>a)(?P<name33>a)(?P<name34>a)(?P<name35>a)(?P<name36>a)(?P<name37>a)(?P<name38>a)(?P<name39>a)(?P<name40>a)(?P<name41>a)(?P<name42>a)(?P<name43>a)(?P<name44>a)(?P<name45>a)(?P<name46>a)(?P<name47>a)(?P<name48>a)(?P<name49>a)(?P<name50>a)(?P<name51>a)(?P<name52>a)(?P<name53>a)(?P<name54>a)(?P<name55>a)(?P<name56>a)(?P<name57>a)(?P<name58>a)(?P<name59>a)(?P<name60>a)(?P<name61>a)(?P<name62>a)(?P<name63>a)(?P<name64>a)(?P<name65>a)(?P<name66>a)(?P<name67>a)(?P<name68>a)(?P<name69>a)(?P<name70>a)(?P<name71>a)(?P<name72>a)(?P<name73>a)(?P<name74>a)(?P<name75>a)(?P<name76>a)(?P<name77>a)(?P<name78>a)(?P<name79>a)(?P<name80>a)(?P<name81>a)(?P<name82>a)(?P<name83>a)(?P<name84>a)(?P<name85>a)(?P<name86>a)(?P<name87>a)(?P<name88>a)(?P<name89>a)(?P<name90>a)(?P<name91>a)(?P<name92>a)(?P<name93>a)(?P<name94>a)(?P<name95>a)(?P<name96>a)(?P<name97>a)(?P<name98>a)(?P<name99>a)(?P<name100>a)"I 1466 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa 1467 1468"(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)"I 1469 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa 1470 1471/[^()]*(?:\((?R)\)[^()]*)*/I 1472 (this(and)that 1473 (this(and)that) 1474 (this(and)that)stuff 1475 1476/[^()]*(?:\((?>(?R))\)[^()]*)*/I 1477 (this(and)that 1478 (this(and)that) 1479 1480/[^()]*(?:\((?R)\))*[^()]*/I 1481 (this(and)that 1482 (this(and)that) 1483 1484/(?:\((?R)\))*[^()]*/I 1485 (this(and)that 1486 (this(and)that) 1487 ((this)) 1488 1489/(?:\((?R)\))|[^()]*/I 1490 (this(and)that 1491 (this(and)that) 1492 (this) 1493 ((this)) 1494 1495/\x{0000ff}/I 1496 1497/^((?P<A>a1)|(?P<A>a2)b)/I 1498 1499/^((?P<A>a1)|(?P<A>a2)b)/IJ 1500 a1b\CA 1501 a2b\CA 1502 ** Failers 1503 a1b\CZ\CA 1504 1505/^(?P<A>a)(?P<A>b)/IJ 1506 ab\CA 1507 1508/^(?P<A>a)(?P<A>b)|cd/IJ 1509 ab\CA 1510 cd\CA 1511 1512/^(?P<A>a)(?P<A>b)|cd(?P<A>ef)(?P<A>gh)/IJ 1513 cdefgh\CA 1514 1515/^((?P<A>a1)|(?P<A>a2)b)/IJ 1516 a1b\GA 1517 a2b\GA 1518 ** Failers 1519 a1b\GZ\GA 1520 1521/^(?P<A>a)(?P<A>b)/IJ 1522 ab\GA 1523 1524/^(?P<A>a)(?P<A>b)|cd/IJ 1525 ab\GA 1526 cd\GA 1527 1528/^(?P<A>a)(?P<A>b)|cd(?P<A>ef)(?P<A>gh)/IJ 1529 cdefgh\GA 1530 1531/(?J)^((?P<A>a1)|(?P<A>a2)b)/I 1532 a1b\CA 1533 a2b\CA 1534 1535/^(?P<A>a) (?J:(?P<B>b)(?P<B>c)) (?P<A>d)/I 1536 1537/ In this next test, J is not set at the outer level; consequently it isn't 1538set in the pattern's options; consequently pcre_get_named_substring() produces 1539a random value. /Ix 1540 1541/^(?P<A>a) (?J:(?P<B>b)(?P<B>c)) (?P<C>d)/I 1542 a bc d\CA\CB\CC 1543 1544/^(?P<A>a)?(?(A)a|b)/I 1545 aabc 1546 bc 1547 ** Failers 1548 abc 1549 1550/(?:(?(ZZ)a|b)(?P<ZZ>X))+/I 1551 bXaX 1552 1553/(?:(?(2y)a|b)(X))+/I 1554 1555/(?:(?(ZA)a|b)(?P<ZZ>X))+/I 1556 1557/(?:(?(ZZ)a|b)(?(ZZ)a|b)(?P<ZZ>X))+/I 1558 bbXaaX 1559 1560/(?:(?(ZZ)a|\(b\))\\(?P<ZZ>X))+/I 1561 (b)\\Xa\\X 1562 1563/(?P<ABC/I 1564 1565/(?:(?(A)(?P=A)a|b)(?P<A>X|Y))+/I 1566 bXXaYYaY 1567 bXYaXXaX 1568 1569/()()()()()()()()()(?:(?(A)(?P=A)a|b)(?P<A>X|Y))+/I 1570 bXXaYYaY 1571 1572/\s*,\s*/IS 1573 \x0b,\x0b 1574 \x0c,\x0d 1575 1576/^abc/Im 1577 xyz\nabc 1578 xyz\nabc\<lf> 1579 xyz\r\nabc\<lf> 1580 xyz\rabc\<cr> 1581 xyz\r\nabc\<crlf> 1582 ** Failers 1583 xyz\nabc\<cr> 1584 xyz\r\nabc\<cr> 1585 xyz\nabc\<crlf> 1586 xyz\rabc\<crlf> 1587 xyz\rabc\<lf> 1588 1589/abc$/Im<lf> 1590 xyzabc 1591 xyzabc\n 1592 xyzabc\npqr 1593 xyzabc\r\<cr> 1594 xyzabc\rpqr\<cr> 1595 xyzabc\r\n\<crlf> 1596 xyzabc\r\npqr\<crlf> 1597 ** Failers 1598 xyzabc\r 1599 xyzabc\rpqr 1600 xyzabc\r\n 1601 xyzabc\r\npqr 1602 1603/^abc/Im<cr> 1604 xyz\rabcdef 1605 xyz\nabcdef\<lf> 1606 ** Failers 1607 xyz\nabcdef 1608 1609/^abc/Im<lf> 1610 xyz\nabcdef 1611 xyz\rabcdef\<cr> 1612 ** Failers 1613 xyz\rabcdef 1614 1615/^abc/Im<crlf> 1616 xyz\r\nabcdef 1617 xyz\rabcdef\<cr> 1618 ** Failers 1619 xyz\rabcdef 1620 1621/^abc/Im<bad> 1622 1623/abc/I 1624 xyz\rabc\<bad> 1625 abc 1626 1627/.*/I<lf> 1628 abc\ndef 1629 abc\rdef 1630 abc\r\ndef 1631 \<cr>abc\ndef 1632 \<cr>abc\rdef 1633 \<cr>abc\r\ndef 1634 \<crlf>abc\ndef 1635 \<crlf>abc\rdef 1636 \<crlf>abc\r\ndef 1637 1638/\w+(.)(.)?def/Is 1639 abc\ndef 1640 abc\rdef 1641 abc\r\ndef 1642 1643+((?:\s|//.*\\n|/[*](?:\\n|.)*?[*]/)*)+I 1644 /* this is a C style comment */\M 1645 1646/(?P<B>25[0-5]|2[0-4]\d|[01]?\d?\d)(?:\.(?P>B)){3}/I 1647 1648/()()()()()()()()()()()()()()()()()()()() 1649 ()()()()()()()()()()()()()()()()()()()() 1650 ()()()()()()()()()()()()()()()()()()()() 1651 ()()()()()()()()()()()()()()()()()()()() 1652 ()()()()()()()()()()()()()()()()()()()() 1653 (.(.))/Ix 1654 XY\O400 1655 1656/(a*b|(?i:c*(?-i)d))/IS 1657 1658/()[ab]xyz/IS 1659 1660/(|)[ab]xyz/IS 1661 1662/(|c)[ab]xyz/IS 1663 1664/(|c?)[ab]xyz/IS 1665 1666/(d?|c?)[ab]xyz/IS 1667 1668/(d?|c)[ab]xyz/IS 1669 1670/^a*b\d/DZ 1671 1672/^a*+b\d/DZ 1673 1674/^a*?b\d/DZ 1675 1676/^a+A\d/DZ 1677 aaaA5 1678 ** Failers 1679 aaaa5 1680 1681/^a*A\d/IiDZ 1682 aaaA5 1683 aaaa5 1684 1685/(a*|b*)[cd]/IS 1686 1687/(a+|b*)[cd]/IS 1688 1689/(a*|b+)[cd]/IS 1690 1691/(a+|b+)[cd]/IS 1692 1693/(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((( 1694 (((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((( 1695 ((( 1696 a 1697 )))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) 1698 )))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) 1699 ))) 1700/Ix 1701 large nest 1702 1703/a*\d/BZ 1704 1705/a*\D/BZ 1706 1707/0*\d/BZ 1708 1709/0*\D/BZ 1710 1711/a*\s/BZ 1712 1713/a*\S/BZ 1714 1715/ *\s/BZ 1716 1717/ *\S/BZ 1718 1719/a*\w/BZ 1720 1721/a*\W/BZ 1722 1723/=*\w/BZ 1724 1725/=*\W/BZ 1726 1727/\d*a/BZ 1728 1729/\d*2/BZ 1730 1731/\d*\d/BZ 1732 1733/\d*\D/BZ 1734 1735/\d*\s/BZ 1736 1737/\d*\S/BZ 1738 1739/\d*\w/BZ 1740 1741/\d*\W/BZ 1742 1743/\D*a/BZ 1744 1745/\D*2/BZ 1746 1747/\D*\d/BZ 1748 1749/\D*\D/BZ 1750 1751/\D*\s/BZ 1752 1753/\D*\S/BZ 1754 1755/\D*\w/BZ 1756 1757/\D*\W/BZ 1758 1759/\s*a/BZ 1760 1761/\s*2/BZ 1762 1763/\s*\d/BZ 1764 1765/\s*\D/BZ 1766 1767/\s*\s/BZ 1768 1769/\s*\S/BZ 1770 1771/\s*\w/BZ 1772 1773/\s*\W/BZ 1774 1775/\S*a/BZ 1776 1777/\S*2/BZ 1778 1779/\S*\d/BZ 1780 1781/\S*\D/BZ 1782 1783/\S*\s/BZ 1784 1785/\S*\S/BZ 1786 1787/\S*\w/BZ 1788 1789/\S*\W/BZ 1790 1791/\w*a/BZ 1792 1793/\w*2/BZ 1794 1795/\w*\d/BZ 1796 1797/\w*\D/BZ 1798 1799/\w*\s/BZ 1800 1801/\w*\S/BZ 1802 1803/\w*\w/BZ 1804 1805/\w*\W/BZ 1806 1807/\W*a/BZ 1808 1809/\W*2/BZ 1810 1811/\W*\d/BZ 1812 1813/\W*\D/BZ 1814 1815/\W*\s/BZ 1816 1817/\W*\S/BZ 1818 1819/\W*\w/BZ 1820 1821/\W*\W/BZ 1822 1823/[^a]+a/BZ 1824 1825/[^a]+a/BZi 1826 1827/[^a]+A/BZi 1828 1829/[^a]+b/BZ 1830 1831/[^a]+\d/BZ 1832 1833/a*[^a]/BZ 1834 1835/(?P<abc>x)(?P<xyz>y)/I 1836 xy\Cabc\Cxyz 1837 1838/(?<abc>x)(?'xyz'y)/I 1839 xy\Cabc\Cxyz 1840 1841/(?<abc'x)(?'xyz'y)/I 1842 1843/(?<abc>x)(?'xyz>y)/I 1844 1845/(?P'abc'x)(?P<xyz>y)/I 1846 1847/^(?:(?(ZZ)a|b)(?<ZZ>X))+/ 1848 bXaX 1849 bXbX 1850 ** Failers 1851 aXaX 1852 aXbX 1853 1854/^(?P>abc)(?<abcd>xxx)/ 1855 1856/^(?P>abc)(?<abc>x|y)/ 1857 xx 1858 xy 1859 yy 1860 yx 1861 1862/^(?P>abc)(?P<abc>x|y)/ 1863 xx 1864 xy 1865 yy 1866 yx 1867 1868/^((?(abc)a|b)(?<abc>x|y))+/ 1869 bxay 1870 bxby 1871 ** Failers 1872 axby 1873 1874/^(((?P=abc)|X)(?<abc>x|y))+/ 1875 XxXxxx 1876 XxXyyx 1877 XxXyxx 1878 ** Failers 1879 x 1880 1881/^(?1)(abc)/ 1882 abcabc 1883 1884/^(?:(?:\1|X)(a|b))+/ 1885 Xaaa 1886 Xaba 1887 1888/^[\E\Qa\E-\Qz\E]+/BZ 1889 1890/^[a\Q]bc\E]/BZ 1891 1892/^[a-\Q\E]/BZ 1893 1894/^(?P>abc)[()](?<abc>)/BZ 1895 1896/^((?(abc)y)[()](?P<abc>x))+/BZ 1897 (xy)x 1898 1899/^(?P>abc)\Q()\E(?<abc>)/BZ 1900 1901/^(?P>abc)[a\Q(]\E(](?<abc>)/BZ 1902 1903/^(?P>abc) # this is (a comment) 1904 (?<abc>)/BZx 1905 1906/^\W*(?:(?<one>(?<two>.)\W*(?&one)\W*\k<two>|)|(?<three>(?<four>.)\W*(?&three)\W*\k'four'|\W*.\W*))\W*$/Ii 1907 1221 1908 Satan, oscillate my metallic sonatas! 1909 A man, a plan, a canal: Panama! 1910 Able was I ere I saw Elba. 1911 *** Failers 1912 The quick brown fox 1913 1914/(?=(\w+))\1:/I 1915 abcd: 1916 1917/(?=(?'abc'\w+))\k<abc>:/I 1918 abcd: 1919 1920/(?'abc'a|b)(?<abc>d|e)\k<abc>{2}/J 1921 adaa 1922 ** Failers 1923 addd 1924 adbb 1925 1926/(?'abc'a|b)(?<abc>d|e)(?&abc){2}/J 1927 bdaa 1928 bdab 1929 ** Failers 1930 bddd 1931 1932/(?(<bc))/ 1933 1934/(?(''))/ 1935 1936/(?('R')stuff)/ 1937 1938/((abc (?(R) (?(R1)1) (?(R2)2) X | (?1) (?2) (?R) ))) /x 1939 abcabc1Xabc2XabcXabcabc 1940 1941/(?<A> (?'B' abc (?(R) (?(R&A)1) (?(R&B)2) X | (?1) (?2) (?R) ))) /x 1942 abcabc1Xabc2XabcXabcabc 1943 1944/(?<A> (?'B' abc (?(R) (?(R&1)1) (?(R&B)2) X | (?1) (?2) (?R) ))) /x 1945 1946/(?<1> (?'B' abc (?(R) (?(R&1)1) (?(R&B)2) X | (?1) (?2) (?R) ))) /x 1947 abcabc1Xabc2XabcXabcabc 1948 1949/^(?(DEFINE) abc | xyz ) /x 1950 1951/(?(DEFINE) abc) xyz/xI 1952 1953/(a|)*\d/ 1954 \O0aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa 1955 \O0aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa4 1956 1957/^a.b/<lf> 1958 a\rb 1959 a\nb\<cr> 1960 a\x85b\<anycrlf> 1961 ** Failers 1962 a\nb 1963 a\nb\<any> 1964 a\rb\<cr> 1965 a\rb\<any> 1966 a\x85b\<any> 1967 a\rb\<anycrlf> 1968 1969/^abc./mgx<any> 1970 abc1 \x0aabc2 \x0babc3xx \x0cabc4 \x0dabc5xx \x0d\x0aabc6 \x85abc7 JUNK 1971 1972/abc.$/mgx<any> 1973 abc1\x0a abc2\x0b abc3\x0c abc4\x0d abc5\x0d\x0a abc6\x85 abc7 abc9 1974 1975/a/<cr><any> 1976 1977/a/<any><crlf> 1978 1979/^a\Rb/<bsr_unicode> 1980 a\nb 1981 a\rb 1982 a\r\nb 1983 a\x0bb 1984 a\x0cb 1985 a\x85b 1986 ** Failers 1987 a\n\rb 1988 1989/^a\R*b/<bsr_unicode> 1990 ab 1991 a\nb 1992 a\rb 1993 a\r\nb 1994 a\x0bb 1995 a\x0cb 1996 a\x85b 1997 a\n\rb 1998 a\n\r\x85\x0cb 1999 2000/^a\R+b/<bsr_unicode> 2001 a\nb 2002 a\rb 2003 a\r\nb 2004 a\x0bb 2005 a\x0cb 2006 a\x85b 2007 a\n\rb 2008 a\n\r\x85\x0cb 2009 ** Failers 2010 ab 2011 2012/^a\R{1,3}b/<bsr_unicode> 2013 a\nb 2014 a\n\rb 2015 a\n\r\x85b 2016 a\r\n\r\nb 2017 a\r\n\r\n\r\nb 2018 a\n\r\n\rb 2019 a\n\n\r\nb 2020 ** Failers 2021 a\n\n\n\rb 2022 a\r 2023 2024/^a[\R]b/<bsr_unicode> 2025 aRb 2026 ** Failers 2027 a\nb 2028 2029/(?&abc)X(?<abc>P)/I 2030 abcPXP123 2031 2032/(?1)X(?<abc>P)/I 2033 abcPXP123 2034 2035/(?:a(?&abc)b)*(?<abc>x)/ 2036 123axbaxbaxbx456 2037 123axbaxbaxb456 2038 2039/(?:a(?&abc)b){1,5}(?<abc>x)/ 2040 123axbaxbaxbx456 2041 2042/(?:a(?&abc)b){2,5}(?<abc>x)/ 2043 123axbaxbaxbx456 2044 2045/(?:a(?&abc)b){2,}(?<abc>x)/ 2046 123axbaxbaxbx456 2047 2048/(abc)(?i:(?1))/ 2049 defabcabcxyz 2050 DEFabcABCXYZ 2051 2052/(abc)(?:(?i)(?1))/ 2053 defabcabcxyz 2054 DEFabcABCXYZ 2055 2056/^(a)\g-2/ 2057 2058/^(a)\g/ 2059 2060/^(a)\g{0}/ 2061 2062/^(a)\g{3/ 2063 2064/^(a)\g{4a}/ 2065 2066/^a.b/<lf> 2067 a\rb 2068 *** Failers 2069 a\nb 2070 2071/.+foo/ 2072 afoo 2073 ** Failers 2074 \r\nfoo 2075 \nfoo 2076 2077/.+foo/<crlf> 2078 afoo 2079 \nfoo 2080 ** Failers 2081 \r\nfoo 2082 2083/.+foo/<any> 2084 afoo 2085 ** Failers 2086 \nfoo 2087 \r\nfoo 2088 2089/.+foo/s 2090 afoo 2091 \r\nfoo 2092 \nfoo 2093 2094/^$/mg<any> 2095 abc\r\rxyz 2096 abc\n\rxyz 2097 ** Failers 2098 abc\r\nxyz 2099 2100/(?m)^$/<any>g+ 2101 abc\r\n\r\n 2102 2103/(?m)^$|^\r\n/<any>g+ 2104 abc\r\n\r\n 2105 2106/(?m)$/<any>g+ 2107 abc\r\n\r\n 2108 2109/abc.$/mgx<anycrlf> 2110 abc1\x0a abc2\x0b abc3\x0c abc4\x0d abc5\x0d\x0a abc6\x85 abc9 2111 2112/^X/m 2113 XABC 2114 ** Failers 2115 XABC\B 2116 2117/(ab|c)(?-1)/BZ 2118 abc 2119 2120/xy(?+1)(abc)/BZ 2121 xyabcabc 2122 ** Failers 2123 xyabc 2124 2125/x(?-0)y/ 2126 2127/x(?-1)y/ 2128 2129/x(?+0)y/ 2130 2131/x(?+1)y/ 2132 2133/^(abc)?(?(-1)X|Y)/BZ 2134 abcX 2135 Y 2136 ** Failers 2137 abcY 2138 2139/^((?(+1)X|Y)(abc))+/BZ 2140 YabcXabc 2141 YabcXabcXabc 2142 ** Failers 2143 XabcXabc 2144 2145/(?(-1)a)/BZ 2146 2147/((?(-1)a))/BZ 2148 2149/((?(-2)a))/BZ 2150 2151/^(?(+1)X|Y)(.)/BZ 2152 Y! 2153 2154/(?<A>tom|bon)-\k{A}/ 2155 tom-tom 2156 bon-bon 2157 ** Failers 2158 tom-bon 2159 2160/\g{A/ 2161 2162/(?|(abc)|(xyz))/BZ 2163 >abc< 2164 >xyz< 2165 2166/(x)(?|(abc)|(xyz))(x)/BZ 2167 xabcx 2168 xxyzx 2169 2170/(x)(?|(abc)(pqr)|(xyz))(x)/BZ 2171 xabcpqrx 2172 xxyzx 2173 2174/\H++X/BZ 2175 ** Failers 2176 XXXX 2177 2178/\H+\hY/BZ 2179 XXXX Y 2180 2181/\H+ Y/BZ 2182 2183/\h+A/BZ 2184 2185/\v*B/BZ 2186 2187/\V+\x0a/BZ 2188 2189/A+\h/BZ 2190 2191/ *\H/BZ 2192 2193/A*\v/BZ 2194 2195/\x0b*\V/BZ 2196 2197/\d+\h/BZ 2198 2199/\d*\v/BZ 2200 2201/S+\h\S+\v/BZ 2202 2203/\w{3,}\h\w+\v/BZ 2204 2205/\h+\d\h+\w\h+\S\h+\H/BZ 2206 2207/\v+\d\v+\w\v+\S\v+\V/BZ 2208 2209/\H+\h\H+\d/BZ 2210 2211/\V+\v\V+\w/BZ 2212 2213/\( (?: [^()]* | (?R) )* \)/x 2214\J1024(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(00)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0) 2215 2216/[\E]AAA/ 2217 2218/[\Q\E]AAA/ 2219 2220/[^\E]AAA/ 2221 2222/[^\Q\E]AAA/ 2223 2224/[\E^]AAA/ 2225 2226/[\Q\E^]AAA/ 2227 2228/A(*PRUNE)B(*SKIP)C(*THEN)D(*COMMIT)E(*F)F(*FAIL)G(?!)H(*ACCEPT)I/BZ 2229 2230/^a+(*FAIL)/C 2231 aaaaaa 2232 2233/a+b?c+(*FAIL)/C 2234 aaabccc 2235 2236/a+b?(*PRUNE)c+(*FAIL)/C 2237 aaabccc 2238 2239/a+b?(*COMMIT)c+(*FAIL)/C 2240 aaabccc 2241 2242/a+b?(*SKIP)c+(*FAIL)/C 2243 aaabcccaaabccc 2244 2245/a+b?(*THEN)c+(*FAIL)/C 2246 aaabccc 2247 2248/a(*MARK)b/ 2249 2250/(?i:A{1,}\6666666666)/ 2251 2252/\g6666666666/ 2253 2254/[\g6666666666]/BZ 2255 2256/(?1)\c[/ 2257 2258/.+A/<crlf> 2259 \r\nA 2260 2261/\nA/<crlf> 2262 \r\nA 2263 2264/[\r\n]A/<crlf> 2265 \r\nA 2266 2267/(\r|\n)A/<crlf> 2268 \r\nA 2269 2270/a(*CR)b/ 2271 2272/(*CR)a.b/ 2273 a\nb 2274 ** Failers 2275 a\rb 2276 2277/(*CR)a.b/<lf> 2278 a\nb 2279 ** Failers 2280 a\rb 2281 2282/(*LF)a.b/<CRLF> 2283 a\rb 2284 ** Failers 2285 a\nb 2286 2287/(*CRLF)a.b/ 2288 a\rb 2289 a\nb 2290 ** Failers 2291 a\r\nb 2292 2293/(*ANYCRLF)a.b/<CR> 2294 ** Failers 2295 a\rb 2296 a\nb 2297 a\r\nb 2298 2299/(*ANY)a.b/<cr> 2300 ** Failers 2301 a\rb 2302 a\nb 2303 a\r\nb 2304 a\x85b 2305 2306/(*ANY).*/g 2307 abc\r\ndef 2308 2309/(*ANYCRLF).*/g 2310 abc\r\ndef 2311 2312/(*CRLF).*/g 2313 abc\r\ndef 2314 2315/a\Rb/I<bsr_anycrlf> 2316 a\rb 2317 a\nb 2318 a\r\nb 2319 ** Failers 2320 a\x85b 2321 a\x0bb 2322 2323/a\Rb/I<bsr_unicode> 2324 a\rb 2325 a\nb 2326 a\r\nb 2327 a\x85b 2328 a\x0bb 2329 ** Failers 2330 a\x85b\<bsr_anycrlf> 2331 a\x0bb\<bsr_anycrlf> 2332 2333/a\R?b/I<bsr_anycrlf> 2334 a\rb 2335 a\nb 2336 a\r\nb 2337 ** Failers 2338 a\x85b 2339 a\x0bb 2340 2341/a\R?b/I<bsr_unicode> 2342 a\rb 2343 a\nb 2344 a\r\nb 2345 a\x85b 2346 a\x0bb 2347 ** Failers 2348 a\x85b\<bsr_anycrlf> 2349 a\x0bb\<bsr_anycrlf> 2350 2351/a\R{2,4}b/I<bsr_anycrlf> 2352 a\r\n\nb 2353 a\n\r\rb 2354 a\r\n\r\n\r\n\r\nb 2355 ** Failers 2356 a\x85\85b 2357 a\x0b\0bb 2358 2359/a\R{2,4}b/I<bsr_unicode> 2360 a\r\rb 2361 a\n\n\nb 2362 a\r\n\n\r\rb 2363 a\x85\85b 2364 a\x0b\0bb 2365 ** Failers 2366 a\r\r\r\r\rb 2367 a\x85\85b\<bsr_anycrlf> 2368 a\x0b\0bb\<bsr_anycrlf> 2369 2370/(*BSR_ANYCRLF)a\Rb/I 2371 a\nb 2372 a\rb 2373 2374/(*BSR_UNICODE)a\Rb/I 2375 a\x85b 2376 2377/(*BSR_ANYCRLF)(*CRLF)a\Rb/I 2378 a\nb 2379 a\rb 2380 2381/(*CRLF)(*BSR_UNICODE)a\Rb/I 2382 a\x85b 2383 2384/(*CRLF)(*BSR_ANYCRLF)(*CR)ab/I 2385 2386/(?<a>)(?&)/ 2387 2388/(?<abc>)(?&a)/ 2389 2390/(?<a>)(?&aaaaaaaaaaaaaaaaaaaaaaa)/ 2391 2392/(?+-a)/ 2393 2394/(?-+a)/ 2395 2396/(?(-1))/ 2397 2398/(?(+10))/ 2399 2400/(?(10))/ 2401 2402/(?(+2))()()/ 2403 2404/(?(2))()()/ 2405 2406/\k''/ 2407 2408/\k<>/ 2409 2410/\k{}/ 2411 2412/\k/ 2413 2414/\kabc/ 2415 2416/(?P=)/ 2417 2418/(?P>)/ 2419 2420/(?!\w)(?R)/ 2421 2422/(?=\w)(?R)/ 2423 2424/(?<!\w)(?R)/ 2425 2426/(?<=\w)(?R)/ 2427 2428/[[:foo:]]/ 2429 2430/[[:1234:]]/ 2431 2432/[[:f\oo:]]/ 2433 2434/[[: :]]/ 2435 2436/[[:...:]]/ 2437 2438/[[:l\ower:]]/ 2439 2440/[[:abc\:]]/ 2441 2442/[abc[:x\]pqr:]]/ 2443 2444/[[:a\dz:]]/ 2445 2446/(^(a|b\g<-1'c))/ 2447 2448/^(?+1)(?<a>x|y){0}z/ 2449 xzxx 2450 yzyy 2451 ** Failers 2452 xxz 2453 2454/(\3)(\1)(a)/ 2455 cat 2456 2457/(\3)(\1)(a)/<JS> 2458 cat 2459 2460/TA]/ 2461 The ACTA] comes 2462 2463/TA]/<JS> 2464 The ACTA] comes 2465 2466/(?2)[]a()b](abc)/ 2467 abcbabc 2468 2469/(?2)[^]a()b](abc)/ 2470 abcbabc 2471 2472/(?1)[]a()b](abc)/ 2473 abcbabc 2474 ** Failers 2475 abcXabc 2476 2477/(?1)[^]a()b](abc)/ 2478 abcXabc 2479 ** Failers 2480 abcbabc 2481 2482/(?2)[]a()b](abc)(xyz)/ 2483 xyzbabcxyz 2484 2485/(?&N)[]a(?<N>)](?<M>abc)/ 2486 abc<abc 2487 2488/(?&N)[]a(?<N>)](abc)/ 2489 abc<abc 2490 2491/a[]b/ 2492 2493/a[^]b/ 2494 2495/a[]b/<JS> 2496 ** Failers 2497 ab 2498 2499/a[]+b/<JS> 2500 ** Failers 2501 ab 2502 2503/a[]*+b/<JS> 2504 ** Failers 2505 ab 2506 2507/a[^]b/<JS> 2508 aXb 2509 a\nb 2510 ** Failers 2511 ab 2512 2513/a[^]+b/<JS> 2514 aXb 2515 a\nX\nXb 2516 ** Failers 2517 ab 2518 2519/a(?!)+b/ 2520 2521/a(*FAIL)+b/ 2522 2523/(abc|pqr|123){0}[xyz]/SI 2524 2525/(?(?=.*b)b|^)/CI 2526 adc 2527 abc 2528 2529/(?(?=b).*b|^d)/I 2530 2531/(?(?=.*b).*b|^d)/I 2532 2533/xyz/C 2534 xyz 2535 abcxyz 2536 abcxyz\Y 2537 ** Failers 2538 abc 2539 abc\Y 2540 abcxypqr 2541 abcxypqr\Y 2542 2543/(*NO_START_OPT)xyz/C 2544 abcxyz 2545 2546/xyz/CY 2547 abcxyz 2548 2549/^"((?(?=[a])[^"])|b)*"$/C 2550 "ab" 2551 2552/^"((?(?=[a])[^"])|b)*"$/ 2553 "ab" 2554 2555/^X(?5)(a)(?|(b)|(q))(c)(d)Y/ 2556 XYabcdY 2557 2558/^X(?&N)(a)(?|(b)|(q))(c)(d)(?<N>Y)/ 2559 XYabcdY 2560 2561/Xa{2,4}b/ 2562 X\P 2563 Xa\P 2564 Xaa\P 2565 Xaaa\P 2566 Xaaaa\P 2567 2568/Xa{2,4}?b/ 2569 X\P 2570 Xa\P 2571 Xaa\P 2572 Xaaa\P 2573 Xaaaa\P 2574 2575/Xa{2,4}+b/ 2576 X\P 2577 Xa\P 2578 Xaa\P 2579 Xaaa\P 2580 Xaaaa\P 2581 2582/X\d{2,4}b/ 2583 X\P 2584 X3\P 2585 X33\P 2586 X333\P 2587 X3333\P 2588 2589/X\d{2,4}?b/ 2590 X\P 2591 X3\P 2592 X33\P 2593 X333\P 2594 X3333\P 2595 2596/X\d{2,4}+b/ 2597 X\P 2598 X3\P 2599 X33\P 2600 X333\P 2601 X3333\P 2602 2603/X\D{2,4}b/ 2604 X\P 2605 Xa\P 2606 Xaa\P 2607 Xaaa\P 2608 Xaaaa\P 2609 2610/X\D{2,4}?b/ 2611 X\P 2612 Xa\P 2613 Xaa\P 2614 Xaaa\P 2615 Xaaaa\P 2616 2617/X\D{2,4}+b/ 2618 X\P 2619 Xa\P 2620 Xaa\P 2621 Xaaa\P 2622 Xaaaa\P 2623 2624/X[abc]{2,4}b/ 2625 X\P 2626 Xa\P 2627 Xaa\P 2628 Xaaa\P 2629 Xaaaa\P 2630 2631/X[abc]{2,4}?b/ 2632 X\P 2633 Xa\P 2634 Xaa\P 2635 Xaaa\P 2636 Xaaaa\P 2637 2638/X[abc]{2,4}+b/ 2639 X\P 2640 Xa\P 2641 Xaa\P 2642 Xaaa\P 2643 Xaaaa\P 2644 2645/X[^a]{2,4}b/ 2646 X\P 2647 Xz\P 2648 Xzz\P 2649 Xzzz\P 2650 Xzzzz\P 2651 2652/X[^a]{2,4}?b/ 2653 X\P 2654 Xz\P 2655 Xzz\P 2656 Xzzz\P 2657 Xzzzz\P 2658 2659/X[^a]{2,4}+b/ 2660 X\P 2661 Xz\P 2662 Xzz\P 2663 Xzzz\P 2664 Xzzzz\P 2665 2666/(Y)X\1{2,4}b/ 2667 YX\P 2668 YXY\P 2669 YXYY\P 2670 YXYYY\P 2671 YXYYYY\P 2672 2673/(Y)X\1{2,4}?b/ 2674 YX\P 2675 YXY\P 2676 YXYY\P 2677 YXYYY\P 2678 YXYYYY\P 2679 2680/(Y)X\1{2,4}+b/ 2681 YX\P 2682 YXY\P 2683 YXYY\P 2684 YXYYY\P 2685 YXYYYY\P 2686 2687/\++\KZ|\d+X|9+Y/ 2688 ++++123999\P 2689 ++++123999Y\P 2690 ++++Z1234\P 2691 2692/Z(*F)/ 2693 Z\P 2694 ZA\P 2695 2696/Z(?!)/ 2697 Z\P 2698 ZA\P 2699 2700/dog(sbody)?/ 2701 dogs\P 2702 dogs\P\P 2703 2704/dog(sbody)??/ 2705 dogs\P 2706 dogs\P\P 2707 2708/dog|dogsbody/ 2709 dogs\P 2710 dogs\P\P 2711 2712/dogsbody|dog/ 2713 dogs\P 2714 dogs\P\P 2715 2716/\bthe cat\b/ 2717 the cat\P 2718 the cat\P\P 2719 2720/abc/ 2721 abc\P 2722 abc\P\P 2723 2724/abc\K123/ 2725 xyzabc123pqr 2726 xyzabc12\P 2727 xyzabc12\P\P 2728 2729/(?<=abc)123/ 2730 xyzabc123pqr 2731 xyzabc12\P 2732 xyzabc12\P\P 2733 2734/\babc\b/ 2735 +++abc+++ 2736 +++ab\P 2737 +++ab\P\P 2738 2739/(?&word)(?&element)(?(DEFINE)(?<element><[^m][^>]>[^<])(?<word>\w*+))/BZ 2740 2741/(?&word)(?&element)(?(DEFINE)(?<element><[^\d][^>]>[^<])(?<word>\w*+))/BZ 2742 2743/(ab)(x(y)z(cd(*ACCEPT)))pq/BZ 2744 2745/abc\K/+ 2746 abcdef 2747 abcdef\N\N 2748 xyzabcdef\N\N 2749 ** Failers 2750 abcdef\N 2751 xyzabcdef\N 2752 2753/^(?:(?=abc)|abc\K)/+ 2754 abcdef 2755 abcdef\N\N 2756 ** Failers 2757 abcdef\N 2758 2759/a?b?/+ 2760 xyz 2761 xyzabc 2762 xyzabc\N 2763 xyzabc\N\N 2764 xyz\N\N 2765 ** Failers 2766 xyz\N 2767 2768/^a?b?/+ 2769 xyz 2770 xyzabc 2771 ** Failers 2772 xyzabc\N 2773 xyzabc\N\N 2774 xyz\N\N 2775 xyz\N 2776 2777/^(?<name>a|b\g<name>c)/ 2778 aaaa 2779 bacxxx 2780 bbaccxxx 2781 bbbacccxx 2782 2783/^(?<name>a|b\g'name'c)/ 2784 aaaa 2785 bacxxx 2786 bbaccxxx 2787 bbbacccxx 2788 2789/^(a|b\g<1>c)/ 2790 aaaa 2791 bacxxx 2792 bbaccxxx 2793 bbbacccxx 2794 2795/^(a|b\g'1'c)/ 2796 aaaa 2797 bacxxx 2798 bbaccxxx 2799 bbbacccxx 2800 2801/^(a|b\g'-1'c)/ 2802 aaaa 2803 bacxxx 2804 bbaccxxx 2805 bbbacccxx 2806 2807/(^(a|b\g<-1>c))/ 2808 aaaa 2809 bacxxx 2810 bbaccxxx 2811 bbbacccxx 2812 2813/(?-i:\g<name>)(?i:(?<name>a))/ 2814 XaaX 2815 XAAX 2816 2817/(?i:\g<name>)(?-i:(?<name>a))/ 2818 XaaX 2819 ** Failers 2820 XAAX 2821 2822/(?-i:\g<+1>)(?i:(a))/ 2823 XaaX 2824 XAAX 2825 2826/(?=(?<regex>(?#simplesyntax)\$(?<name>[a-zA-Z_\x{7f}-\x{ff}][a-zA-Z0-9_\x{7f}-\x{ff}]*)(?:\[(?<index>[a-zA-Z0-9_\x{7f}-\x{ff}]+|\$\g<name>)\]|->\g<name>(\(.*?\))?)?|(?#simple syntax withbraces)\$\{(?:\g<name>(?<indices>\[(?:\g<index>|'(?:\\.|[^'\\])*'|"(?:\g<regex>|\\.|[^"\\])*")\])?|\g<complex>|\$\{\g<complex>\})\}|(?#complexsyntax)\{(?<complex>\$(?<segment>\g<name>(\g<indices>*|\(.*?\))?)(?:->\g<segment>)*|\$\g<complex>|\$\{\g<complex>\})\}))\{/ 2827 2828/(?<n>a|b|c)\g<n>*/ 2829 abc 2830 accccbbb 2831 2832/^X(?7)(a)(?|(b)|(q)(r)(s))(c)(d)(Y)/ 2833 XYabcdY 2834 2835/(?<=b(?1)|zzz)(a)/ 2836 xbaax 2837 xzzzax 2838 2839/(a)(?<=b\1)/ 2840 2841/(a)(?<=b+(?1))/ 2842 2843/(a+)(?<=b(?1))/ 2844 2845/(a(?<=b(?1)))/ 2846 2847/(?<=b(?1))xyz/ 2848 2849/(?<=b(?1))xyz(b+)pqrstuvew/ 2850 2851/(a|bc)\1/SI 2852 2853/(a|bc)\1{2,3}/SI 2854 2855/(a|bc)(?1)/SI 2856 2857/(a|b\1)(a|b\1)/SI 2858 2859/(a|b\1){2}/SI 2860 2861/(a|bbbb\1)(a|bbbb\1)/SI 2862 2863/(a|bbbb\1){2}/SI 2864 2865/^From +([^ ]+) +[a-zA-Z][a-zA-Z][a-zA-Z] +[a-zA-Z][a-zA-Z][a-zA-Z] +[0-9]?[0-9] +[0-9][0-9]:[0-9][0-9]/SI 2866 2867/<tr([\w\W\s\d][^<>]{0,})><TD([\w\W\s\d][^<>]{0,})>([\d]{0,}\.)(.*)((<BR>([\w\W\s\d][^<>]{0,})|[\s]{0,}))<\/a><\/TD><TD([\w\W\s\d][^<>]{0,})>([\w\W\s\d][^<>]{0,})<\/TD><TD([\w\W\s\d][^<>]{0,})>([\w\W\s\d][^<>]{0,})<\/TD><\/TR>/isIS 2868 2869"(?>.*/)foo"SI 2870 2871/(?(?=[^a-z]+[a-z]) \d{2}-[a-z]{3}-\d{2} | \d{2}-\d{2}-\d{2} ) /xSI 2872 2873/(?:(?:(?:(?:(?:(?:(?:(?:(?:(a|b|c))))))))))/iSI 2874 2875/(?:c|d)(?:)(?:aaaaaaaa(?:)(?:bbbbbbbb)(?:bbbbbbbb(?:))(?:bbbbbbbb(?:)(?:bbbbbbbb)))/SI 2876 2877/<a[\s]+href[\s]*=[\s]* # find <a href= 2878 ([\"\'])? # find single or double quote 2879 (?(1) (.*?)\1 | ([^\s]+)) # if quote found, match up to next matching 2880 # quote, otherwise match up to next space 2881/isxSI 2882 2883/^(?!:) # colon disallowed at start 2884 (?: # start of item 2885 (?: [0-9a-f]{1,4} | # 1-4 hex digits or 2886 (?(1)0 | () ) ) # if null previously matched, fail; else null 2887 : # followed by colon 2888 ){1,7} # end item; 1-7 of them required 2889 [0-9a-f]{1,4} $ # final hex number at end of string 2890 (?(1)|.) # check that there was an empty component 2891 /xiIS 2892 2893/(?|(?<a>A)|(?<a>B))/I 2894 AB\Ca 2895 BA\Ca 2896 2897/(?|(?<a>A)|(?<b>B))/ 2898 2899/(?:a(?<quote> (?<apostrophe>')|(?<realquote>")) | 2900 b(?<quote> (?<apostrophe>')|(?<realquote>")) ) 2901 (?('quote')[a-z]+|[0-9]+)/JIx 2902 a"aaaaa 2903 b"aaaaa 2904 ** Failers 2905 b"11111 2906 a"11111 2907 2908/^(?|(a)(b)(c)(?<D>d)|(?<D>e)) (?('D')X|Y)/JDZx 2909 abcdX 2910 eX 2911 ** Failers 2912 abcdY 2913 ey 2914 2915/(?<A>a) (b)(c) (?<A>d (?(R&A)$ | (?4)) )/JDZx 2916 abcdd 2917 ** Failers 2918 abcdde 2919 2920/abcd*/ 2921 xxxxabcd\P 2922 xxxxabcd\P\P 2923 2924/abcd*/i 2925 xxxxabcd\P 2926 xxxxabcd\P\P 2927 XXXXABCD\P 2928 XXXXABCD\P\P 2929 2930/abc\d*/ 2931 xxxxabc1\P 2932 xxxxabc1\P\P 2933 2934/(a)bc\1*/ 2935 xxxxabca\P 2936 xxxxabca\P\P 2937 2938/abc[de]*/ 2939 xxxxabcde\P 2940 xxxxabcde\P\P 2941 2942/-- This is not in the Perl >= 5.10 test because Perl seems currently to be 2943 broken and not behaving as specified in that it *does* bumpalong after 2944 hitting (*COMMIT). --/ 2945 2946/(?1)(A(*COMMIT)|B)D/ 2947 ABD 2948 XABD 2949 BAD 2950 ABXABD 2951 ** Failers 2952 ABX 2953 BAXBAD 2954 2955/(\3)(\1)(a)/<JS> 2956 cat 2957 2958/(\3)(\1)(a)/SI<JS> 2959 cat 2960 2961/(\3)(\1)(a)/SI 2962 cat 2963 2964/i(?(DEFINE)(?<s>a))/SI 2965 i 2966 2967/()i(?(1)a)/SI 2968 ia 2969 2970/(?i)a(?-i)b|c/BZ 2971 XabX 2972 XAbX 2973 CcC 2974 ** Failers 2975 XABX 2976 2977/(?i)a(?s)b|c/BZ 2978 2979/(?i)a(?s-i)b|c/BZ 2980 2981/^(ab(c\1)d|x){2}$/BZ 2982 xabcxd 2983 2984/^(?&t)*+(?(DEFINE)(?<t>.))$/BZ 2985 2986/^(?&t)*(?(DEFINE)(?<t>.))$/BZ 2987 2988/ -- The first four of these are not in the Perl >= 5.10 test because Perl 2989 documents that the use of \K in assertions is "not well defined". The 2990 last is here because Perl gives the match as "b" rather than "ab". I 2991 believe this to be a Perl bug. --/ 2992 2993/(?=a\Kb)ab/ 2994 ab 2995 2996/(?!a\Kb)ac/ 2997 ac 2998 2999/^abc(?<=b\Kc)d/ 3000 abcd 3001 3002/^abc(?<!b\Kq)d/ 3003 abcd 3004 3005/(?>a\Kb)z|(ab)/ 3006 ab 3007 3008/----------------------/ 3009 3010/(?P<L1>(?P<L2>0|)|(?P>L2)(?P>L1))/ 3011 3012/abc(*MARK:)pqr/ 3013 3014/abc(*:)pqr/ 3015 3016/abc(*FAIL:123)xyz/ 3017 3018/--- This should, and does, fail. In Perl, it does not, which I think is a 3019 bug because replacing the B in the pattern by (B|D) does make it fail. ---/ 3020 3021/A(*COMMIT)B/+K 3022 ACABX 3023 3024/--- These should be different, but in Perl 5.11 are not, which I think 3025 is a bug in Perl. ---/ 3026 3027/A(*THEN)B|A(*THEN)C/K 3028 AC 3029 3030/A(*PRUNE)B|A(*PRUNE)C/K 3031 AC 3032 3033/--- This should fail; the SKIP advances by one, but when we get to AC, the 3034 PRUNE kills it. Perl behaves differently. ---/ 3035 3036/A(*PRUNE:A)A+(*SKIP:A)(B|Z) | AC/xK 3037 AAAC 3038 3039/--- Mark names can be duplicated. Perl doesn't give a mark for this one, 3040though PCRE does. ---/ 3041 3042/^A(*:A)B|^X(*:A)Y/K 3043 ** Failers 3044 XAQQ 3045 3046/--- COMMIT at the start of a pattern should be the same as an anchor. Perl 3047optimizations defeat this. So does the PCRE optimization unless we disable it 3048with \Y. ---/ 3049 3050/(*COMMIT)ABC/ 3051 ABCDEFG 3052 ** Failers 3053 DEFGABC\Y 3054 3055/^(ab (c+(*THEN)cd) | xyz)/x 3056 abcccd 3057 3058/^(ab (c+(*PRUNE)cd) | xyz)/x 3059 abcccd 3060 3061/^(ab (c+(*FAIL)cd) | xyz)/x 3062 abcccd 3063 3064/--- Perl 5.11 gets some of these wrong ---/ 3065 3066/(?>.(*ACCEPT))*?5/ 3067 abcde 3068 3069/(.(*ACCEPT))*?5/ 3070 abcde 3071 3072/(.(*ACCEPT))5/ 3073 abcde 3074 3075/(.(*ACCEPT))*5/ 3076 abcde 3077 3078/A\NB./BZ 3079 ACBD 3080 *** Failers 3081 A\nB 3082 ACB\n 3083 3084/A\NB./sBZ 3085 ACBD 3086 ACB\n 3087 *** Failers 3088 A\nB 3089 3090/A\NB/<crlf> 3091 A\nB 3092 A\rB 3093 ** Failers 3094 A\r\nB 3095 3096/\R+b/BZ 3097 3098/\R+\n/BZ 3099 3100/\R+\d/BZ 3101 3102/\d*\R/BZ 3103 3104/\s*\R/BZ 3105 \x20\x0a 3106 \x20\x0d 3107 \x20\x0d\x0a 3108 3109/\S*\R/BZ 3110 a\x0a 3111 3112/X\h*\R/BZ 3113 X\x20\x0a 3114 3115/X\H*\R/BZ 3116 X\x0d\x0a 3117 3118/X\H+\R/BZ 3119 X\x0d\x0a 3120 3121/X\H++\R/BZ 3122 X\x0d\x0a 3123 3124/-- Perl treats this one differently, not failing the second string. I believe 3125 that is a bug in Perl. --/ 3126 3127/^((abc|abcx)(*THEN)y|abcd)/ 3128 abcd 3129 *** Failers 3130 abcxy 3131 3132/(?<=abc)def/ 3133 abc\P\P 3134 3135/abc$/ 3136 abc 3137 abc\P 3138 abc\P\P 3139 3140/abc$/m 3141 abc 3142 abc\n 3143 abc\P\P 3144 abc\n\P\P 3145 abc\P 3146 abc\n\P 3147 3148/abc\z/ 3149 abc 3150 abc\P 3151 abc\P\P 3152 3153/abc\Z/ 3154 abc 3155 abc\P 3156 abc\P\P 3157 3158/abc\b/ 3159 abc 3160 abc\P 3161 abc\P\P 3162 3163/abc\B/ 3164 abc 3165 abc\P 3166 abc\P\P 3167 3168/.+/ 3169 abc\>0 3170 abc\>1 3171 abc\>2 3172 abc\>3 3173 abc\>4 3174 abc\>-4 3175 3176/^\cģ/ 3177 3178/(?P<abn>(?P=abn)xxx)/BZ 3179 3180/(a\1z)/BZ 3181 3182/(?P<abn>(?P=abn)(?<badstufxxx)/BZ 3183 3184/(?P<abn>(?P=axn)xxx)/BZ 3185 3186/(?P<abn>(?P=axn)xxx)(?<axn>yy)/BZ 3187 3188/-- These tests are here because Perl gets the first one wrong. --/ 3189 3190/(\R*)(.)/s 3191 \r\n 3192 \r\r\n\n\r 3193 \r\r\n\n\r\n 3194 3195/(\R)*(.)/s 3196 \r\n 3197 \r\r\n\n\r 3198 \r\r\n\n\r\n 3199 3200/((?>\r\n|\n|\x0b|\f|\r|\x85)*)(.)/s 3201 \r\n 3202 \r\r\n\n\r 3203 \r\r\n\n\r\n 3204 3205/-- --/ 3206 3207/^abc$/BZ 3208 3209/^abc$/BZm 3210 3211/^(a)*+(\w)/S 3212 aaaaX 3213 ** Failers 3214 aaaa 3215 3216/^(?:a)*+(\w)/S 3217 aaaaX 3218 ** Failers 3219 aaaa 3220 3221/(a)++1234/SDZ 3222 3223/([abc])++1234/SI 3224 3225/(?<=(abc)+)X/ 3226 3227/(^ab)/I 3228 3229/(^ab)++/I 3230 3231/(^ab|^)+/I 3232 3233/(^ab|^)++/I 3234 3235/(?:^ab)/I 3236 3237/(?:^ab)++/I 3238 3239/(?:^ab|^)+/I 3240 3241/(?:^ab|^)++/I 3242 3243/(.*ab)/I 3244 3245/(.*ab)++/I 3246 3247/(.*ab|.*)+/I 3248 3249/(.*ab|.*)++/I 3250 3251/(?:.*ab)/I 3252 3253/(?:.*ab)++/I 3254 3255/(?:.*ab|.*)+/I 3256 3257/(?:.*ab|.*)++/I 3258 3259/(?=a)[bcd]/I 3260 3261/((?=a))[bcd]/I 3262 3263/((?=a))+[bcd]/I 3264 3265/((?=a))++[bcd]/I 3266 3267/(?=a+)[bcd]/iI 3268 3269/(?=a+?)[bcd]/iI 3270 3271/(?=a++)[bcd]/iI 3272 3273/(?=a{3})[bcd]/iI 3274 3275/(abc)\1+/S 3276 3277/-- Perl doesn't get these right IMO (the 3rd is PCRE-specific) --/ 3278 3279/(?1)(?:(b(*ACCEPT))){0}/ 3280 b 3281 3282/(?1)(?:(b(*ACCEPT))){0}c/ 3283 bc 3284 ** Failers 3285 b 3286 3287/(?1)(?:((*ACCEPT))){0}c/ 3288 c 3289 c\N 3290 3291/^.*?(?(?=a)a|b(*THEN)c)/ 3292 ba 3293 3294/^.*?(?(?=a)a|bc)/ 3295 ba 3296 3297/^.*?(?(?=a)a(*THEN)b|c)/ 3298 ac 3299 3300/^.*?(?(?=a)a(*THEN)b)c/ 3301 ac 3302 3303/^.*?(a(*THEN)b)c/ 3304 aabc 3305 3306/^.*? (?1) c (?(DEFINE)(a(*THEN)b))/x 3307 aabc 3308 3309/^.*?(a(*THEN)b|z)c/ 3310 aabc 3311 3312/^.*?(z|a(*THEN)b)c/ 3313 aabc 3314 3315/-- --/ 3316 3317/-- These studied versions are here because they are not Perl-compatible; the 3318 studying means the mark is not seen. --/ 3319 3320/(*MARK:A)(*SKIP:B)(C|X)/KS 3321 C 3322 D 3323 3324/(*:A)A+(*SKIP:A)(B|Z)/KS 3325 AAAC 3326 3327/-- --/ 3328 3329"(?=a*(*ACCEPT)b)c" 3330 c 3331 c\N 3332 3333/(?1)c(?(DEFINE)((*ACCEPT)b))/ 3334 c 3335 c\N 3336 3337/(?>(*ACCEPT)b)c/ 3338 c 3339 c\N 3340 3341/(?:(?>(a)))+a%/++ 3342 %aa% 3343 3344/(a)b|ac/++SS 3345 ac\O3 3346 3347/(a)(b)x|abc/++ 3348 abc\O6 3349 3350/(a)bc|(a)(b)\2/ 3351 \O3abc 3352 \O4abc 3353 3354/(?(DEFINE)(a(?2)|b)(b(?1)|a))(?:(?1)|(?2))/SI 3355 3356/(a(?2)|b)(b(?1)|a)(?:(?1)|(?2))/SI 3357 3358/(a(?2)|b)(b(?1)|a)(?1)(?2)/SI 3359 3360/(abc)(?1)/SI 3361 3362/^(?>a)++/ 3363 aa\M 3364 aaaaaaaaa\M 3365 3366/(a)(?1)++/ 3367 aa\M 3368 aaaaaaaaa\M 3369 3370/(?:(foo)|(bar)|(baz))X/SS= 3371 bazfooX 3372 foobazbarX 3373 barfooX 3374 bazX 3375 foobarbazX 3376 bazfooX\O0 3377 bazfooX\O2 3378 bazfooX\O4 3379 bazfooX\O6 3380 bazfooX\O8 3381 bazfooX\O10 3382 3383/(?=abc){3}abc/BZ 3384 3385/(?=abc)+abc/BZ 3386 3387/(?=abc)++abc/BZ 3388 3389/(?=abc){0}xyz/BZ 3390 3391/(?=(a))?./BZ 3392 3393/(?=(a))??./BZ 3394 3395/^(?=(a)){0}b(?1)/BZ 3396 3397/(?(DEFINE)(a))?b(?1)/BZ 3398 3399/^(?=(?1))?[az]([abc])d/BZ 3400 3401/^(?!a){0}\w+/BZ 3402 3403/(?<=(abc))?xyz/BZ 3404 3405/[:a[:abc]b:]/BZ 3406 3407/((?2))((?1))/SS 3408 abc 3409 3410/((?(R2)a+|(?1)b))/SS 3411 aaaabcde 3412 3413/(?(R)a*(?1)|((?R))b)/SS 3414 aaaabcde 3415 3416/(a+|(?R)b)/ 3417 3418/^(a(*:A)(d|e(*:B))z|aeq)/C 3419 adz 3420 aez 3421 aeqwerty 3422 3423/.(*F)/ 3424 \P\Pabc 3425 3426/\btype\b\W*?\btext\b\W*?\bjavascript\b/IS 3427 3428/\btype\b\W*?\btext\b\W*?\bjavascript\b|\burl\b\W*?\bshell:|<input\b.*?\btype\b\W*?\bimage\b|\bonkeyup\b\W*?\=/IS 3429 3430/a(*SKIP)c|b(*ACCEPT)|/+SI 3431 a 3432 3433/a(*SKIP)c|b(*ACCEPT)cd(*ACCEPT)|x/SI 3434 ax 3435 3436'a*(*ACCEPT)b'+ 3437 \N\N 3438 abc\N\N 3439 bbb\N\N 3440 3441/(*ACCEPT)a/+I 3442 bax 3443 3444/z(*ACCEPT)a/+I 3445 baxzbx 3446 3447/a(?:.)*?a/ims 3448 \Mabbbbbbbbbbbbbbbbbbbbba 3449 3450/a(?:.(*THEN))*?a/ims 3451 \Mabbbbbbbbbbbbbbbbbbbbba 3452 3453/a(?:.(*THEN:ABC))*?a/ims 3454 \Mabbbbbbbbbbbbbbbbbbbbba 3455 3456/-- These tests are in agreement with development Perl 5.015, which has fixed 3457 some things, but they don't all work with 5.012, so they aren't in the 3458 Perl-compatible tests. Those after the first come from Perl's own test 3459 files. --/ 3460 3461/^((yes|no)(*THEN)(*F))?/ 3462 yes 3463 3464/(A (.*) C? (*THEN) | A D) (*FAIL)/x 3465AbcdCBefgBhiBqz 3466 3467/(A (.*) C? (*THEN) | A D) z/x 3468AbcdCBefgBhiBqz 3469 3470/(A (.*) C? (*THEN) | A D) \s* (*FAIL)/x 3471AbcdCBefgBhiBqz 3472 3473/(A (.*) C? (*THEN) | A D) \s* z/x 3474AbcdCBefgBhiBqz 3475 3476/(A (.*) (?:C|) (*THEN) | A D) (*FAIL)/x 3477AbcdCBefgBhiBqz 3478 3479/(A (.*) (?:C|) (*THEN) | A D) z/x 3480AbcdCBefgBhiBqz 3481 3482/(A (.*) C{0,6} (*THEN) | A D) (*FAIL)/x 3483AbcdCBefgBhiBqz 3484 3485/(A (.*) C{0,6} (*THEN) | A D) z/x 3486AbcdCBefgBhiBqz 3487 3488/(A (.*) (CE){0,6} (*THEN) | A D) (*FAIL)/x 3489AbcdCEBefgBhiBqz 3490 3491/(A (.*) (CE){0,6} (*THEN) | A D) z/x 3492AbcdCEBefgBhiBqz 3493 3494/(A (.*) (CE*){0,6} (*THEN) | A D) (*FAIL)/x 3495AbcdCBefgBhiBqz 3496 3497/(A (.*) (CE*){0,6} (*THEN) | A D) z/x 3498AbcdCBefgBhiBqz 3499 3500/-----------------------------------------------/ 3501 3502/^(?>a+)(?>(z+))\w/BZ 3503 aaaazzzzb 3504 ** Failers 3505 aazz 3506 3507/(.)(\1|a(?2))/ 3508 bab 3509 3510/\1|(.)(?R)\1/ 3511 cbbbc 3512 3513/(.)((?(1)c|a)|a(?2))/ 3514 baa 3515 3516/(?P<abn>(?P=abn)xxx)/BZ 3517 3518/(a\1z)/BZ 3519 3520/^(?>a+)(?>b+)(?>c+)(?>d+)(?>e+)/ 3521 \Maabbccddee 3522 3523/^(?>(a+))(?>(b+))(?>(c+))(?>(d+))(?>(e+))/ 3524 \Maabbccddee 3525 3526/^(?>(a+))(?>b+)(?>(c+))(?>d+)(?>(e+))/ 3527 \Maabbccddee 3528 3529/^a\x41z/<JS> 3530 aAz 3531 *** Failers 3532 ax41z 3533 3534/^a[m\x41]z/<JS> 3535 aAz 3536 3537/^a\x1z/<JS> 3538 ax1z 3539 3540/^a\u0041z/<JS> 3541 aAz 3542 *** Failers 3543 au0041z 3544 3545/^a[m\u0041]z/<JS> 3546 aAz 3547 3548/^a\u041z/<JS> 3549 au041z 3550 *** Failers 3551 aAz 3552 3553/^a\U0041z/<JS> 3554 aU0041z 3555 *** Failers 3556 aAz 3557 3558/(?(?=c)c|d)++Y/BZ 3559 3560/(?(?=c)c|d)*+Y/BZ 3561 3562/a[\NB]c/ 3563 aNc 3564 3565/a[B-\Nc]/ 3566 3567/(a)(?2){0,1999}?(b)/ 3568 3569/(a)(?(DEFINE)(b))(?2){0,1999}?(?2)/ 3570 3571/--- This test, with something more complicated than individual letters, causes 3572different behaviour in Perl. Perhaps it disables some optimization; no tag is 3573passed back for the failures, whereas in PCRE there is a tag. ---/ 3574 3575/(A|P)(*:A)(B|P) | (X|P)(X|P)(*:B)(Y|P)/xK 3576 AABC 3577 XXYZ 3578 ** Failers 3579 XAQQ 3580 XAQQXZZ 3581 AXQQQ 3582 AXXQQQ 3583 3584/-- Perl doesn't give marks for these, though it does if the alternatives are 3585replaced by single letters. --/ 3586 3587/(b|q)(*:m)f|a(*:n)w/K 3588 aw 3589 ** Failers 3590 abc 3591 3592/(q|b)(*:m)f|a(*:n)w/K 3593 aw 3594 ** Failers 3595 abc 3596 3597/-- After a partial match, the behaviour is as for a failure. --/ 3598 3599/^a(*:X)bcde/K 3600 abc\P 3601 3602/-- These are here because Perl doesn't return a mark, except for the first --/ 3603 3604/(?=(*:x))(q|)/K+ 3605 abc 3606 3607/(?=(*:x))((*:y)q|)/K+ 3608 abc 3609 3610/(?=(*:x))(?:(*:y)q|)/K+ 3611 abc 3612 3613/(?=(*:x))(?>(*:y)q|)/K+ 3614 abc 3615 3616/(?=a(*:x))(?!a(*:y)c)/K+ 3617 ab 3618 3619/(?=a(*:x))(?=a(*:y)c|)/K+ 3620 ab 3621 3622/(..)\1/ 3623 ab\P 3624 aba\P 3625 abab\P 3626 3627/(..)\1/i 3628 ab\P 3629 abA\P 3630 aBAb\P 3631 3632/(..)\1{2,}/ 3633 ab\P 3634 aba\P 3635 abab\P 3636 ababa\P 3637 ababab\P 3638 ababab\P\P 3639 abababa\P 3640 abababa\P\P 3641 3642/(..)\1{2,}/i 3643 ab\P 3644 aBa\P 3645 aBAb\P 3646 AbaBA\P 3647 abABAb\P 3648 aBAbaB\P\P 3649 abABabA\P 3650 abaBABa\P\P 3651 3652/(..)\1{2,}?x/i 3653 ab\P 3654 abA\P 3655 aBAb\P 3656 abaBA\P 3657 abAbaB\P 3658 abaBabA\P 3659 abAbABaBx\P 3660 3661/^(..)\1/ 3662 aba\P 3663 3664/^(..)\1{2,3}x/ 3665 aba\P 3666 ababa\P 3667 ababa\P\P 3668 abababx 3669 ababababx 3670 3671/^(..)\1{2,3}?x/ 3672 aba\P 3673 ababa\P 3674 ababa\P\P 3675 abababx 3676 ababababx 3677 3678/^(..)(\1{2,3})ab/ 3679 abababab 3680 3681/^\R/ 3682 \r\P 3683 \r\P\P 3684 3685/^\R{2,3}x/ 3686 \r\P 3687 \r\P\P 3688 \r\r\P 3689 \r\r\P\P 3690 \r\r\r\P 3691 \r\r\r\P\P 3692 \r\rx 3693 \r\r\rx 3694 3695/^\R{2,3}?x/ 3696 \r\P 3697 \r\P\P 3698 \r\r\P 3699 \r\r\P\P 3700 \r\r\r\P 3701 \r\r\r\P\P 3702 \r\rx 3703 \r\r\rx 3704 3705/^\R?x/ 3706 \r\P 3707 \r\P\P 3708 x 3709 \rx 3710 3711/^\R+x/ 3712 \r\P 3713 \r\P\P 3714 \r\n\P 3715 \r\n\P\P 3716 \rx 3717 3718/^a$/<CRLF> 3719 a\r\P 3720 a\r\P\P 3721 3722/^a$/m<CRLF> 3723 a\r\P 3724 a\r\P\P 3725 3726/^(a$|a\r)/<CRLF> 3727 a\r\P 3728 a\r\P\P 3729 3730/^(a$|a\r)/m<CRLF> 3731 a\r\P 3732 a\r\P\P 3733 3734/./<CRLF> 3735 \r\P 3736 \r\P\P 3737 3738/.{2,3}/<CRLF> 3739 \r\P 3740 \r\P\P 3741 \r\r\P 3742 \r\r\P\P 3743 \r\r\r\P 3744 \r\r\r\P\P 3745 3746/.{2,3}?/<CRLF> 3747 \r\P 3748 \r\P\P 3749 \r\r\P 3750 \r\r\P\P 3751 \r\r\r\P 3752 \r\r\r\P\P 3753 3754/-- These two are here because Perl does not match: it seems to allow the 3755COMMIT to escape from the assertion. --/ 3756 3757/(?=a(*COMMIT)b|ac)ac|ac/ 3758 ac 3759 3760/(?=a(*COMMIT)b|(ac)) ac | (a)c/x 3761 ac 3762 3763"AB(C(D))(E(F))?(?(?=\2)(?=\4))" 3764 ABCDGHI\O03 3765 3766/-- This one is here because Perl does not confine the *COMMIT to the 3767assertion, and therefore fails the entire subroutine call. --/ 3768 3769/((?=a(*COMMIT)b)ab|ac){0}(?:(?1)|a(c))/ 3770 ac 3771 3772/-- These are all run as real matches in test 1; here we are just checking the 3773settings of the anchored and startline bits. --/ 3774 3775/(?>.*?a)(?<=ba)/I 3776 3777/(?:.*?a)(?<=ba)/I 3778 3779/.*?a(*PRUNE)b/I 3780 3781/.*?a(*PRUNE)b/sI 3782 3783/^a(*PRUNE)b/sI 3784 3785/.*?a(*SKIP)b/I 3786 3787/(?>.*?a)b/sI 3788 3789/(?>.*?a)b/I 3790 3791/(?>^a)b/sI 3792 3793/(?>.*?)(?<=(abcd)|(wxyz))/I 3794 3795/(?>.*)(?<=(abcd)|(wxyz))/I 3796 3797"(?>.*)foo"I 3798 3799"(?>.*?)foo"I 3800 3801/(?>^abc)/mI 3802 3803/(?>.*abc)/mI 3804 3805/(?:.*abc)/mI 3806 3807/-- Check PCRE_STUDY_EXTRA_NEEDED --/ 3808 3809/.?/S-I 3810 3811/.?/S!I 3812 3813/-- End of testinput2 --/ 3814