Parent Directory
|
Revision Log
|
Patch
| revision 205 by ph10, Fri Aug 3 13:18:33 2007 UTC | revision 604 by ph10, Thu Jun 2 19:04:54 2011 UTC | |
|---|---|---|
| # | Line 1 | Line 1 |
| 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 | /-- Originally, the Perl >= 5.10 things were in here too, but now I have | |
| 9 | separated many (most?) of them out into test 11. However, there may still | |
| 10 | be some that were overlooked. --/ | |
| 11 | ||
| 12 | /(a)b|/I | /(a)b|/I |
| 13 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
| 14 | No options | No options |
| # | Line 40 No match | Line 51 No match |
| 51 | ||
| 52 | /a+bc/I | /a+bc/I |
| 53 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 54 | No options | No options |
| 55 | First char = 'a' | First char = 'a' |
| 56 | Need char = 'c' | Need char = 'c' |
| 57 | ||
| 58 | /a*bc/I | /a*bc/I |
| 59 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 60 | No options | No options |
| 61 | No first char | No first char |
| 62 | Need char = 'c' | Need char = 'c' |
| 63 | ||
| 64 | /a{3}bc/I | /a{3}bc/I |
| 65 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 66 | No options | No options |
| 67 | First char = 'a' | First char = 'a' |
| 68 | Need char = 'c' | Need char = 'c' |
| 69 | ||
| 70 | /(abc|a+z)/I | /(abc|a+z)/I |
| 71 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
| Partial matching not supported | ||
| 72 | No options | No options |
| 73 | First char = 'a' | First char = 'a' |
| 74 | No need char | No need char |
| # | Line 96 Failed: missing terminating ] for charac | Line 103 Failed: missing terminating ] for charac |
| 103 | /(?X)[\B]/ | /(?X)[\B]/ |
| 104 | Failed: invalid escape sequence in character class at offset 6 | Failed: invalid escape sequence in character class at offset 6 |
| 105 | ||
| 106 | /(?X)[\R]/ | |
| 107 | Failed: invalid escape sequence in character class at offset 6 | |
| 108 | ||
| 109 | /(?X)[\X]/ | |
| 110 | Failed: invalid escape sequence in character class at offset 6 | |
| 111 | ||
| 112 | /[\B]/BZ | |
| 113 | ------------------------------------------------------------------ | |
| 114 | Bra | |
| 115 | B | |
| 116 | Ket | |
| 117 | End | |
| 118 | ------------------------------------------------------------------ | |
| 119 | ||
| 120 | /[\R]/BZ | |
| 121 | ------------------------------------------------------------------ | |
| 122 | Bra | |
| 123 | R | |
| 124 | Ket | |
| 125 | End | |
| 126 | ------------------------------------------------------------------ | |
| 127 | ||
| 128 | /[\X]/BZ | |
| 129 | ------------------------------------------------------------------ | |
| 130 | Bra | |
| 131 | X | |
| 132 | Ket | |
| 133 | End | |
| 134 | ------------------------------------------------------------------ | |
| 135 | ||
| 136 | /[z-a]/ | /[z-a]/ |
| 137 | Failed: range out of order in character class at offset 3 | Failed: range out of order in character class at offset 3 |
| 138 | ||
| # | Line 109 Failed: missing ) at offset 4 | Line 146 Failed: missing ) at offset 4 |
| 146 | Failed: missing ) after comment at offset 7 | Failed: missing ) after comment at offset 7 |
| 147 | ||
| 148 | /(?z)abc/ | /(?z)abc/ |
| 149 | Failed: unrecognized character after (? at offset 2 | Failed: unrecognized character after (? or (?- at offset 2 |
| 150 | ||
| 151 | /.*b/I | /.*b/I |
| 152 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 153 | No options | No options |
| 154 | First char at start or follows newline | First char at start or follows newline |
| 155 | Need char = 'b' | Need char = 'b' |
| 156 | ||
| 157 | /.*?b/I | /.*?b/I |
| 158 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 159 | No options | No options |
| 160 | First char at start or follows newline | First char at start or follows newline |
| 161 | Need char = 'b' | Need char = 'b' |
| # | Line 140 Capturing subpattern count = 0 | Line 175 Capturing subpattern count = 0 |
| 175 | No options | No options |
| 176 | No first char | No first char |
| 177 | No need char | No need char |
| 178 | Subject length lower bound = 3 | |
| 179 | Starting byte set: c d e | Starting byte set: c d e |
| 180 | this sentence eventually mentions a cat | this sentence eventually mentions a cat |
| 181 | 0: cat | 0: cat |
| # | Line 151 Capturing subpattern count = 0 | Line 187 Capturing subpattern count = 0 |
| 187 | Options: caseless | Options: caseless |
| 188 | No first char | No first char |
| 189 | No need char | No need char |
| 190 | Subject length lower bound = 3 | |
| 191 | Starting byte set: C D E c d e | Starting byte set: C D E c d e |
| 192 | this sentence eventually mentions a CAT cat | this sentence eventually mentions a CAT cat |
| 193 | 0: CAT | 0: CAT |
| # | Line 162 Capturing subpattern count = 0 | Line 199 Capturing subpattern count = 0 |
| 199 | No options | No options |
| 200 | No first char | No first char |
| 201 | No need char | No need char |
| 202 | Subject length lower bound = 1 | |
| 203 | Starting byte set: a b c d | Starting byte set: a b c d |
| 204 | ||
| 205 | /(a|[^\dZ])/IS | /(a|[^\dZ])/IS |
| # | Line 169 Capturing subpattern count = 1 | Line 207 Capturing subpattern count = 1 |
| 207 | No options | No options |
| 208 | No first char | No first char |
| 209 | No need char | No need char |
| 210 | Subject length lower bound = 1 | |
| 211 | Starting byte set: \x00 \x01 \x02 \x03 \x04 \x05 \x06 \x07 \x08 \x09 \x0a | Starting byte set: \x00 \x01 \x02 \x03 \x04 \x05 \x06 \x07 \x08 \x09 \x0a |
| 212 | \x0b \x0c \x0d \x0e \x0f \x10 \x11 \x12 \x13 \x14 \x15 \x16 \x17 \x18 \x19 | \x0b \x0c \x0d \x0e \x0f \x10 \x11 \x12 \x13 \x14 \x15 \x16 \x17 \x18 \x19 |
| 213 | \x1a \x1b \x1c \x1d \x1e \x1f \x20 ! " # $ % & ' ( ) * + , - . / : ; < = > | \x1a \x1b \x1c \x1d \x1e \x1f \x20 ! " # $ % & ' ( ) * + , - . / : ; < = > |
| # | Line 189 Capturing subpattern count = 1 | Line 228 Capturing subpattern count = 1 |
| 228 | No options | No options |
| 229 | No first char | No first char |
| 230 | No need char | No need char |
| 231 | Subject length lower bound = 1 | |
| 232 | Starting byte set: \x09 \x0a \x0c \x0d \x20 a b | Starting byte set: \x09 \x0a \x0c \x0d \x20 a b |
| 233 | ||
| 234 | /(ab\2)/ | /(ab\2)/ |
| # | Line 310 No match | Line 350 No match |
| 350 | No match | No match |
| 351 | ||
| 352 | /ab(?z)cd/ | /ab(?z)cd/ |
| 353 | Failed: unrecognized character after (? at offset 4 | Failed: unrecognized character after (? or (?- at offset 4 |
| 354 | ||
| 355 | /^abc|def/I | /^abc|def/I |
| 356 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| # | Line 324 No need char | Line 364 No need char |
| 364 | ||
| 365 | /.*((abc)$|(def))/I | /.*((abc)$|(def))/I |
| 366 | Capturing subpattern count = 3 | Capturing subpattern count = 3 |
| Partial matching not supported | ||
| 367 | No options | No options |
| 368 | First char at start or follows newline | First char at start or follows newline |
| 369 | No need char | No need char |
| # | Line 338 No need char | Line 377 No need char |
| 377 | 2: <unset> | 2: <unset> |
| 378 | 3: def | 3: def |
| 379 | ||
| 380 | /abc/IP | /abc/P |
| 381 | abc | abc |
| 382 | 0: abc | 0: abc |
| 383 | *** Failers | *** Failers |
| 384 | No match: POSIX code 17: match failed | No match: POSIX code 17: match failed |
| 385 | ||
| 386 | /^abc|def/IP | /^abc|def/P |
| 387 | abcdef | abcdef |
| 388 | 0: abc | 0: abc |
| 389 | abcdef\B | abcdef\B |
| 390 | 0: def | 0: def |
| 391 | ||
| 392 | /.*((abc)$|(def))/IP | /.*((abc)$|(def))/P |
| 393 | defabc | defabc |
| 394 | 0: defabc | 0: defabc |
| 395 | 1: abc | 1: abc |
| # | Line 360 No match: POSIX code 17: match failed | Line 399 No match: POSIX code 17: match failed |
| 399 | 1: def | 1: def |
| 400 | 3: def | 3: def |
| 401 | ||
| 402 | /the quick brown fox/IP | /the quick brown fox/P |
| 403 | the quick brown fox | the quick brown fox |
| 404 | 0: the quick brown fox | 0: the quick brown fox |
| 405 | *** Failers | *** Failers |
| # | Line 368 No match: POSIX code 17: match failed | Line 407 No match: POSIX code 17: match failed |
| 407 | The Quick Brown Fox | The Quick Brown Fox |
| 408 | No match: POSIX code 17: match failed | No match: POSIX code 17: match failed |
| 409 | ||
| 410 | /the quick brown fox/IPi | /the quick brown fox/Pi |
| 411 | the quick brown fox | the quick brown fox |
| 412 | 0: the quick brown fox | 0: the quick brown fox |
| 413 | The Quick Brown Fox | The Quick Brown Fox |
| 414 | 0: The Quick Brown Fox | 0: The Quick Brown Fox |
| 415 | ||
| 416 | /abc.def/IP | /abc.def/P |
| 417 | *** Failers | *** Failers |
| 418 | No match: POSIX code 17: match failed | No match: POSIX code 17: match failed |
| 419 | abc\ndef | abc\ndef |
| 420 | No match: POSIX code 17: match failed | No match: POSIX code 17: match failed |
| 421 | ||
| 422 | /abc$/IP | /abc$/P |
| 423 | abc | abc |
| 424 | 0: abc | 0: abc |
| 425 | abc\n | abc\n |
| 426 | 0: abc | 0: abc |
| 427 | ||
| 428 | /(abc)\2/IP | /(abc)\2/P |
| 429 | Failed: POSIX code 15: bad back reference at offset 7 | Failed: POSIX code 15: bad back reference at offset 7 |
| 430 | ||
| 431 | /(abc\1)/IP | /(abc\1)/P |
| 432 | abc | abc |
| 433 | No match: POSIX code 17: match failed | No match: POSIX code 17: match failed |
| 434 | ||
| # | Line 401 Failed: missing terminating ] for charac | Line 440 Failed: missing terminating ] for charac |
| 440 | ||
| 441 | /[^aeiou ]{3,}/I | /[^aeiou ]{3,}/I |
| 442 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 443 | No options | No options |
| 444 | No first char | No first char |
| 445 | No need char | No need char |
| # | Line 410 No need char | Line 448 No need char |
| 448 | ||
| 449 | /<.*>/I | /<.*>/I |
| 450 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 451 | No options | No options |
| 452 | First char = '<' | First char = '<' |
| 453 | Need char = '>' | Need char = '>' |
| # | Line 419 Need char = '>' | Line 456 Need char = '>' |
| 456 | ||
| 457 | /<.*?>/I | /<.*?>/I |
| 458 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 459 | No options | No options |
| 460 | First char = '<' | First char = '<' |
| 461 | Need char = '>' | Need char = '>' |
| # | Line 428 Need char = '>' | Line 464 Need char = '>' |
| 464 | ||
| 465 | /<.*>/IU | /<.*>/IU |
| 466 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 467 | Options: ungreedy | Options: ungreedy |
| 468 | First char = '<' | First char = '<' |
| 469 | Need char = '>' | Need char = '>' |
| # | Line 437 Need char = '>' | Line 472 Need char = '>' |
| 472 | ||
| 473 | /(?U)<.*>/I | /(?U)<.*>/I |
| 474 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 475 | Options: ungreedy | Options: ungreedy |
| 476 | First char = '<' | First char = '<' |
| 477 | Need char = '>' | Need char = '>' |
| # | Line 446 Need char = '>' | Line 480 Need char = '>' |
| 480 | ||
| 481 | /<.*?>/IU | /<.*?>/IU |
| 482 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 483 | Options: ungreedy | Options: ungreedy |
| 484 | First char = '<' | First char = '<' |
| 485 | Need char = '>' | Need char = '>' |
| # | Line 455 Need char = '>' | Line 488 Need char = '>' |
| 488 | ||
| 489 | /={3,}/IU | /={3,}/IU |
| 490 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 491 | Options: ungreedy | Options: ungreedy |
| 492 | First char = '=' | First char = '=' |
| 493 | Need char = '=' | Need char = '=' |
| # | Line 464 Need char = '=' | Line 496 Need char = '=' |
| 496 | ||
| 497 | /(?U)={3,}?/I | /(?U)={3,}?/I |
| 498 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 499 | Options: ungreedy | Options: ungreedy |
| 500 | First char = '=' | First char = '=' |
| 501 | Need char = '=' | Need char = '=' |
| # | Line 522 No need char | Line 553 No need char |
| 553 | ||
| 554 | /(?s).*/I | /(?s).*/I |
| 555 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 556 | Options: anchored dotall | Options: anchored dotall |
| 557 | No first char | No first char |
| 558 | No need char | No need char |
| # | Line 532 Capturing subpattern count = 0 | Line 562 Capturing subpattern count = 0 |
| 562 | No options | No options |
| 563 | No first char | No first char |
| 564 | No need char | No need char |
| 565 | Subject length lower bound = 1 | |
| 566 | Starting byte set: a b c d | Starting byte set: a b c d |
| 567 | ||
| 568 | /(?i)[abcd]/IS | /(?i)[abcd]/IS |
| # | Line 539 Capturing subpattern count = 0 | Line 570 Capturing subpattern count = 0 |
| 570 | Options: caseless | Options: caseless |
| 571 | No first char | No first char |
| 572 | No need char | No need char |
| 573 | Subject length lower bound = 1 | |
| 574 | Starting byte set: A B C D a b c d | Starting byte set: A B C D a b c d |
| 575 | ||
| 576 | /(?m)[xy]|(b|c)/IS | /(?m)[xy]|(b|c)/IS |
| # | Line 546 Capturing subpattern count = 1 | Line 578 Capturing subpattern count = 1 |
| 578 | Options: multiline | Options: multiline |
| 579 | No first char | No first char |
| 580 | No need char | No need char |
| 581 | Subject length lower bound = 1 | |
| 582 | Starting byte set: b c x y | Starting byte set: b c x y |
| 583 | ||
| 584 | /(^a|^b)/Im | /(^a|^b)/Im |
| # | Line 584 Failed: syntax error in subpattern name | Line 617 Failed: syntax error in subpattern name |
| 617 | /((?s)blah)\s+\1/I | /((?s)blah)\s+\1/I |
| 618 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
| 619 | Max back reference = 1 | Max back reference = 1 |
| Partial matching not supported | ||
| 620 | No options | No options |
| 621 | First char = 'b' | First char = 'b' |
| 622 | Need char = 'h' | Need char = 'h' |
| # | Line 592 Need char = 'h' | Line 624 Need char = 'h' |
| 624 | /((?i)blah)\s+\1/I | /((?i)blah)\s+\1/I |
| 625 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
| 626 | Max back reference = 1 | Max back reference = 1 |
| Partial matching not supported | ||
| 627 | No options | No options |
| 628 | First char = 'b' (caseless) | First char = 'b' (caseless) |
| 629 | Need char = 'h' (caseless) | Need char = 'h' (caseless) |
| # | Line 601 Need char = 'h' (caseless) | Line 632 Need char = 'h' (caseless) |
| 632 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
| 633 | Bra | Bra |
| 634 | CBra 1 | CBra 1 |
| 635 | 01 Opt | /i b |
| NC b | ||
| 636 | Ket | Ket |
| 00 Opt | ||
| 637 | Ket | Ket |
| 638 | End | End |
| 639 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
| # | Line 612 Capturing subpattern count = 1 | Line 641 Capturing subpattern count = 1 |
| 641 | No options | No options |
| 642 | First char = 'b' (caseless) | First char = 'b' (caseless) |
| 643 | No need char | No need char |
| 644 | Study returned NULL | Subject length lower bound = 1 |
| 645 | No set of starting bytes | |
| 646 | ||
| 647 | /(a*b|(?i:c*(?-i)d))/IS | /(a*b|(?i:c*(?-i)d))/IS |
| 648 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
| Partial matching not supported | ||
| 649 | No options | No options |
| 650 | No first char | No first char |
| 651 | No need char | No need char |
| 652 | Subject length lower bound = 1 | |
| 653 | Starting byte set: C a b c d | Starting byte set: C a b c d |
| 654 | ||
| 655 | /a$/I | /a$/I |
| # | Line 668 Need char = 'c' | Line 698 Need char = 'c' |
| 698 | ||
| 699 | /^((a+)(?U)([ab]+)(?-U)([bc]+)(\w*))/I | /^((a+)(?U)([ab]+)(?-U)([bc]+)(\w*))/I |
| 700 | Capturing subpattern count = 5 | Capturing subpattern count = 5 |
| Partial matching not supported | ||
| 701 | Options: anchored | Options: anchored |
| 702 | No first char | No first char |
| 703 | No need char | No need char |
| # | Line 685 Capturing subpattern count = 0 | Line 714 Capturing subpattern count = 0 |
| 714 | No options | No options |
| 715 | No first char | No first char |
| 716 | No need char | No need char |
| 717 | Subject length lower bound = 1 | |
| 718 | Starting byte set: a b | Starting byte set: a b |
| 719 | ||
| 720 | /(?<!foo)(alpha|omega)/IS | /(?<!foo)(alpha|omega)/IS |
| # | Line 692 Capturing subpattern count = 1 | Line 722 Capturing subpattern count = 1 |
| 722 | No options | No options |
| 723 | No first char | No first char |
| 724 | Need char = 'a' | Need char = 'a' |
| 725 | Subject length lower bound = 5 | |
| 726 | Starting byte set: a o | Starting byte set: a o |
| 727 | ||
| 728 | /(?!alphabet)[ab]/IS | /(?!alphabet)[ab]/IS |
| # | Line 699 Capturing subpattern count = 0 | Line 730 Capturing subpattern count = 0 |
| 730 | No options | No options |
| 731 | No first char | No first char |
| 732 | No need char | No need char |
| 733 | Subject length lower bound = 1 | |
| 734 | Starting byte set: a b | Starting byte set: a b |
| 735 | ||
| 736 | /(?<=foo\n)^bar/Im | /(?<=foo\n)^bar/Im |
| 737 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| 738 | Contains explicit CR or LF match | |
| 739 | Options: multiline | Options: multiline |
| 740 | No first char | No first char |
| 741 | Need char = 'r' | Need char = 'r' |
| # | Line 719 No match | Line 752 No match |
| 752 | ||
| 753 | /^(?<=foo\n)bar/Im | /^(?<=foo\n)bar/Im |
| 754 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| 755 | Contains explicit CR or LF match | |
| 756 | Options: multiline | Options: multiline |
| 757 | First char at start or follows newline | First char at start or follows newline |
| 758 | Need char = 'r' | Need char = 'r' |
| # | Line 782 No need char | Line 816 No need char |
| 816 | ||
| 817 | /(?>.*)(?<=(abcd)|(xyz))/I | /(?>.*)(?<=(abcd)|(xyz))/I |
| 818 | Capturing subpattern count = 2 | Capturing subpattern count = 2 |
| Partial matching not supported | ||
| 819 | No options | No options |
| 820 | First char at start or follows newline | First char at start or follows newline |
| 821 | No need char | No need char |
| # | Line 852 No match | Line 885 No match |
| 885 | a | a |
| 886 | No match | No match |
| 887 | ||
| 888 | /This one is here because I think Perl 5.005_02 gets the setting of $1 wrong/I | /This one is here because Perl behaves differently; see also the following/I |
| 889 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| 890 | No options | No options |
| 891 | First char = 'T' | First char = 'T' |
| # | Line 864 Max back reference = 1 | Line 897 Max back reference = 1 |
| 897 | Options: anchored | Options: anchored |
| 898 | No first char | No first char |
| 899 | No need char | No need char |
| 900 | aaaa | |
| 901 | No match | |
| 902 | aaaaaa | aaaaaa |
| 903 | 0: aaaaaa | No match |
| 904 | 1: aa | |
| 905 | /Perl does not fail these two for the final subjects. Neither did PCRE until/ | |
| 906 | /release 8.01. The problem is in backtracking into a subpattern that contains/ | |
| 907 | No match | |
| 908 | /a recursive reference to itself. PCRE has now made these into atomic patterns./ | |
| 909 | No match | |
| 910 | ||
| 911 | /^(xa|=?\1a){2}$/ | |
| 912 | xa=xaa | |
| 913 | 0: xa=xaa | |
| 914 | 1: =xaa | |
| 915 | ** Failers | |
| 916 | No match | |
| 917 | xa=xaaa | |
| 918 | No match | |
| 919 | ||
| 920 | /^(xa|=?\1a)+$/ | |
| 921 | xa=xaa | |
| 922 | 0: xa=xaa | |
| 923 | 1: =xaa | |
| 924 | ** Failers | |
| 925 | No match | |
| 926 | xa=xaaa | |
| 927 | No match | |
| 928 | ||
| 929 | /These are syntax tests from Perl 5.005/I | /These are syntax tests from Perl 5.005/I |
| 930 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| # | Line 944 Failed: missing ) at offset 4 | Line 1002 Failed: missing ) at offset 4 |
| 1002 | Failed: unrecognized character after (?< at offset 3 | Failed: unrecognized character after (?< at offset 3 |
| 1003 | ||
| 1004 | /a(?{)b/ | /a(?{)b/ |
| 1005 | Failed: unrecognized character after (? at offset 3 | Failed: unrecognized character after (? or (?- at offset 3 |
| 1006 | ||
| 1007 | /a(?{{})b/ | /a(?{{})b/ |
| 1008 | Failed: unrecognized character after (? at offset 3 | Failed: unrecognized character after (? or (?- at offset 3 |
| 1009 | ||
| 1010 | /a(?{}})b/ | /a(?{}})b/ |
| 1011 | Failed: unrecognized character after (? at offset 3 | Failed: unrecognized character after (? or (?- at offset 3 |
| 1012 | ||
| 1013 | /a(?{"{"})b/ | /a(?{"{"})b/ |
| 1014 | Failed: unrecognized character after (? at offset 3 | Failed: unrecognized character after (? or (?- at offset 3 |
| 1015 | ||
| 1016 | /a(?{"{"}})b/ | /a(?{"{"}})b/ |
| 1017 | Failed: unrecognized character after (? at offset 3 | Failed: unrecognized character after (? or (?- at offset 3 |
| 1018 | ||
| 1019 | /(?(1?)a|b)/ | /(?(1?)a|b)/ |
| 1020 | Failed: malformed number or name after (?( at offset 4 | Failed: malformed number or name after (?( at offset 4 |
| 1021 | ||
| /(?(1)a|b|c)/ | ||
| Failed: conditional group contains more than two branches at offset 10 | ||
| 1022 | /[a[:xyz:/ | /[a[:xyz:/ |
| 1023 | Failed: missing terminating ] for character class at offset 8 | Failed: missing terminating ] for character class at offset 8 |
| 1024 | ||
| # | Line 1004 copy substring 5 failed -7 | Line 1059 copy substring 5 failed -7 |
| 1059 | ||
| 1060 | /(.{20})/I | /(.{20})/I |
| 1061 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
| Partial matching not supported | ||
| 1062 | No options | No options |
| 1063 | No first char | No first char |
| 1064 | No need char | No need char |
| # | Line 1022 No need char | Line 1076 No need char |
| 1076 | ||
| 1077 | /(.{15})/I | /(.{15})/I |
| 1078 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
| Partial matching not supported | ||
| 1079 | No options | No options |
| 1080 | No first char | No first char |
| 1081 | No need char | No need char |
| # | Line 1037 No need char | Line 1090 No need char |
| 1090 | ||
| 1091 | /(.{16})/I | /(.{16})/I |
| 1092 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
| Partial matching not supported | ||
| 1093 | No options | No options |
| 1094 | No first char | No first char |
| 1095 | No need char | No need char |
| # | Line 1104 No need char | Line 1156 No need char |
| 1156 | )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ | )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ |
| 1157 | )?)?)?)?)?)?)?)?)?otherword/I | )?)?)?)?)?)?)?)?)?otherword/I |
| 1158 | Capturing subpattern count = 8 | Capturing subpattern count = 8 |
| 1159 | Partial matching not supported | Contains explicit CR or LF match |
| 1160 | No options | No options |
| 1161 | First char = 'w' | First char = 'w' |
| 1162 | Need char = 'd' | Need char = 'd' |
| # | Line 1118 Need char = 'd' | Line 1170 Need char = 'd' |
| 1170 | End | End |
| 1171 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
| 1172 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 1173 | No options | No options |
| 1174 | First char at start or follows newline | First char at start or follows newline |
| 1175 | Need char = 'X' | Need char = 'X' |
| # | Line 1126 Need char = 'X' | Line 1177 Need char = 'X' |
| 1177 | /.*X/IDZs | /.*X/IDZs |
| 1178 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
| 1179 | Bra | Bra |
| 1180 | Any* | AllAny* |
| 1181 | X | X |
| 1182 | Ket | Ket |
| 1183 | End | End |
| 1184 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
| 1185 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 1186 | Options: anchored dotall | Options: anchored dotall |
| 1187 | No first char | No first char |
| 1188 | Need char = 'X' | Need char = 'X' |
| # | Line 1151 Need char = 'X' | Line 1201 Need char = 'X' |
| 1201 | End | End |
| 1202 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
| 1203 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
| Partial matching not supported | ||
| 1204 | No options | No options |
| 1205 | First char at start or follows newline | First char at start or follows newline |
| 1206 | No need char | No need char |
| # | Line 1160 No need char | Line 1209 No need char |
| 1209 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
| 1210 | Bra | Bra |
| 1211 | CBra 1 | CBra 1 |
| 1212 | Any* | AllAny* |
| 1213 | X | X |
| 1214 | Alt | Alt |
| 1215 | ^ | ^ |
| # | Line 1170 No need char | Line 1219 No need char |
| 1219 | End | End |
| 1220 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
| 1221 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
| Partial matching not supported | ||
| 1222 | Options: anchored dotall | Options: anchored dotall |
| 1223 | No first char | No first char |
| 1224 | No need char | No need char |
| # | Line 1179 No need char | Line 1227 No need char |
| 1227 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
| 1228 | Bra | Bra |
| 1229 | CBra 1 | CBra 1 |
| 1230 | Any* | AllAny* |
| 1231 | X | X |
| 1232 | Alt | Alt |
| 1233 | ^ | ^ |
| # | Line 1189 No need char | Line 1237 No need char |
| 1237 | End | End |
| 1238 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
| 1239 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
| Partial matching not supported | ||
| 1240 | Options: anchored dotall | Options: anchored dotall |
| 1241 | No first char | No first char |
| 1242 | No need char | No need char |
| # | Line 1198 No need char | Line 1245 No need char |
| 1245 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
| 1246 | Bra | Bra |
| 1247 | Bra | Bra |
| 1248 | 04 Opt | AllAny* |
| Any* | ||
| 1249 | X | X |
| 1250 | Alt | Alt |
| 04 Opt | ||
| 1251 | ^ | ^ |
| 1252 | B | B |
| 1253 | Ket | Ket |
| 00 Opt | ||
| 1254 | Ket | Ket |
| 1255 | End | End |
| 1256 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
| 1257 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| 1258 | Partial matching not supported | Options: anchored |
| 1259 | No options | No first char |
| First char at start or follows newline | ||
| 1260 | No need char | No need char |
| 1261 | ||
| 1262 | /\Biss\B/I+ | /\Biss\B/I+ |
| # | Line 1296 No need char | Line 1339 No need char |
| 1339 | ||
| 1340 | /.*iss/Ig+ | /.*iss/Ig+ |
| 1341 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 1342 | No options | No options |
| 1343 | First char at start or follows newline | First char at start or follows newline |
| 1344 | Need char = 's' | Need char = 's' |
| # | Line 1347 No need char | Line 1389 No need char |
| 1389 | ||
| 1390 | /^ab\n/Ig+ | /^ab\n/Ig+ |
| 1391 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| 1392 | Contains explicit CR or LF match | |
| 1393 | Options: anchored | Options: anchored |
| 1394 | No first char | No first char |
| 1395 | No need char | No need char |
| # | Line 1356 No need char | Line 1399 No need char |
| 1399 | ||
| 1400 | /^ab\n/Img+ | /^ab\n/Img+ |
| 1401 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| 1402 | Contains explicit CR or LF match | |
| 1403 | Options: multiline | Options: multiline |
| 1404 | First char at start or follows newline | First char at start or follows newline |
| 1405 | Need char = 10 | Need char = 10 |
| # | Line 1397 Need char = 'c' | Line 1441 Need char = 'c' |
| 1441 | ||
| 1442 | /a*/I | /a*/I |
| 1443 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 1444 | No options | No options |
| 1445 | No first char | No first char |
| 1446 | No need char | No need char |
| 1447 | ||
| 1448 | /a+/I | /a+/I |
| 1449 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 1450 | No options | No options |
| 1451 | First char = 'a' | First char = 'a' |
| 1452 | No need char | No need char |
| 1453 | ||
| 1454 | /(baa|a+)/I | /(baa|a+)/I |
| 1455 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
| Partial matching not supported | ||
| 1456 | No options | No options |
| 1457 | No first char | No first char |
| 1458 | Need char = 'a' | Need char = 'a' |
| 1459 | ||
| 1460 | /a{0,3}/I | /a{0,3}/I |
| 1461 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 1462 | No options | No options |
| 1463 | No first char | No first char |
| 1464 | No need char | No need char |
| 1465 | ||
| 1466 | /baa{3,}/I | /baa{3,}/I |
| 1467 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 1468 | No options | No options |
| 1469 | First char = 'b' | First char = 'b' |
| 1470 | Need char = 'a' | Need char = 'a' |
| 1471 | ||
| 1472 | /"([^\\"]+|\\.)*"/I | /"([^\\"]+|\\.)*"/I |
| 1473 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
| Partial matching not supported | ||
| 1474 | No options | No options |
| 1475 | First char = '"' | First char = '"' |
| 1476 | Need char = '"' | Need char = '"' |
| # | Line 1487 Need char = 'b' | Line 1525 Need char = 'b' |
| 1525 | ||
| 1526 | /abc*/I | /abc*/I |
| 1527 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 1528 | No options | No options |
| 1529 | First char = 'a' | First char = 'a' |
| 1530 | Need char = 'b' | Need char = 'b' |
| 1531 | ||
| 1532 | /ab.c*/I | /ab.c*/I |
| 1533 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 1534 | No options | No options |
| 1535 | First char = 'a' | First char = 'a' |
| 1536 | Need char = 'b' | Need char = 'b' |
| 1537 | ||
| 1538 | /a.c*/I | /a.c*/I |
| 1539 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 1540 | No options | No options |
| 1541 | First char = 'a' | First char = 'a' |
| 1542 | No need char | No need char |
| 1543 | ||
| 1544 | /.c*/I | /.c*/I |
| 1545 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 1546 | No options | No options |
| 1547 | No first char | No first char |
| 1548 | No need char | No need char |
| 1549 | ||
| 1550 | /ac*/I | /ac*/I |
| 1551 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 1552 | No options | No options |
| 1553 | First char = 'a' | First char = 'a' |
| 1554 | No need char | No need char |
| 1555 | ||
| 1556 | /(a.c*|b.c*)/I | /(a.c*|b.c*)/I |
| 1557 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
| Partial matching not supported | ||
| 1558 | No options | No options |
| 1559 | No first char | No first char |
| 1560 | No need char | No need char |
| 1561 | ||
| 1562 | /a.c*|aba/I | /a.c*|aba/I |
| 1563 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 1564 | No options | No options |
| 1565 | First char = 'a' | First char = 'a' |
| 1566 | No need char | No need char |
| 1567 | ||
| 1568 | /.+a/I | /.+a/I |
| 1569 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 1570 | No options | No options |
| 1571 | No first char | No first char |
| 1572 | Need char = 'a' | Need char = 'a' |
| 1573 | ||
| 1574 | /(?=abcda)a.*/I | /(?=abcda)a.*/I |
| 1575 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 1576 | No options | No options |
| 1577 | First char = 'a' | First char = 'a' |
| 1578 | Need char = 'a' | Need char = 'a' |
| 1579 | ||
| 1580 | /(?=a)a.*/I | /(?=a)a.*/I |
| 1581 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 1582 | No options | No options |
| 1583 | First char = 'a' | First char = 'a' |
| 1584 | No need char | No need char |
| # | Line 1563 No need char | Line 1591 No need char |
| 1591 | ||
| 1592 | /a\d*/I | /a\d*/I |
| 1593 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 1594 | No options | No options |
| 1595 | First char = 'a' | First char = 'a' |
| 1596 | No need char | No need char |
| 1597 | ||
| 1598 | /ab\d*/I | /ab\d*/I |
| 1599 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 1600 | No options | No options |
| 1601 | First char = 'a' | First char = 'a' |
| 1602 | Need char = 'b' | Need char = 'b' |
| # | Line 1589 Need char = 'd' | Line 1615 Need char = 'd' |
| 1615 | ||
| 1616 | /ab\d+/I | /ab\d+/I |
| 1617 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 1618 | No options | No options |
| 1619 | First char = 'a' | First char = 'a' |
| 1620 | Need char = 'b' | Need char = 'b' |
| 1621 | ||
| 1622 | /a(?(1)b)/I | /a(?(1)b)(.)/I |
| 1623 | Capturing subpattern count = 0 | Capturing subpattern count = 1 |
| 1624 | No options | No options |
| 1625 | First char = 'a' | First char = 'a' |
| 1626 | No need char | No need char |
| 1627 | ||
| 1628 | /a(?(1)bag|big)/I | /a(?(1)bag|big)(.)/I |
| 1629 | Capturing subpattern count = 0 | Capturing subpattern count = 1 |
| 1630 | No options | No options |
| 1631 | First char = 'a' | First char = 'a' |
| 1632 | Need char = 'g' | Need char = 'g' |
| 1633 | ||
| 1634 | /a(?(1)bag|big)*/I | /a(?(1)bag|big)*(.)/I |
| 1635 | Capturing subpattern count = 0 | Capturing subpattern count = 1 |
| 1636 | No options | No options |
| 1637 | First char = 'a' | First char = 'a' |
| 1638 | No need char | No need char |
| 1639 | ||
| 1640 | /a(?(1)bag|big)+/I | /a(?(1)bag|big)+(.)/I |
| 1641 | Capturing subpattern count = 0 | Capturing subpattern count = 1 |
| 1642 | No options | No options |
| 1643 | First char = 'a' | First char = 'a' |
| 1644 | Need char = 'g' | Need char = 'g' |
| 1645 | ||
| 1646 | /a(?(1)b..|b..)/I | /a(?(1)b..|b..)(.)/I |
| 1647 | Capturing subpattern count = 0 | Capturing subpattern count = 1 |
| 1648 | No options | No options |
| 1649 | First char = 'a' | First char = 'a' |
| 1650 | Need char = 'b' | Need char = 'b' |
| # | Line 1664 No need char | Line 1689 No need char |
| 1689 | \Nabc | \Nabc |
| 1690 | No match | No match |
| 1691 | ||
| 1692 | /a*(b+)(z)(z)/IP | /a*(b+)(z)(z)/P |
| 1693 | aaaabbbbzzzz | aaaabbbbzzzz |
| 1694 | 0: aaaabbbbzz | 0: aaaabbbbzz |
| 1695 | 1: bbbb | 1: bbbb |
| # | Line 1696 Capturing subpattern count = 0 | Line 1721 Capturing subpattern count = 0 |
| 1721 | Options: anchored | Options: anchored |
| 1722 | No first char | No first char |
| 1723 | Need char = 'd' | Need char = 'd' |
| 1724 | Study returned NULL | Subject length lower bound = 4 |
| 1725 | No set of starting bytes | |
| 1726 | ||
| 1727 | /\( # ( at start | /\( # ( at start |
| 1728 | (?: # Non-capturing bracket | (?: # Non-capturing bracket |
| # | Line 1707 Study returned NULL | Line 1733 Study returned NULL |
| 1733 | \) # Closing ) | \) # Closing ) |
| 1734 | /Ix | /Ix |
| 1735 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 1736 | Options: extended | Options: extended |
| 1737 | First char = '(' | First char = '(' |
| 1738 | Need char = ')' | Need char = ')' |
| # | Line 1736 No match | Line 1761 No match |
| 1761 | ||
| 1762 | /\( ( (?>[^()]+) | (?R) )* \) /Ixg | /\( ( (?>[^()]+) | (?R) )* \) /Ixg |
| 1763 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
| Partial matching not supported | ||
| 1764 | Options: extended | Options: extended |
| 1765 | First char = '(' | First char = '(' |
| 1766 | Need char = ')' | Need char = ')' |
| # | Line 1751 Need char = ')' | Line 1775 Need char = ')' |
| 1775 | ||
| 1776 | /\( (?: (?>[^()]+) | (?R) ) \) /Ix | /\( (?: (?>[^()]+) | (?R) ) \) /Ix |
| 1777 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 1778 | Options: extended | Options: extended |
| 1779 | First char = '(' | First char = '(' |
| 1780 | Need char = ')' | Need char = ')' |
| # | Line 1770 No match | Line 1793 No match |
| 1793 | ||
| 1794 | /\( (?: (?>[^()]+) | (?R) )? \) /Ix | /\( (?: (?>[^()]+) | (?R) )? \) /Ix |
| 1795 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 1796 | Options: extended | Options: extended |
| 1797 | First char = '(' | First char = '(' |
| 1798 | Need char = ')' | Need char = ')' |
| # | Line 1781 Need char = ')' | Line 1803 Need char = ')' |
| 1803 | ||
| 1804 | /\( ( (?>[^()]+) | (?R) )* \) /Ix | /\( ( (?>[^()]+) | (?R) )* \) /Ix |
| 1805 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
| Partial matching not supported | ||
| 1806 | Options: extended | Options: extended |
| 1807 | First char = '(' | First char = '(' |
| 1808 | Need char = ')' | Need char = ')' |
| # | Line 1791 Need char = ')' | Line 1812 Need char = ')' |
| 1812 | ||
| 1813 | /\( ( ( (?>[^()]+) | (?R) )* ) \) /Ix | /\( ( ( (?>[^()]+) | (?R) )* ) \) /Ix |
| 1814 | Capturing subpattern count = 2 | Capturing subpattern count = 2 |
| Partial matching not supported | ||
| 1815 | Options: extended | Options: extended |
| 1816 | First char = '(' | First char = '(' |
| 1817 | Need char = ')' | Need char = ')' |
| # | Line 1802 Need char = ')' | Line 1822 Need char = ')' |
| 1822 | ||
| 1823 | /\( (123)? ( ( (?>[^()]+) | (?R) )* ) \) /Ix | /\( (123)? ( ( (?>[^()]+) | (?R) )* ) \) /Ix |
| 1824 | Capturing subpattern count = 3 | Capturing subpattern count = 3 |
| Partial matching not supported | ||
| 1825 | Options: extended | Options: extended |
| 1826 | First char = '(' | First char = '(' |
| 1827 | Need char = ')' | Need char = ')' |
| # | Line 1819 Need char = ')' | Line 1838 Need char = ')' |
| 1838 | ||
| 1839 | /\( ( (123)? ( (?>[^()]+) | (?R) )* ) \) /Ix | /\( ( (123)? ( (?>[^()]+) | (?R) )* ) \) /Ix |
| 1840 | Capturing subpattern count = 3 | Capturing subpattern count = 3 |
| Partial matching not supported | ||
| 1841 | Options: extended | Options: extended |
| 1842 | First char = '(' | First char = '(' |
| 1843 | Need char = ')' | Need char = ')' |
| # | Line 1836 Need char = ')' | Line 1854 Need char = ')' |
| 1854 | ||
| 1855 | /\( (((((((((( ( (?>[^()]+) | (?R) )* )))))))))) \) /Ix | /\( (((((((((( ( (?>[^()]+) | (?R) )* )))))))))) \) /Ix |
| 1856 | Capturing subpattern count = 11 | Capturing subpattern count = 11 |
| Partial matching not supported | ||
| 1857 | Options: extended | Options: extended |
| 1858 | First char = '(' | First char = '(' |
| 1859 | Need char = ')' | Need char = ')' |
| # | Line 1856 Need char = ')' | Line 1873 Need char = ')' |
| 1873 | ||
| 1874 | /\( ( ( (?>[^()<>]+) | ((?>[^()]+)) | (?R) )* ) \) /Ix | /\( ( ( (?>[^()<>]+) | ((?>[^()]+)) | (?R) )* ) \) /Ix |
| 1875 | Capturing subpattern count = 3 | Capturing subpattern count = 3 |
| Partial matching not supported | ||
| 1876 | Options: extended | Options: extended |
| 1877 | First char = '(' | First char = '(' |
| 1878 | Need char = ')' | Need char = ')' |
| # | Line 1864 Need char = ')' | Line 1880 Need char = ')' |
| 1880 | 0: (abcd(xyz<p>qrs)123) | 0: (abcd(xyz<p>qrs)123) |
| 1881 | 1: abcd(xyz<p>qrs)123 | 1: abcd(xyz<p>qrs)123 |
| 1882 | 2: 123 | 2: 123 |
| 3: <unset> | ||
| 1883 | ||
| 1884 | /\( ( ( (?>[^()]+) | ((?R)) )* ) \) /Ix | /\( ( ( (?>[^()]+) | ((?R)) )* ) \) /Ix |
| 1885 | Capturing subpattern count = 3 | Capturing subpattern count = 3 |
| Partial matching not supported | ||
| 1886 | Options: extended | Options: extended |
| 1887 | First char = '(' | First char = '(' |
| 1888 | Need char = ')' | Need char = ')' |
| # | Line 1900 No need char | Line 1914 No need char |
| 1914 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
| 1915 | Bra | Bra |
| 1916 | ^ | ^ |
| 1917 | [\x00-/:-@[-`{-\xff] | [\x00-/:-@[-`{-\xff] (neg) |
| 1918 | Ket | Ket |
| 1919 | End | End |
| 1920 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
| # | Line 1926 No need char | Line 1940 No need char |
| 1940 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
| 1941 | Bra | Bra |
| 1942 | ^ | ^ |
| 1943 | [\x00-@[-`{-\xff] | [\x00-@[-`{-\xff] (neg) |
| 1944 | Ket | Ket |
| 1945 | End | End |
| 1946 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
| # | Line 1940 Capturing subpattern count = 0 | Line 1954 Capturing subpattern count = 0 |
| 1954 | No options | No options |
| 1955 | No first char | No first char |
| 1956 | No need char | No need char |
| 1957 | Subject length lower bound = 1 | |
| 1958 | Starting byte set: A B C D E F G H I J K L M N O P Q R S T U V W X Y Z | Starting byte set: A B C D E F G H I J K L M N O P Q R S T U V W X Y Z |
| 1959 | _ a b c d e f g h i j k l m n o p q r s t u v w x y z | _ a b c d e f g h i j k l m n o p q r s t u v w x y z |
| 1960 | ||
| # | Line 1960 No need char | Line 1975 No need char |
| 1975 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
| 1976 | Bra | Bra |
| 1977 | ^ | ^ |
| 1978 | [\x80-\xff] | [\x80-\xff] (neg) |
| 1979 | Ket | Ket |
| 1980 | End | End |
| 1981 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
| # | Line 1986 No need char | Line 2001 No need char |
| 2001 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
| 2002 | Bra | Bra |
| 2003 | ^ | ^ |
| 2004 | [\x00-\x08\x0a-\x1f!-\xff] | [\x00-\x08\x0a-\x1f!-\xff] (neg) |
| 2005 | Ket | Ket |
| 2006 | End | End |
| 2007 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
| # | Line 1997 No need char | Line 2012 No need char |
| 2012 | ||
| 2013 | /[\n\x0b\x0c\x0d[:blank:]]/IS | /[\n\x0b\x0c\x0d[:blank:]]/IS |
| 2014 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| 2015 | Contains explicit CR or LF match | |
| 2016 | No options | No options |
| 2017 | No first char | No first char |
| 2018 | No need char | No need char |
| 2019 | Subject length lower bound = 1 | |
| 2020 | Starting byte set: \x09 \x0a \x0b \x0c \x0d \x20 | Starting byte set: \x09 \x0a \x0b \x0c \x0d \x20 |
| 2021 | ||
| 2022 | /^[[:cntrl:]]/DZ | /^[[:cntrl:]]/DZ |
| # | Line 2136 No need char | Line 2153 No need char |
| 2153 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
| 2154 | Bra | Bra |
| 2155 | ^ | ^ |
| 2156 | [ -~\x80-\xff] | [ -~\x80-\xff] (neg) |
| 2157 | Ket | Ket |
| 2158 | End | End |
| 2159 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
| # | Line 2149 No need char | Line 2166 No need char |
| 2166 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
| 2167 | Bra | Bra |
| 2168 | ^ | ^ |
| 2169 | [\x00-/12:-\xff] | [\x00-/12:-\xff] (neg) |
| 2170 | Ket | Ket |
| 2171 | End | End |
| 2172 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
| # | Line 2162 No need char | Line 2179 No need char |
| 2179 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
| 2180 | Bra | Bra |
| 2181 | ^ | ^ |
| 2182 | [\x00-\x08\x0a-\x1f!-\xff] | [\x00-\x08\x0a-\x1f!-\xff] (neg) |
| 2183 | Ket | Ket |
| 2184 | End | End |
| 2185 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
| # | Line 2246 Need char = 'd' | Line 2263 Need char = 'd' |
| 2263 | /(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\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 | /(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\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 |
| 2264 | Capturing subpattern count = 271 | Capturing subpattern count = 271 |
| 2265 | Max back reference = 270 | Max back reference = 270 |
| Partial matching not supported | ||
| 2266 | No options | No options |
| 2267 | No first char | No first char |
| 2268 | No need char | No need char |
| # | Line 2730 No need char | Line 2746 No need char |
| 2746 | /[\S]/DZ | /[\S]/DZ |
| 2747 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
| 2748 | Bra | Bra |
| 2749 | [\x00-\x08\x0b\x0e-\x1f!-\xff] | [\x00-\x08\x0b\x0e-\x1f!-\xff] (neg) |
| 2750 | Ket | Ket |
| 2751 | End | End |
| 2752 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
| # | Line 2743 No need char | Line 2759 No need char |
| 2759 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
| 2760 | Bra | Bra |
| 2761 | a | a |
| 2762 | 01 Opt | /i b |
| NC b | ||
| 2763 | Ket | Ket |
| 2764 | End | End |
| 2765 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
| # | Line 2766 No match | Line 2781 No match |
| 2781 | Bra | Bra |
| 2782 | CBra 1 | CBra 1 |
| 2783 | a | a |
| 2784 | 01 Opt | /i b |
| NC b | ||
| 2785 | Ket | Ket |
| 00 Opt | ||
| 2786 | Ket | Ket |
| 2787 | End | End |
| 2788 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
| # | Line 2791 No match | Line 2804 No match |
| 2804 | / (?i)abc/IxDZ | / (?i)abc/IxDZ |
| 2805 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
| 2806 | Bra | Bra |
| 2807 | NC abc | /i abc |
| 2808 | Ket | Ket |
| 2809 | End | End |
| 2810 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
| # | Line 2804 Need char = 'c' (caseless) | Line 2817 Need char = 'c' (caseless) |
| 2817 | (?i)abc/IxDZ | (?i)abc/IxDZ |
| 2818 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
| 2819 | Bra | Bra |
| 2820 | NC abc | /i abc |
| 2821 | Ket | Ket |
| 2822 | End | End |
| 2823 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
| # | Line 2927 Need char = 'c' | Line 2940 Need char = 'c' |
| 2940 | End | End |
| 2941 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
| 2942 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 2943 | No options | No options |
| 2944 | No first char | No first char |
| 2945 | No need char | No need char |
| # | Line 2956 No need char | Line 2968 No need char |
| 2968 | End | End |
| 2969 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
| 2970 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 2971 | No options | No options |
| 2972 | First char = 'x' | First char = 'x' |
| 2973 | No need char | No need char |
| # | Line 2972 No need char | Line 2983 No need char |
| 2983 | End | End |
| 2984 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
| 2985 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 2986 | No options | No options |
| 2987 | First char = 'x' | First char = 'x' |
| 2988 | No need char | No need char |
| # | Line 2980 No need char | Line 2990 No need char |
| 2990 | /(x)*+/DZ | /(x)*+/DZ |
| 2991 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
| 2992 | Bra | Bra |
| 2993 | Once | Braposzero |
| 2994 | Brazero | CBraPos 1 |
| CBra 1 | ||
| 2995 | x | x |
| 2996 | KetRmax | KetRpos |
| Ket | ||
| 2997 | Ket | Ket |
| 2998 | End | End |
| 2999 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
| # | Line 2996 No need char | Line 3004 No need char |
| 3004 | ||
| 3005 | /^(\w++|\s++)*$/I | /^(\w++|\s++)*$/I |
| 3006 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
| Partial matching not supported | ||
| 3007 | Options: anchored | Options: anchored |
| 3008 | No first char | No first char |
| 3009 | No need char | No need char |
| # | Line 3010 No match | Line 3017 No match |
| 3017 | ||
| 3018 | /(\d++)(\w)/I | /(\d++)(\w)/I |
| 3019 | Capturing subpattern count = 2 | Capturing subpattern count = 2 |
| Partial matching not supported | ||
| 3020 | No options | No options |
| 3021 | No first char | No first char |
| 3022 | No need char | No need char |
| # | Line 3025 No match | Line 3031 No match |
| 3031 | ||
| 3032 | /a++b/I | /a++b/I |
| 3033 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 3034 | No options | No options |
| 3035 | First char = 'a' | First char = 'a' |
| 3036 | Need char = 'b' | Need char = 'b' |
| # | Line 3034 Need char = 'b' | Line 3039 Need char = 'b' |
| 3039 | ||
| 3040 | /(a++b)/I | /(a++b)/I |
| 3041 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
| Partial matching not supported | ||
| 3042 | No options | No options |
| 3043 | First char = 'a' | First char = 'a' |
| 3044 | Need char = 'b' | Need char = 'b' |
| # | Line 3044 Need char = 'b' | Line 3048 Need char = 'b' |
| 3048 | ||
| 3049 | /(a++)b/I | /(a++)b/I |
| 3050 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
| Partial matching not supported | ||
| 3051 | No options | No options |
| 3052 | First char = 'a' | First char = 'a' |
| 3053 | Need char = 'b' | Need char = 'b' |
| # | Line 3054 Need char = 'b' | Line 3057 Need char = 'b' |
| 3057 | ||
| 3058 | /([^()]++|\([^()]*\))+/I | /([^()]++|\([^()]*\))+/I |
| 3059 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
| Partial matching not supported | ||
| 3060 | No options | No options |
| 3061 | No first char | No first char |
| 3062 | No need char | No need char |
| # | Line 3064 No need char | Line 3066 No need char |
| 3066 | ||
| 3067 | /\(([^()]++|\([^()]+\))+\)/I | /\(([^()]++|\([^()]+\))+\)/I |
| 3068 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
| Partial matching not supported | ||
| 3069 | No options | No options |
| 3070 | First char = '(' | First char = '(' |
| 3071 | Need char = ')' | Need char = ')' |
| # | Line 3127 Failed: nothing to repeat at offset 7 | Line 3128 Failed: nothing to repeat at offset 7 |
| 3128 | End | End |
| 3129 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
| 3130 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 3131 | No options | No options |
| 3132 | First char = 'x' | First char = 'x' |
| 3133 | Need char = 'b' | Need char = 'b' |
| # | Line 3144 Need char = 'b' | Line 3144 Need char = 'b' |
| 3144 | End | End |
| 3145 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
| 3146 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 3147 | Options: ungreedy | Options: ungreedy |
| 3148 | First char = 'x' | First char = 'x' |
| 3149 | Need char = 'b' | Need char = 'b' |
| # | Line 3173 Need char = 'b' | Line 3172 Need char = 'b' |
| 3172 | End | End |
| 3173 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
| 3174 | Capturing subpattern count = 5 | Capturing subpattern count = 5 |
| Partial matching not supported | ||
| 3175 | Options: anchored | Options: anchored |
| 3176 | No first char | No first char |
| 3177 | No need char | No need char |
| # | Line 3189 No need char | Line 3187 No need char |
| 3187 | End | End |
| 3188 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
| 3189 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 3190 | Options: anchored | Options: anchored |
| 3191 | No first char | No first char |
| 3192 | Need char = 'b' | Need char = 'b' |
| # | Line 3207 Need char = 'b' | Line 3204 Need char = 'b' |
| 3204 | End | End |
| 3205 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
| 3206 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
| Partial matching not supported | ||
| 3207 | Options: anchored | Options: anchored |
| 3208 | No first char | No first char |
| 3209 | Need char = 'b' | Need char = 'b' |
| # | Line 3222 Failed: POSIX collating elements are not | Line 3218 Failed: POSIX collating elements are not |
| 3218 | Failed: POSIX named classes are supported only within a class at offset 0 | Failed: POSIX named classes are supported only within a class at offset 0 |
| 3219 | ||
| 3220 | /\l/I | /\l/I |
| 3221 | Failed: PCRE does not support \L, \l, \N, \U, or \u at offset 1 | Failed: PCRE does not support \L, \l, \N{name}, \U, or \u at offset 1 |
| 3222 | ||
| 3223 | /\L/I | /\L/I |
| 3224 | Failed: PCRE does not support \L, \l, \N, \U, or \u at offset 1 | Failed: PCRE does not support \L, \l, \N{name}, \U, or \u at offset 1 |
| 3225 | ||
| 3226 | /\N{name}/I | /\N{name}/I |
| 3227 | Failed: PCRE does not support \L, \l, \N, \U, or \u at offset 1 | Failed: PCRE does not support \L, \l, \N{name}, \U, or \u at offset 1 |
| 3228 | ||
| 3229 | /\u/I | /\u/I |
| 3230 | Failed: PCRE does not support \L, \l, \N, \U, or \u at offset 1 | Failed: PCRE does not support \L, \l, \N{name}, \U, or \u at offset 1 |
| 3231 | ||
| 3232 | /\U/I | /\U/I |
| 3233 | Failed: PCRE does not support \L, \l, \N, \U, or \u at offset 1 | Failed: PCRE does not support \L, \l, \N{name}, \U, or \u at offset 1 |
| 3234 | ||
| 3235 | /[/I | /[/I |
| 3236 | Failed: missing terminating ] for character class at offset 1 | Failed: missing terminating ] for character class at offset 1 |
| # | Line 3283 No need char | Line 3279 No need char |
| 3279 | ||
| 3280 | /< (?: (?(R) \d++ | [^<>]*+) | (?R)) * >/Ix | /< (?: (?(R) \d++ | [^<>]*+) | (?R)) * >/Ix |
| 3281 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 3282 | Options: extended | Options: extended |
| 3283 | First char = '<' | First char = '<' |
| 3284 | Need char = '>' | Need char = '>' |
| # | Line 3333 Need char = 'X' | Line 3328 Need char = 'X' |
| 3328 | /(.*)\d+\1/I | /(.*)\d+\1/I |
| 3329 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
| 3330 | Max back reference = 1 | Max back reference = 1 |
| Partial matching not supported | ||
| 3331 | No options | No options |
| 3332 | No first char | No first char |
| 3333 | No need char | No need char |
| 3334 | ||
| 3335 | /(.*)\d+/I | /(.*)\d+/I |
| 3336 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
| Partial matching not supported | ||
| 3337 | No options | No options |
| 3338 | First char at start or follows newline | First char at start or follows newline |
| 3339 | No need char | No need char |
| # | Line 3348 No need char | Line 3341 No need char |
| 3341 | /(.*)\d+\1/Is | /(.*)\d+\1/Is |
| 3342 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
| 3343 | Max back reference = 1 | Max back reference = 1 |
| Partial matching not supported | ||
| 3344 | Options: dotall | Options: dotall |
| 3345 | No first char | No first char |
| 3346 | No need char | No need char |
| 3347 | ||
| 3348 | /(.*)\d+/Is | /(.*)\d+/Is |
| 3349 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
| Partial matching not supported | ||
| 3350 | Options: anchored dotall | Options: anchored dotall |
| 3351 | No first char | No first char |
| 3352 | No need char | No need char |
| # | Line 3363 No need char | Line 3354 No need char |
| 3354 | /(.*(xyz))\d+\2/I | /(.*(xyz))\d+\2/I |
| 3355 | Capturing subpattern count = 2 | Capturing subpattern count = 2 |
| 3356 | Max back reference = 2 | Max back reference = 2 |
| Partial matching not supported | ||
| 3357 | No options | No options |
| 3358 | First char at start or follows newline | First char at start or follows newline |
| 3359 | Need char = 'z' | Need char = 'z' |
| # | Line 3371 Need char = 'z' | Line 3361 Need char = 'z' |
| 3361 | /((.*))\d+\1/I | /((.*))\d+\1/I |
| 3362 | Capturing subpattern count = 2 | Capturing subpattern count = 2 |
| 3363 | Max back reference = 1 | Max back reference = 1 |
| Partial matching not supported | ||
| 3364 | No options | No options |
| 3365 | No first char | No first char |
| 3366 | No need char | No need char |
| # | Line 3388 Need char = 'b' | Line 3377 Need char = 'b' |
| 3377 | ||
| 3378 | /(?=a).*/I | /(?=a).*/I |
| 3379 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 3380 | No options | No options |
| 3381 | First char = 'a' | First char = 'a' |
| 3382 | No need char | No need char |
| # | Line 3435 No options | Line 3423 No options |
| 3423 | No first char | No first char |
| 3424 | Need char = 'a' | Need char = 'a' |
| 3425 | ||
| 3426 | /(?(1)ab|ac)/I | /(?(1)ab|ac)(.)/I |
| 3427 | Capturing subpattern count = 0 | Capturing subpattern count = 1 |
| 3428 | No options | No options |
| 3429 | First char = 'a' | First char = 'a' |
| 3430 | No need char | No need char |
| 3431 | ||
| 3432 | /(?(1)abz|acz)/I | /(?(1)abz|acz)(.)/I |
| 3433 | Capturing subpattern count = 0 | Capturing subpattern count = 1 |
| 3434 | No options | No options |
| 3435 | First char = 'a' | First char = 'a' |
| 3436 | Need char = 'z' | Need char = 'z' |
| 3437 | ||
| 3438 | /(?(1)abz)/I | /(?(1)abz)(.)/I |
| 3439 | Capturing subpattern count = 0 | Capturing subpattern count = 1 |
| 3440 | No options | No options |
| 3441 | No first char | No first char |
| 3442 | No need char | No need char |
| 3443 | ||
| 3444 | /(?(1)abz)123/I | /(?(1)abz)(1)23/I |
| 3445 | Capturing subpattern count = 0 | Capturing subpattern count = 1 |
| 3446 | No options | No options |
| 3447 | No first char | No first char |
| 3448 | Need char = '3' | Need char = '3' |
| # | Line 3494 Capturing subpattern count = 0 | Line 3482 Capturing subpattern count = 0 |
| 3482 | No options | No options |
| 3483 | No first char | No first char |
| 3484 | No need char | No need char |
| 3485 | Subject length lower bound = 1 | |
| 3486 | Starting byte set: a b | Starting byte set: a b |
| 3487 | ||
| 3488 | /[^a]/I | /[^a]/I |
| # | Line 3513 Capturing subpattern count = 0 | Line 3502 Capturing subpattern count = 0 |
| 3502 | No options | No options |
| 3503 | No first char | No first char |
| 3504 | Need char = '6' | Need char = '6' |
| 3505 | Subject length lower bound = 4 | |
| 3506 | Starting byte set: 0 1 2 3 4 5 6 7 8 9 | Starting byte set: 0 1 2 3 4 5 6 7 8 9 |
| 3507 | ||
| 3508 | /a^b/I | /a^b/I |
| # | Line 3546 Capturing subpattern count = 0 | Line 3536 Capturing subpattern count = 0 |
| 3536 | Options: caseless | Options: caseless |
| 3537 | No first char | No first char |
| 3538 | No need char | No need char |
| 3539 | Subject length lower bound = 1 | |
| 3540 | Starting byte set: A B a b | Starting byte set: A B a b |
| 3541 | ||
| 3542 | /[ab](?i)cd/IS | /[ab](?i)cd/IS |
| # | Line 3553 Capturing subpattern count = 0 | Line 3544 Capturing subpattern count = 0 |
| 3544 | No options | No options |
| 3545 | No first char | No first char |
| 3546 | Need char = 'd' (caseless) | Need char = 'd' (caseless) |
| 3547 | Subject length lower bound = 3 | |
| 3548 | Starting byte set: a b | Starting byte set: a b |
| 3549 | ||
| 3550 | /abc(?C)def/I | /abc(?C)def/I |
| # | Line 3710 No need char | Line 3702 No need char |
| 3702 | ||
| 3703 | /(\d{3}(?C))*/I | /(\d{3}(?C))*/I |
| 3704 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
| Partial matching not supported | ||
| 3705 | No options | No options |
| 3706 | No first char | No first char |
| 3707 | No need char | No need char |
| # | Line 3839 Callout 0: last capture = 1 | Line 3830 Callout 0: last capture = 1 |
| 3830 | ||
| 3831 | /a(b+)(c*)(?C1)/I | /a(b+)(c*)(?C1)/I |
| 3832 | Capturing subpattern count = 2 | Capturing subpattern count = 2 |
| Partial matching not supported | ||
| 3833 | No options | No options |
| 3834 | First char = 'a' | First char = 'a' |
| 3835 | Need char = 'b' | Need char = 'b' |
| # | Line 3865 No match | Line 3855 No match |
| 3855 | ||
| 3856 | /a(b+?)(c*?)(?C1)/I | /a(b+?)(c*?)(?C1)/I |
| 3857 | Capturing subpattern count = 2 | Capturing subpattern count = 2 |
| Partial matching not supported | ||
| 3858 | No options | No options |
| 3859 | First char = 'a' | First char = 'a' |
| 3860 | Need char = 'b' | Need char = 'b' |
| # | Line 3906 Capturing subpattern count = 0 | Line 3895 Capturing subpattern count = 0 |
| 3895 | No options | No options |
| 3896 | No first char | No first char |
| 3897 | No need char | No need char |
| 3898 | Subject length lower bound = 1 | |
| 3899 | Starting byte set: a b | Starting byte set: a b |
| 3900 | ||
| 3901 | /(?R)/I | /(?R)/I |
| # | Line 4025 No options | Line 4015 No options |
| 4015 | First char = 'a' | First char = 'a' |
| 4016 | Need char = 'b' | Need char = 'b' |
| 4017 | ||
| /^\W*(?:((.)\W*(?1)\W*\2|)|((.)\W*(?3)\W*\4|\W*.\W*))\W*$/Ii | ||
| Capturing subpattern count = 4 | ||
| Max back reference = 4 | ||
| Partial matching not supported | ||
| Options: anchored caseless | ||
| No first char | ||
| No need char | ||
| 1221 | ||
| 0: 1221 | ||
| 1: 1221 | ||
| 2: 1 | ||
| Satan, oscillate my metallic sonatas! | ||
| 0: Satan, oscillate my metallic sonatas! | ||
| 1: <unset> | ||
| 2: <unset> | ||
| 3: Satan, oscillate my metallic sonatas | ||
| 4: S | ||
| A man, a plan, a canal: Panama! | ||
| 0: A man, a plan, a canal: Panama! | ||
| 1: <unset> | ||
| 2: <unset> | ||
| 3: A man, a plan, a canal: Panama | ||
| 4: A | ||
| Able was I ere I saw Elba. | ||
| 0: Able was I ere I saw Elba. | ||
| 1: <unset> | ||
| 2: <unset> | ||
| 3: Able was I ere I saw Elba | ||
| 4: A | ||
| *** Failers | ||
| No match | ||
| The quick brown fox | ||
| No match | ||
| 4018 | /^(\d+|\((?1)([+*-])(?1)\)|-(?1))$/I | /^(\d+|\((?1)([+*-])(?1)\)|-(?1))$/I |
| 4019 | Capturing subpattern count = 2 | Capturing subpattern count = 2 |
| Partial matching not supported | ||
| 4020 | Options: anchored | Options: anchored |
| 4021 | No first char | No first char |
| 4022 | No need char | No need char |
| # | Line 4102 No match | Line 4057 No match |
| 4057 | ||
| 4058 | /((< (?: (?(R) \d++ | [^<>]*+) | (?2)) * >))/Ix | /((< (?: (?(R) \d++ | [^<>]*+) | (?2)) * >))/Ix |
| 4059 | Capturing subpattern count = 2 | Capturing subpattern count = 2 |
| Partial matching not supported | ||
| 4060 | Options: extended | Options: extended |
| 4061 | First char = '<' | First char = '<' |
| 4062 | Need char = '>' | Need char = '>' |
| # | Line 4276 Named capturing subpatterns: | Line 4230 Named capturing subpatterns: |
| 4230 | one 1 | one 1 |
| 4231 | three 3 | three 3 |
| 4232 | two 2 | two 2 |
| Partial matching not supported | ||
| 4233 | Options: anchored caseless | Options: anchored caseless |
| 4234 | No first char | No first char |
| 4235 | No need char | No need char |
| # | Line 4322 No need char | Line 4275 No need char |
| 4275 | ||
| 4276 | /(.*)a/Is | /(.*)a/Is |
| 4277 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
| Partial matching not supported | ||
| 4278 | Options: anchored dotall | Options: anchored dotall |
| 4279 | No first char | No first char |
| 4280 | Need char = 'a' | Need char = 'a' |
| # | Line 4330 Need char = 'a' | Line 4282 Need char = 'a' |
| 4282 | /(.*)a\1/Is | /(.*)a\1/Is |
| 4283 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
| 4284 | Max back reference = 1 | Max back reference = 1 |
| Partial matching not supported | ||
| 4285 | Options: dotall | Options: dotall |
| 4286 | No first char | No first char |
| 4287 | Need char = 'a' | Need char = 'a' |
| # | Line 4338 Need char = 'a' | Line 4289 Need char = 'a' |
| 4289 | /(.*)a(b)\2/Is | /(.*)a(b)\2/Is |
| 4290 | Capturing subpattern count = 2 | Capturing subpattern count = 2 |
| 4291 | Max back reference = 2 | Max back reference = 2 |
| Partial matching not supported | ||
| 4292 | Options: anchored dotall | Options: anchored dotall |
| 4293 | No first char | No first char |
| 4294 | Need char = 'b' | Need char = 'b' |
| 4295 | ||
| 4296 | /((.*)a|(.*)b)z/Is | /((.*)a|(.*)b)z/Is |
| 4297 | Capturing subpattern count = 3 | Capturing subpattern count = 3 |
| Partial matching not supported | ||
| 4298 | Options: anchored dotall | Options: anchored dotall |
| 4299 | No first char | No first char |
| 4300 | Need char = 'z' | Need char = 'z' |
| # | Line 4353 Need char = 'z' | Line 4302 Need char = 'z' |
| 4302 | /((.*)a|(.*)b)z\1/Is | /((.*)a|(.*)b)z\1/Is |
| 4303 | Capturing subpattern count = 3 | Capturing subpattern count = 3 |
| 4304 | Max back reference = 1 | Max back reference = 1 |
| Partial matching not supported | ||
| 4305 | Options: dotall | Options: dotall |
| 4306 | No first char | No first char |
| 4307 | Need char = 'z' | Need char = 'z' |
| # | Line 4361 Need char = 'z' | Line 4309 Need char = 'z' |
| 4309 | /((.*)a|(.*)b)z\2/Is | /((.*)a|(.*)b)z\2/Is |
| 4310 | Capturing subpattern count = 3 | Capturing subpattern count = 3 |
| 4311 | Max back reference = 2 | Max back reference = 2 |
| Partial matching not supported | ||
| 4312 | Options: dotall | Options: dotall |
| 4313 | No first char | No first char |
| 4314 | Need char = 'z' | Need char = 'z' |
| # | Line 4369 Need char = 'z' | Line 4316 Need char = 'z' |
| 4316 | /((.*)a|(.*)b)z\3/Is | /((.*)a|(.*)b)z\3/Is |
| 4317 | Capturing subpattern count = 3 | Capturing subpattern count = 3 |
| 4318 | Max back reference = 3 | Max back reference = 3 |
| Partial matching not supported | ||
| 4319 | Options: dotall | Options: dotall |
| 4320 | No first char | No first char |
| 4321 | Need char = 'z' | Need char = 'z' |
| # | Line 4377 Need char = 'z' | Line 4323 Need char = 'z' |
| 4323 | /((.*)a|^(.*)b)z\3/Is | /((.*)a|^(.*)b)z\3/Is |
| 4324 | Capturing subpattern count = 3 | Capturing subpattern count = 3 |
| 4325 | Max back reference = 3 | Max back reference = 3 |
| Partial matching not supported | ||
| 4326 | Options: anchored dotall | Options: anchored dotall |
| 4327 | No first char | No first char |
| 4328 | Need char = 'z' | Need char = 'z' |
| 4329 | ||
| 4330 | /(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a/Is | /(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a/Is |
| 4331 | Capturing subpattern count = 31 | Capturing subpattern count = 31 |
| Partial matching not supported | ||
| 4332 | Options: anchored dotall | Options: anchored dotall |
| 4333 | No first char | No first char |
| 4334 | No need char | No need char |
| # | Line 4392 No need char | Line 4336 No need char |
| 4336 | /(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a\31/Is | /(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a\31/Is |
| 4337 | Capturing subpattern count = 31 | Capturing subpattern count = 31 |
| 4338 | Max back reference = 31 | Max back reference = 31 |
| Partial matching not supported | ||
| 4339 | Options: dotall | Options: dotall |
| 4340 | No first char | No first char |
| 4341 | No need char | No need char |
| # | Line 4400 No need char | Line 4343 No need char |
| 4343 | /(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a\32/Is | /(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a\32/Is |
| 4344 | Capturing subpattern count = 32 | Capturing subpattern count = 32 |
| 4345 | Max back reference = 32 | Max back reference = 32 |
| Partial matching not supported | ||
| 4346 | Options: dotall | Options: dotall |
| 4347 | No first char | No first char |
| 4348 | No need char | No need char |
| # | Line 4467 Need char = 'c' | Line 4409 Need char = 'c' |
| 4409 | ||
| 4410 | /(a+)*zz/I | /(a+)*zz/I |
| 4411 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
| Partial matching not supported | ||
| 4412 | No options | No options |
| 4413 | No first char | No first char |
| 4414 | Need char = 'z' | Need char = 'z' |
| # | Line 4604 Failed: two named subpatterns have the s | Line 4545 Failed: two named subpatterns have the s |
| 4545 | Capturing subpattern count = 3 | Capturing subpattern count = 3 |
| 4546 | Named capturing subpatterns: | Named capturing subpatterns: |
| 4547 | elem 2 | elem 2 |
| Partial matching not supported | ||
| 4548 | No options | No options |
| 4549 | First char = '[' | First char = '[' |
| 4550 | Need char = ']' | Need char = ']' |
| # | Line 4622 No match | Line 4562 No match |
| 4562 | Capturing subpattern count = 3 | Capturing subpattern count = 3 |
| 4563 | Named capturing subpatterns: | Named capturing subpatterns: |
| 4564 | elem 2 | elem 2 |
| Partial matching not supported | ||
| 4565 | No options | No options |
| 4566 | First char = '[' | First char = '[' |
| 4567 | Need char = ']' | Need char = ']' |
| # | Line 4729 No need char | Line 4668 No need char |
| 4668 | ||
| 4669 | /((w\/|-|with)*(free|immediate)*.*?shipping\s*[!.-]*)/Ii | /((w\/|-|with)*(free|immediate)*.*?shipping\s*[!.-]*)/Ii |
| 4670 | Capturing subpattern count = 3 | Capturing subpattern count = 3 |
| Partial matching not supported | ||
| 4671 | Options: caseless | Options: caseless |
| 4672 | No first char | No first char |
| 4673 | Need char = 'g' (caseless) | Need char = 'g' (caseless) |
| # | Line 4739 Need char = 'g' (caseless) | Line 4677 Need char = 'g' (caseless) |
| 4677 | ||
| 4678 | /((w\/|-|with)*(free|immediate)*.*?shipping\s*[!.-]*)/IiS | /((w\/|-|with)*(free|immediate)*.*?shipping\s*[!.-]*)/IiS |
| 4679 | Capturing subpattern count = 3 | Capturing subpattern count = 3 |
| Partial matching not supported | ||
| 4680 | Options: caseless | Options: caseless |
| 4681 | No first char | No first char |
| 4682 | Need char = 'g' (caseless) | Need char = 'g' (caseless) |
| 4683 | Study returned NULL | Subject length lower bound = 8 |
| 4684 | No set of starting bytes | |
| 4685 | Baby Bjorn Active Carrier - With free SHIPPING!! | Baby Bjorn Active Carrier - With free SHIPPING!! |
| 4686 | 0: Baby Bjorn Active Carrier - With free SHIPPING!! | 0: Baby Bjorn Active Carrier - With free SHIPPING!! |
| 4687 | 1: Baby Bjorn Active Carrier - With free SHIPPING!! | 1: Baby Bjorn Active Carrier - With free SHIPPING!! |
| # | Line 4758 Study returned NULL | Line 4696 Study returned NULL |
| 4696 | End | End |
| 4697 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
| 4698 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 4699 | No options | No options |
| 4700 | No first char | No first char |
| 4701 | Need char = 'b' | Need char = 'b' |
| 4702 | Study returned NULL | Subject length lower bound = 1 |
| 4703 | No set of starting bytes | |
| 4704 | ||
| 4705 | /(a|b)*.?c/ISDZ | /(a|b)*.?c/ISDZ |
| 4706 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
| # | Line 4782 Capturing subpattern count = 1 | Line 4720 Capturing subpattern count = 1 |
| 4720 | No options | No options |
| 4721 | No first char | No first char |
| 4722 | Need char = 'c' | Need char = 'c' |
| 4723 | Study returned NULL | Subject length lower bound = 1 |
| 4724 | No set of starting bytes | |
| 4725 | ||
| 4726 | /abc(?C255)de(?C)f/DZ | /abc(?C255)de(?C)f/DZ |
| 4727 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
| # | Line 4851 No match | Line 4790 No match |
| 4790 | End | End |
| 4791 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
| 4792 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 4793 | Options: | Options: |
| 4794 | No first char | No first char |
| 4795 | Need char = 'b' | Need char = 'b' |
| # | Line 4896 Need char = 'b' | Line 4834 Need char = 'b' |
| 4834 | End | End |
| 4835 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
| 4836 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 4837 | Options: | Options: |
| 4838 | First char = 'a' | First char = 'a' |
| 4839 | Need char = 'b' | Need char = 'b' |
| # | Line 5334 No match | Line 5271 No match |
| 5271 | End | End |
| 5272 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
| 5273 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
| Partial matching not supported | ||
| 5274 | Options: | Options: |
| 5275 | No first char | No first char |
| 5276 | Need char = '3' | Need char = '3' |
| # | Line 5366 Need char = '3' | Line 5302 Need char = '3' |
| 5302 | ||
| 5303 | /\b.*/I | /\b.*/I |
| 5304 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 5305 | No options | No options |
| 5306 | No first char | No first char |
| 5307 | No need char | No need char |
| # | Line 5375 No need char | Line 5310 No need char |
| 5310 | ||
| 5311 | /\b.*/Is | /\b.*/Is |
| 5312 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 5313 | Options: dotall | Options: dotall |
| 5314 | No first char | No first char |
| 5315 | No need char | No need char |
| # | Line 5384 No need char | Line 5318 No need char |
| 5318 | ||
| 5319 | /(?!.bcd).*/I | /(?!.bcd).*/I |
| 5320 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 5321 | No options | No options |
| 5322 | No first char | No first char |
| 5323 | No need char | No need char |
| # | Line 5397 No options | Line 5330 No options |
| 5330 | First char = 'a' | First char = 'a' |
| 5331 | Need char = 'e' | Need char = 'e' |
| 5332 | ab\P | ab\P |
| 5333 | Partial match | Partial match: ab |
| 5334 | abc\P | abc\P |
| 5335 | Partial match | Partial match: abc |
| 5336 | abcd\P | abcd\P |
| 5337 | Partial match | Partial match: abcd |
| 5338 | abcde\P | abcde\P |
| 5339 | 0: abcde | 0: abcde |
| 5340 | the quick brown abc\P | the quick brown abc\P |
| 5341 | Partial match | Partial match: abc |
| 5342 | ** Failers\P | ** Failers\P |
| 5343 | No match | No match |
| 5344 | the quick brown abxyz fox\P | the quick brown abxyz fox\P |
| # | Line 5430 Need char = '/' | Line 5363 Need char = '/' |
| 5363 | 1: 02 | 1: 02 |
| 5364 | 2: 05 | 2: 05 |
| 5365 | 1\P | 1\P |
| 5366 | Partial match | Partial match: 1 |
| 5367 | 1/2\P | 1/2\P |
| 5368 | Partial match | Partial match: 1/2 |
| 5369 | 1/2/0\P | 1/2/0\P |
| 5370 | Partial match | Partial match: 1/2/0 |
| 5371 | 1/2/04\P | 1/2/04\P |
| 5372 | 0: 1/2/04 | 0: 1/2/04 |
| 5373 | 1: 1 | 1: 1 |
| 5374 | 2: 2 | 2: 2 |
| 5375 | 0\P | 0\P |
| 5376 | Partial match | Partial match: 0 |
| 5377 | 02/\P | 02/\P |
| 5378 | Partial match | Partial match: 02/ |
| 5379 | 02/0\P | 02/0\P |
| 5380 | Partial match | Partial match: 02/0 |
| 5381 | 02/1\P | 02/1\P |
| 5382 | Partial match | Partial match: 02/1 |
| 5383 | ** Failers\P | ** Failers\P |
| 5384 | No match | No match |
| 5385 | \P | \P |
| # | Line 5468 No match | Line 5401 No match |
| 5401 | ||
| 5402 | /0{0,2}ABC/I | /0{0,2}ABC/I |
| 5403 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 5404 | No options | No options |
| 5405 | No first char | No first char |
| 5406 | Need char = 'C' | Need char = 'C' |
| 5407 | ||
| 5408 | /\d{3,}ABC/I | /\d{3,}ABC/I |
| 5409 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 5410 | No options | No options |
| 5411 | No first char | No first char |
| 5412 | Need char = 'C' | Need char = 'C' |
| 5413 | ||
| 5414 | /\d*ABC/I | /\d*ABC/I |
| 5415 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 5416 | No options | No options |
| 5417 | No first char | No first char |
| 5418 | Need char = 'C' | Need char = 'C' |
| 5419 | ||
| 5420 | /[abc]+DE/I | /[abc]+DE/I |
| 5421 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 5422 | No options | No options |
| 5423 | No first char | No first char |
| 5424 | Need char = 'E' | Need char = 'E' |
| # | Line 5502 Need char = '3' | Line 5431 Need char = '3' |
| 5431 | 123\P | 123\P |
| 5432 | 0: 123 | 0: 123 |
| 5433 | a\P | a\P |
| 5434 | Partial match | Partial match: a |
| 5435 | b\P | b\P |
| 5436 | Partial match | Partial match: b |
| 5437 | c\P | c\P |
| 5438 | Partial match | Partial match: c |
| 5439 | c12\P | c12\P |
| 5440 | Partial match | Partial match: c12 |
| 5441 | c123\P | c123\P |
| 5442 | 0: c123 | 0: c123 |
| 5443 | ||
| # | Line 5518 Options: anchored | Line 5447 Options: anchored |
| 5447 | No first char | No first char |
| 5448 | Need char = 'X' | Need char = 'X' |
| 5449 | 1\P | 1\P |
| 5450 | Partial match | Partial match: 1 |
| 5451 | 123\P | 123\P |
| 5452 | Partial match | Partial match: 123 |
| 5453 | 123X | 123X |
| 5454 | 0: 123X | 0: 123X |
| 5455 | 1234\P | 1234\P |
| 5456 | Partial match | Partial match: 1234 |
| 5457 | 1234X | 1234X |
| 5458 | 0: 1234X | 0: 1234X |
| 5459 | 12345\P | 12345\P |
| 5460 | Partial match | Partial match: 12345 |
| 5461 | 12345X | 12345X |
| 5462 | 0: 12345X | 0: 12345X |
| 5463 | *** Failers | *** Failers |
| # | Line 5575 Capturing subpattern count = 1 | Line 5504 Capturing subpattern count = 1 |
| 5504 | No options | No options |
| 5505 | No first char | No first char |
| 5506 | No need char | No need char |
| 5507 | Subject length lower bound = 1 | |
| 5508 | Starting byte set: a b | Starting byte set: a b |
| 5509 | Compiled regex written to testsavedregex | Compiled regex written to testsavedregex |
| 5510 | Study data written to testsavedregex | Study data written to testsavedregex |
| # | Line 5595 Capturing subpattern count = 1 | Line 5525 Capturing subpattern count = 1 |
| 5525 | No options | No options |
| 5526 | No first char | No first char |
| 5527 | No need char | No need char |
| 5528 | Subject length lower bound = 1 | |
| 5529 | Starting byte set: a b | Starting byte set: a b |
| 5530 | Compiled regex written to testsavedregex | Compiled regex written to testsavedregex |
| 5531 | Study data written to testsavedregex | Study data written to testsavedregex |
| # | Line 5613 No match | Line 5544 No match |
| 5544 | ~<(\w+)/?>(.)*</(\1)>~smgI | ~<(\w+)/?>(.)*</(\1)>~smgI |
| 5545 | Capturing subpattern count = 3 | Capturing subpattern count = 3 |
| 5546 | Max back reference = 1 | Max back reference = 1 |
| Partial matching not supported | ||
| 5547 | Options: multiline dotall | Options: multiline dotall |
| 5548 | First char = '<' | First char = '<' |
| 5549 | Need char = '>' | Need char = '>' |
| # | Line 5631 No need char | Line 5561 No need char |
| 5561 | ||
| 5562 | /line\nbreak/I | /line\nbreak/I |
| 5563 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| 5564 | Contains explicit CR or LF match | |
| 5565 | No options | No options |
| 5566 | First char = 'l' | First char = 'l' |
| 5567 | Need char = 'k' | Need char = 'k' |
| # | Line 5641 Need char = 'k' | Line 5572 Need char = 'k' |
| 5572 | ||
| 5573 | /line\nbreak/If | /line\nbreak/If |
| 5574 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| 5575 | Contains explicit CR or LF match | |
| 5576 | Options: firstline | Options: firstline |
| 5577 | First char = 'l' | First char = 'l' |
| 5578 | Need char = 'k' | Need char = 'k' |
| # | Line 5653 No match | Line 5585 No match |
| 5585 | ||
| 5586 | /line\nbreak/Imf | /line\nbreak/Imf |
| 5587 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| 5588 | Contains explicit CR or LF match | |
| 5589 | Options: multiline firstline | Options: multiline firstline |
| 5590 | First char = 'l' | First char = 'l' |
| 5591 | Need char = 'k' | Need char = 'k' |
| # | Line 5663 No match | Line 5596 No match |
| 5596 | line one\nthis is a line\nbreak in the second line | line one\nthis is a line\nbreak in the second line |
| 5597 | No match | No match |
| 5598 | ||
| 5599 | /ab.cd/IP | /ab.cd/P |
| 5600 | ab-cd | ab-cd |
| 5601 | 0: ab-cd | 0: ab-cd |
| 5602 | ab=cd | ab=cd |
| # | Line 5673 No match: POSIX code 17: match failed | Line 5606 No match: POSIX code 17: match failed |
| 5606 | ab\ncd | ab\ncd |
| 5607 | No match: POSIX code 17: match failed | No match: POSIX code 17: match failed |
| 5608 | ||
| 5609 | /ab.cd/IPs | /ab.cd/Ps |
| 5610 | ab-cd | ab-cd |
| 5611 | 0: ab-cd | 0: ab-cd |
| 5612 | ab=cd | ab=cd |
| # | Line 5917 Matched, but too many substrings | Line 5850 Matched, but too many substrings |
| 5850 | ||
| 5851 | /[^()]*(?:\((?R)\)[^()]*)*/I | /[^()]*(?:\((?R)\)[^()]*)*/I |
| 5852 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 5853 | No options | No options |
| 5854 | No first char | No first char |
| 5855 | No need char | No need char |
| # | Line 5930 No need char | Line 5862 No need char |
| 5862 | ||
| 5863 | /[^()]*(?:\((?>(?R))\)[^()]*)*/I | /[^()]*(?:\((?>(?R))\)[^()]*)*/I |
| 5864 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 5865 | No options | No options |
| 5866 | No first char | No first char |
| 5867 | No need char | No need char |
| # | Line 5941 No need char | Line 5872 No need char |
| 5872 | ||
| 5873 | /[^()]*(?:\((?R)\))*[^()]*/I | /[^()]*(?:\((?R)\))*[^()]*/I |
| 5874 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 5875 | No options | No options |
| 5876 | No first char | No first char |
| 5877 | No need char | No need char |
| # | Line 5952 No need char | Line 5882 No need char |
| 5882 | ||
| 5883 | /(?:\((?R)\))*[^()]*/I | /(?:\((?R)\))*[^()]*/I |
| 5884 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 5885 | No options | No options |
| 5886 | No first char | No first char |
| 5887 | No need char | No need char |
| # | Line 5965 No need char | Line 5894 No need char |
| 5894 | ||
| 5895 | /(?:\((?R)\))|[^()]*/I | /(?:\((?R)\))|[^()]*/I |
| 5896 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 5897 | No options | No options |
| 5898 | No first char | No first char |
| 5899 | No need char | No need char |
| # | Line 5978 No need char | Line 5906 No need char |
| 5906 | ((this)) | ((this)) |
| 5907 | 0: ((this)) | 0: ((this)) |
| 5908 | ||
| 5909 | /a(b)c/IPN | /a(b)c/PN |
| 5910 | abc | abc |
| 5911 | Matched with REG_NOSUB | Matched with REG_NOSUB |
| 5912 | ||
| 5913 | /a(?P<name>b)c/IPN | /a(?P<name>b)c/PN |
| 5914 | abc | abc |
| 5915 | Matched with REG_NOSUB | Matched with REG_NOSUB |
| 5916 | ||
| # | Line 6160 Named capturing subpatterns: | Line 6088 Named capturing subpatterns: |
| 6088 | A 2 | A 2 |
| 6089 | A 3 | A 3 |
| 6090 | Options: anchored dupnames | Options: anchored dupnames |
| 6091 | Duplicate name status changes | |
| 6092 | No first char | No first char |
| 6093 | No need char | No need char |
| 6094 | a1b\CA | a1b\CA |
| # | Line 6306 Failed: octal value is greater than \377 | Line 6235 Failed: octal value is greater than \377 |
| 6235 | ||
| 6236 | /\s*,\s*/IS | /\s*,\s*/IS |
| 6237 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 6238 | No options | No options |
| 6239 | No first char | No first char |
| 6240 | Need char = ',' | Need char = ',' |
| 6241 | Subject length lower bound = 1 | |
| 6242 | Starting byte set: \x09 \x0a \x0c \x0d \x20 , | Starting byte set: \x09 \x0a \x0c \x0d \x20 , |
| 6243 | \x0b,\x0b | \x0b,\x0b |
| 6244 | 0: , | 0: , |
| # |
Line 6436
Unknown newline type at: |
Line 6365
Unknown newline type at: |
| 6365 | ||
| 6366 | /.*/I<lf> | /.*/I<lf> |
| 6367 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 6368 | Options: | Options: |
| 6369 | Forced newline sequence: LF | Forced newline sequence: LF |
| 6370 | First char at start or follows newline | First char at start or follows newline |
| # | Line 6462 No need char | Line 6390 No need char |
| 6390 | ||
| 6391 | /\w+(.)(.)?def/Is | /\w+(.)(.)?def/Is |
| 6392 | Capturing subpattern count = 2 | Capturing subpattern count = 2 |
| Partial matching not supported | ||
| 6393 | Options: dotall | Options: dotall |
| 6394 | No first char | No first char |
| 6395 | Need char = 'f' | Need char = 'f' |
| # | Line 6479 Need char = 'f' | Line 6406 Need char = 'f' |
| 6406 | ||
| 6407 | +((?:\s|//.*\\n|/[*](?:\\n|.)*?[*]/)*)+I | +((?:\s|//.*\\n|/[*](?:\\n|.)*?[*]/)*)+I |
| 6408 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
| Partial matching not supported | ||
| 6409 | No options | No options |
| 6410 | No first char | No first char |
| 6411 | No need char | No need char |
| # | Line 6614 No need char | Line 6540 No need char |
| 6540 | ||
| 6541 | /(a*b|(?i:c*(?-i)d))/IS | /(a*b|(?i:c*(?-i)d))/IS |
| 6542 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
| Partial matching not supported | ||
| 6543 | No options | No options |
| 6544 | No first char | No first char |
| 6545 | No need char | No need char |
| 6546 | Subject length lower bound = 1 | |
| 6547 | Starting byte set: C a b c d | Starting byte set: C a b c d |
| 6548 | ||
| 6549 | /()[ab]xyz/IS | /()[ab]xyz/IS |
| # | Line 6625 Capturing subpattern count = 1 | Line 6551 Capturing subpattern count = 1 |
| 6551 | No options | No options |
| 6552 | No first char | No first char |
| 6553 | Need char = 'z' | Need char = 'z' |
| 6554 | Subject length lower bound = 4 | |
| 6555 | Starting byte set: a b | Starting byte set: a b |
| 6556 | ||
| 6557 | /(|)[ab]xyz/IS | /(|)[ab]xyz/IS |
| # | Line 6632 Capturing subpattern count = 1 | Line 6559 Capturing subpattern count = 1 |
| 6559 | No options | No options |
| 6560 | No first char | No first char |
| 6561 | Need char = 'z' | Need char = 'z' |
| 6562 | Subject length lower bound = 4 | |
| 6563 | Starting byte set: a b | Starting byte set: a b |
| 6564 | ||
| 6565 | /(|c)[ab]xyz/IS | /(|c)[ab]xyz/IS |
| # | Line 6639 Capturing subpattern count = 1 | Line 6567 Capturing subpattern count = 1 |
| 6567 | No options | No options |
| 6568 | No first char | No first char |
| 6569 | Need char = 'z' | Need char = 'z' |
| 6570 | Subject length lower bound = 4 | |
| 6571 | Starting byte set: a b c | Starting byte set: a b c |
| 6572 | ||
| 6573 | /(|c?)[ab]xyz/IS | /(|c?)[ab]xyz/IS |
| # | Line 6646 Capturing subpattern count = 1 | Line 6575 Capturing subpattern count = 1 |
| 6575 | No options | No options |
| 6576 | No first char | No first char |
| 6577 | Need char = 'z' | Need char = 'z' |
| 6578 | Subject length lower bound = 4 | |
| 6579 | Starting byte set: a b c | Starting byte set: a b c |
| 6580 | ||
| 6581 | /(d?|c?)[ab]xyz/IS | /(d?|c?)[ab]xyz/IS |
| # | Line 6653 Capturing subpattern count = 1 | Line 6583 Capturing subpattern count = 1 |
| 6583 | No options | No options |
| 6584 | No first char | No first char |
| 6585 | Need char = 'z' | Need char = 'z' |
| 6586 | Subject length lower bound = 4 | |
| 6587 | Starting byte set: a b c d | Starting byte set: a b c d |
| 6588 | ||
| 6589 | /(d?|c)[ab]xyz/IS | /(d?|c)[ab]xyz/IS |
| # | Line 6660 Capturing subpattern count = 1 | Line 6591 Capturing subpattern count = 1 |
| 6591 | No options | No options |
| 6592 | No first char | No first char |
| 6593 | Need char = 'z' | Need char = 'z' |
| 6594 | Subject length lower bound = 4 | |
| 6595 | Starting byte set: a b c d | Starting byte set: a b c d |
| 6596 | ||
| 6597 | /^a*b\d/DZ | /^a*b\d/DZ |
| # | Line 6673 Starting byte set: a b c d | Line 6605 Starting byte set: a b c d |
| 6605 | End | End |
| 6606 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
| 6607 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 6608 | Options: anchored | Options: anchored |
| 6609 | No first char | No first char |
| 6610 | Need char = 'b' | Need char = 'b' |
| # | Line 6689 Need char = 'b' | Line 6620 Need char = 'b' |
| 6620 | End | End |
| 6621 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
| 6622 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 6623 | Options: anchored | Options: anchored |
| 6624 | No first char | No first char |
| 6625 | Need char = 'b' | Need char = 'b' |
| # | Line 6705 Need char = 'b' | Line 6635 Need char = 'b' |
| 6635 | End | End |
| 6636 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
| 6637 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 6638 | Options: anchored | Options: anchored |
| 6639 | No first char | No first char |
| 6640 | Need char = 'b' | Need char = 'b' |
| # | Line 6721 Need char = 'b' | Line 6650 Need char = 'b' |
| 6650 | End | End |
| 6651 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
| 6652 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 6653 | Options: anchored | Options: anchored |
| 6654 | No first char | No first char |
| 6655 | Need char = 'A' | Need char = 'A' |
| # | Line 6736 No match | Line 6664 No match |
| 6664 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
| 6665 | Bra | Bra |
| 6666 | ^ | ^ |
| 6667 | a* | /i a* |
| 6668 | NC A | /i A |
| 6669 | \d | \d |
| 6670 | Ket | Ket |
| 6671 | End | End |
| 6672 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
| 6673 | Capturing subpattern count = 0 | Capturing subpattern count = 0 |
| Partial matching not supported | ||
| 6674 | Options: anchored caseless | Options: anchored caseless |
| 6675 | No first char | No first char |
| 6676 | Need char = 'A' (caseless) | Need char = 'A' (caseless) |
| # | Line 6754 Need char = 'A' (caseless) | Line 6681 Need char = 'A' (caseless) |
| 6681 | ||
| 6682 | /(a*|b*)[cd]/IS | /(a*|b*)[cd]/IS |
| 6683 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
| Partial matching not supported | ||
| 6684 | No options | No options |
| 6685 | No first char | No first char |
| 6686 | No need char | No need char |
| 6687 | Subject length lower bound = 1 | |
| 6688 | Starting byte set: a b c d | Starting byte set: a b c d |
| 6689 | ||
| 6690 | /(a+|b*)[cd]/IS | /(a+|b*)[cd]/IS |
| 6691 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
| Partial matching not supported | ||
| 6692 | No options | No options |
| 6693 | No first char | No first char |
| 6694 | No need char | No need char |
| 6695 | Subject length lower bound = 1 | |
| 6696 | Starting byte set: a b c d | Starting byte set: a b c d |
| 6697 | ||
| 6698 | /(a*|b+)[cd]/IS | /(a*|b+)[cd]/IS |
| 6699 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
| Partial matching not supported | ||
| 6700 | No options | No options |
| 6701 | No first char | No first char |
| 6702 | No need char | No need char |
| 6703 | Subject length lower bound = 1 | |
| 6704 | Starting byte set: a b c d | Starting byte set: a b c d |
| 6705 | ||
| 6706 | /(a+|b+)[cd]/IS | /(a+|b+)[cd]/IS |
| 6707 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
| Partial matching not supported | ||
| 6708 | No options | No options |
| 6709 | No first char | No first char |
| 6710 | No need char | No need char |
| 6711 | Subject length lower bound = 2 | |
| 6712 | Starting byte set: a b | Starting byte set: a b |
| 6713 | ||
| 6714 | /(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((( | /(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((( |
| # | Line 7366 Matched, but too many substrings | Line 7293 Matched, but too many substrings |
| 7293 | /[^a]+a/BZi | /[^a]+a/BZi |
| 7294 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
| 7295 | Bra | Bra |
| 7296 | [^A]++ | /i [^A]++ |
| 7297 | NC a | /i a |
| 7298 | Ket | Ket |
| 7299 | End | End |
| 7300 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
| # | Line 7375 Matched, but too many substrings | Line 7302 Matched, but too many substrings |
| 7302 | /[^a]+A/BZi | /[^a]+A/BZi |
| 7303 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
| 7304 | Bra | Bra |
| 7305 | [^A]++ | /i [^A]++ |
| 7306 | NC A | /i A |
| 7307 | Ket | Ket |
| 7308 | End | End |
| 7309 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
| # | Line 7587 No match | Line 7514 No match |
| 7514 | ^ | ^ |
| 7515 | CBra 1 | CBra 1 |
| 7516 | Cond | Cond |
| 7517 | 2 Cond ref | 2 Cond nref |
| 7518 | y | y |
| 7519 | Ket | Ket |
| 7520 | [()] | [()] |
| # | Line 7653 Named capturing subpatterns: | Line 7580 Named capturing subpatterns: |
| 7580 | one 1 | one 1 |
| 7581 | three 3 | three 3 |
| 7582 | two 2 | two 2 |
| Partial matching not supported | ||
| 7583 | Options: anchored caseless | Options: anchored caseless |
| 7584 | No first char | No first char |
| 7585 | No need char | No need char |
| # | Line 7687 No match | Line 7613 No match |
| 7613 | /(?=(\w+))\1:/I | /(?=(\w+))\1:/I |
| 7614 | Capturing subpattern count = 1 | Capturing subpattern count = 1 |
| 7615 | Max back reference = 1 | Max back reference = 1 |
| Partial matching not supported | ||
| 7616 | No options | No options |
| 7617 | No first char | No first char |
| 7618 | Need char = ':' | Need char = ':' |
| # | Line 7700 Capturing subpattern count = 1 | Line 7625 Capturing subpattern count = 1 |
| 7625 | Max back reference = 1 | Max back reference = 1 |
| 7626 | Named capturing subpatterns: | Named capturing subpatterns: |
| 7627 | abc 1 | abc 1 |
| Partial matching not supported | ||
| 7628 | No options | No options |
| 7629 | No first char | No first char |
| 7630 | Need char = ':' | Need char = ':' |
| # | Line 7708 Need char = ':' | Line 7632 Need char = ':' |
| 7632 | 0: abcd: | 0: abcd: |
| 7633 | 1: abcd | 1: abcd |
| 7634 | ||
| /(?'abc'\w+):\k<abc>{2}/ | ||
| a:aaxyz | ||
| 0: a:aa | ||
| 1: a | ||
| ab:ababxyz | ||
| 0: ab:abab | ||
| 1: ab | ||
| ** Failers | ||
| No match | ||
| a:axyz | ||
| No match | ||
| ab:abxyz | ||
| No match | ||
| 7635 | /(?'abc'a|b)(?<abc>d|e)\k<abc>{2}/J | /(?'abc'a|b)(?<abc>d|e)\k<abc>{2}/J |
| 7636 | adaa | adaa |
| 7637 | 0: adaa | 0: adaa |
| # | Line 7748 No match | Line 7658 No match |
| 7658 | bddd | bddd |
| 7659 | No match | No match |
| 7660 | ||
| /^(?<ab>a)? (?(<ab>)b|c) (?('ab')d|e)/x | ||
| abd | ||
| 0: abd | ||
| 1: a | ||
| ce | ||
| 0: ce | ||
| 7661 | /(?(<bc))/ | /(?(<bc))/ |
| 7662 | Failed: malformed number or name after (?( at offset 6 | Failed: malformed number or name after (?( at offset 6 |
| 7663 | ||
| # | Line 7785 Failed: reference to non-existent subpat | Line 7688 Failed: reference to non-existent subpat |
| 7688 | 1: abcabc1Xabc2XabcX | 1: abcabc1Xabc2XabcX |
| 7689 | 2: abcabc1Xabc2XabcX | 2: abcabc1Xabc2XabcX |
| 7690 | ||
| /^(?(DEFINE) (?<A> a) (?<B> b) ) (?&A) (?&B) /x | ||
| abcd | ||
| 0: ab | ||
| 1: <unset> | ||
| 2: <unset> | ||
| /(?<NAME>(?&NAME_PAT))\s+(?<ADDR>(?&ADDRESS_PAT)) | ||
| (?(DEFINE) | ||
| (?<NAME_PAT>[a-z]+) | ||
| (?<ADDRESS_PAT>\d+) | ||
| )/x | ||
| metcalfe 33 | ||
| 0: metcalfe 33 | ||
| 1: metcalfe | ||
| 2: 33 | ||
| 3: <unset> | ||
| 4: <unset> | ||
| 7691 | /^(?(DEFINE) abc | xyz ) /x | /^(?(DEFINE) abc | xyz ) /x |
| 7692 | Failed: DEFINE group contains more than one branch at offset 22 | Failed: DEFINE group contains more than one branch at offset 22 |
| 7693 | ||
| # | Line 7844 No match | Line 7729 No match |
| 7729 | No match | No match |
| 7730 | ||
| 7731 | /^abc./mgx<any> | /^abc./mgx<any> |
| 7732 | abc1 \x0aabc2 \x0babc3xx \x0cabc4 \x0dabc5xx \x0d\x0aabc6 \x85abc7 \x{2028}abc8 \x{2029}abc9 JUNK | abc1 \x0aabc2 \x0babc3xx \x0cabc4 \x0dabc5xx \x0d\x0aabc6 \x85abc7 JUNK |
| 7733 | 0: abc1 | 0: abc1 |
| 7734 | 0: abc2 | 0: abc2 |
| 7735 | 0: abc3 | 0: abc3 |
| # | Line 7854 No match | Line 7739 No match |
| 7739 | 0: abc7 | 0: abc7 |
| 7740 | ||
| 7741 | /abc.$/mgx<any> | /abc.$/mgx<any> |
| 7742 | abc1\x0a abc2\x0b abc3\x0c abc4\x0d abc5\x0d\x0a abc6\x85 abc7\x{2028} abc8\x{2029} abc9 | abc1\x0a abc2\x0b abc3\x0c abc4\x0d abc5\x0d\x0a abc6\x85 abc7 abc9 |
| 7743 | 0: abc1 | 0: abc1 |
| 7744 | 0: abc2 | 0: abc2 |
| 7745 | 0: abc3 | 0: abc3 |
| # | Line 7868 No match | Line 7753 No match |
| 7753 | /a/<any><crlf> | /a/<any><crlf> |
| 7754 | Failed: inconsistent NEWLINE options at offset 0 | Failed: inconsistent NEWLINE options at offset 0 |
| 7755 | ||
| 7756 | /^a\Rb/ | /^a\Rb/<bsr_unicode> |
| 7757 | a\nb | a\nb |
| 7758 | 0: a\x0ab | 0: a\x0ab |
| 7759 | a\rb | a\rb |
| # | Line 7886 No match | Line 7771 No match |
| 7771 | a\n\rb | a\n\rb |
| 7772 | No match | No match |
| 7773 | ||
| 7774 | /^a\R*b/ | /^a\R*b/<bsr_unicode> |
| 7775 | ab | ab |
| 7776 | 0: ab | 0: ab |
| 7777 | a\nb | a\nb |
| # | Line 7906 No match | Line 7791 No match |
| 7791 | a\n\r\x85\x0cb | a\n\r\x85\x0cb |
| 7792 | 0: a\x0a\x0d\x85\x0cb | 0: a\x0a\x0d\x85\x0cb |
| 7793 | ||
| 7794 | /^a\R+b/ | /^a\R+b/<bsr_unicode> |
| 7795 | a\nb | a\nb |
| 7796 | 0: a\x0ab | 0: a\x0ab |
| 7797 | a\rb | a\rb |
| # | Line 7928 No match | Line 7813 No match |
| 7813 | ab | ab |
| 7814 | No match | No match |
| 7815 | ||
| 7816 | /^a\R{1,3}b/ | /^a\R{1,3}b/<bsr_unicode> |
| 7817 | a\nb | a\nb |
| 7818 | 0: a\x0ab | 0: a\x0ab |
| 7819 | a\n\rb | a\n\rb |
| # | Line 7950 No match | Line 7835 No match |
| 7835 | a\r | a\r |
| 7836 | No match | No match |
| 7837 | ||
| 7838 | /^a[\R]b/ | /^a[\R]b/<bsr_unicode> |
| 7839 | aRb | aRb |
| 7840 | 0: aRb | 0: aRb |
| 7841 | ** Failers | ** Failers |
| # | Line 7980 Need char = 'P' | Line 7865 Need char = 'P' |
| 7865 | 0: PXP | 0: PXP |
| 7866 | 1: P | 1: P |
| 7867 | ||
| /(?(DEFINE)(?<byte>2[0-4]\d|25[0-5]|1\d\d|[1-9]?\d))\b(?&byte)(\.(?&byte)){3}/ | ||
| 1.2.3.4 | ||
| 0: 1.2.3.4 | ||
| 1: <unset> | ||
| 2: .4 | ||
| 131.111.10.206 | ||
| 0: 131.111.10.206 | ||
| 1: <unset> | ||
| 2: .206 | ||
| 10.0.0.0 | ||
| 0: 10.0.0.0 | ||
| 1: <unset> | ||
| 2: .0 | ||
| ** Failers | ||
| No match | ||
| 10.6 | ||
| No match | ||
| 455.3.4.5 | ||
| No match | ||
| /\b(?&byte)(\.(?&byte)){3}(?(DEFINE)(?<byte>2[0-4]\d|25[0-5]|1\d\d|[1-9]?\d))/ | ||
| 1.2.3.4 | ||
| 0: 1.2.3.4 | ||
| 1: .4 | ||
| 2: <unset> | ||
| 131.111.10.206 | ||
| 0: 131.111.10.206 | ||
| 1: .206 | ||
| 2: <unset> | ||
| 10.0.0.0 | ||
| 0: 10.0.0.0 | ||
| 1: .0 | ||
| 2: <unset> | ||
| ** Failers | ||
| No match | ||
| 10.6 | ||
| No match | ||
| 455.3.4.5 | ||
| No match | ||
| 7868 | /(?:a(?&abc)b)*(?<abc>x)/ | /(?:a(?&abc)b)*(?<abc>x)/ |
| 7869 | 123axbaxbaxbx456 | 123axbaxbaxbx456 |
| 7870 | 0: axbaxbaxbx | 0: axbaxbaxbx |
| # | Line 8057 No match | Line 7902 No match |
| 7902 | DEFabcABCXYZ | DEFabcABCXYZ |
| 7903 | No match | No match |
| 7904 | ||
| /^(a(b))\1\g1\g{1}\g-1\g{-1}\g{-02}Z/ | ||
| ababababbbabZXXXX | ||
| 0: ababababbbabZ | ||
| 1: ab | ||
| 2: b | ||
| 7905 | /^(a)\g-2/ | /^(a)\g-2/ |
| 7906 | Failed: reference to non-existent subpattern at offset 4 | Failed: reference to non-existent subpattern at offset 7 |
| 7907 | ||
| 7908 | /^(a)\g/ | /^(a)\g/ |
| 7909 | Failed: \g is not followed by a braced name or an optionally braced non-zero number at offset 4 | Failed: a numbered reference must not be zero at offset 5 |
| 7910 | ||
| 7911 | /^(a)\g{0}/ | /^(a)\g{0}/ |
| 7912 | Failed: \g is not followed by a braced name or an optionally braced non-zero number at offset 4 | Failed: a numbered reference must not be zero at offset 8 |
| 7913 | ||
| 7914 | /^(a)\g{3/ | /^(a)\g{3/ |
| 7915 | Failed: \g is not followed by a braced name or an optionally braced non-zero number at offset 4 | Failed: \g is not followed by a braced, angle-bracketed, or quoted name/number or by a plain number at offset 8 |
| 7916 | ||
| 7917 | /^(a)\g{4a}/ | /^(a)\g{4a}/ |
| 7918 | Failed: reference to non-existent subpattern at offset 9 | Failed: reference to non-existent subpattern at offset 9 |
| # | Line 8156 No match | Line 7995 No match |
| 7995 | 0+ | 0+ |
| 7996 | ||
| 7997 | /abc.$/mgx<anycrlf> | /abc.$/mgx<anycrlf> |
| 7998 | abc1\x0a abc2\x0b abc3\x0c abc4\x0d abc5\x0d\x0a abc6\x85 abc7\x{2028} abc8\x{2029} abc9 | abc1\x0a abc2\x0b abc3\x0c abc4\x0d abc5\x0d\x0a abc6\x85 abc9 |
| 7999 | 0: abc1 | 0: abc1 |
| 8000 | 0: abc4 | 0: abc4 |
| 8001 | 0: abc5 | 0: abc5 |
| # | Line 8210 No match | Line 8049 No match |
| 8049 | No match | No match |
| 8050 | ||
| 8051 | /x(?-0)y/ | /x(?-0)y/ |
| 8052 | Failed: (?+ or (?- or (?(+ or (?(- must be followed by a non-zero number at offset 5 | Failed: a numbered reference must not be zero at offset 5 |
| 8053 | ||
| 8054 | /x(?-1)y/ | /x(?-1)y/ |
| 8055 | Failed: reference to non-existent subpattern at offset 5 | Failed: reference to non-existent subpattern at offset 5 |
| 8056 | ||
| 8057 | /x(?+0)y/ | /x(?+0)y/ |
| 8058 | Failed: (?+ or (?- or (?(+ or (?(- must be followed by a non-zero number at offset 5 | Failed: a numbered reference must not be zero at offset 5 |
| 8059 | ||
| 8060 | /x(?+1)y/ | /x(?+1)y/ |
| 8061 | Failed: reference to non-existent subpattern at offset 5 | Failed: reference to non-existent subpattern at offset 5 |
| # | Line 8298 Failed: reference to non-existent subpat | Line 8137 Failed: reference to non-existent subpat |
| 8137 | /((?(-2)a))/BZ | /((?(-2)a))/BZ |
| 8138 | Failed: reference to non-existent subpattern at offset 7 | Failed: reference to non-existent subpattern at offset 7 |
| 8139 | ||
| 8140 | /^(?(+1)X|Y)/BZ | /^(?(+1)X|Y)(.)/BZ |
| 8141 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
| 8142 | Bra | Bra |
| 8143 | ^ | ^ |
| # | Line 8308 Failed: reference to non-existent subpat | Line 8147 Failed: reference to non-existent subpat |
| 8147 | Alt | Alt |
| 8148 | Y | Y |
| 8149 | Ket | Ket |
| 8150 | CBra 1 | |
| 8151 | Any | |
| 8152 | Ket | |
| 8153 | Ket | Ket |
| 8154 | End | End |
| 8155 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
| 8156 | Y | Y! |
| 8157 | 0: Y | 0: Y! |
| 8158 | 1: ! | |
| /(foo)\Kbar/ | ||
| foobar | ||
| 0: bar | ||
| 1: foo | ||
| /(foo)(\Kbar|baz)/ | ||
| foobar | ||
| 0: bar | ||
| 1: foo | ||
| 2: bar | ||
| foobaz | ||
| 0: foobaz | ||
| 1: foo | ||
| 2: baz | ||
| /(foo\Kbar)baz/ | ||
| foobarbaz | ||
| 0: barbaz | ||
| 1: foobar | ||
| 8159 | ||
| 8160 | /(?<A>tom|bon)-\k{A}/ | /(?<A>tom|bon)-\k{A}/ |
| 8161 | tom-tom | tom-tom |
| # | Line 8346 No match | Line 8169 No match |
| 8169 | tom-bon | tom-bon |
| 8170 | No match | No match |
| 8171 | ||
| /(?<A>tom|bon)-\g{A}/ | ||
| tom-tom | ||
| 0: tom-tom | ||
| 1: tom | ||
| bon-bon | ||
| 0: bon-bon | ||
| 1: bon | ||
| 8172 | /\g{A/ | /\g{A/ |
| 8173 | Failed: syntax error in subpattern name (missing terminator) at offset 4 | Failed: syntax error in subpattern name (missing terminator) at offset 4 |
| 8174 | ||
| # | Line 8448 Failed: syntax error in subpattern name | Line 8263 Failed: syntax error in subpattern name |
| 8263 | 3: <unset> | 3: <unset> |
| 8264 | 4: x | 4: x |
| 8265 | ||
| /(?|(abc)|(xyz))\1/ | ||
| abcabc | ||
| 0: abcabc | ||
| 1: abc | ||
| xyzxyz | ||
| 0: xyzxyz | ||
| 1: xyz | ||
| ** Failers | ||
| No match | ||
| abcxyz | ||
| No match | ||
| xyzabc | ||
| No match | ||
| /(?|(abc)|(xyz))(?1)/ | ||
| abcabc | ||
| 0: abcabc | ||
| 1: abc | ||
| xyzabc | ||
| 0: xyzabc | ||
| 1: xyz | ||
| ** Failers | ||
| No match | ||
| xyzxyz | ||
| No match | ||
| /\H\h\V\v/ | ||
| X X\x0a | ||
| 0: X X\x0a | ||
| X\x09X\x0b | ||
| 0: X\x09X\x0b | ||
| ** Failers | ||
| No match | ||
| \xa0 X\x0a | ||
| No match | ||
| /\H*\h+\V?\v{3,4}/ | ||
| \x09\x20\xa0X\x0a\x0b\x0c\x0d\x0a | ||
| 0: \x09 \xa0X\x0a\x0b\x0c\x0d | ||
| \x09\x20\xa0\x0a\x0b\x0c\x0d\x0a | ||
| 0: \x09 \xa0\x0a\x0b\x0c\x0d | ||
| \x09\x20\xa0\x0a\x0b\x0c | ||
| 0: \x09 \xa0\x0a\x0b\x0c | ||
| ** Failers | ||
| No match | ||
| \x09\x20\xa0\x0a\x0b | ||
| No match | ||
| /\H{3,4}/ | ||
| XY ABCDE | ||
| 0: ABCD | ||
| XY PQR ST | ||
| 0: PQR | ||
| /.\h{3,4}./ | ||
| XY AB PQRS | ||
| 0: B P | ||
| /\h*X\h?\H+Y\H?Z/ | ||
| >XNNNYZ | ||
| 0: XNNNYZ | ||
| > X NYQZ | ||
| 0: X NYQZ | ||
| ** Failers | ||
| No match | ||
| >XYZ | ||
| No match | ||
| > X NY Z | ||
| No match | ||
| /\v*X\v?Y\v+Z\V*\x0a\V+\x0b\V{2,3}\x0c/ | ||
| >XY\x0aZ\x0aA\x0bNN\x0c | ||
| 0: XY\x0aZ\x0aA\x0bNN\x0c | ||
| >\x0a\x0dX\x0aY\x0a\x0bZZZ\x0aAAA\x0bNNN\x0c | ||
| 0: \x0a\x0dX\x0aY\x0a\x0bZZZ\x0aAAA\x0bNNN\x0c | ||
| 8266 | /[\h]/BZ | /[\h]/BZ |
| 8267 | ------------------------------------------------------------------ | ------------------------------------------------------------------ |
| 8268 | Bra | Bra |
| # | Line 8796 Failed: missing terminating ] for charac | Line 8535 Failed: missing terminating ] for charac |
| 8535 | /[\Q\E^]AAA/ | /[\Q\E^]AAA/ |
| 8536 | Failed: missing terminating ] for character class at offset 10 | Failed: missing terminating ] for character class at offset 10 |
| 8537 | ||
| 8538 | / End of testinput2 / | /A(*PRUNE)B(*SKIP)C(*THEN)D(*COMMIT)E(*F)F(*FAIL)G(?!)H(*ACCEPT)I/BZ |
| 8539 | ------------------------------------------------------------------ | |
| 8540 | Bra | |
| 8541 | A | |
| 8542 | *PRUNE | |
| 8543 | B | |
| 8544 | *SKIP | |
| 8545 | C | |
| 8546 | *THEN | |
| 8547 | D | |
| 8548 | *COMMIT | |
| 8549 | E | |
| 8550 | *FAIL | |
| 8551 | F | |
| 8552 | *FAIL | |
| 8553 | G | |
| 8554 | *FAIL | |
| 8555 | H | |
| 8556 | *ACCEPT | |
| 8557 | I | |
| 8558 | Ket | |
| 8559 | End | |
| 8560 | ------------------------------------------------------------------ | |
| 8561 | ||
| 8562 | /^a+(*FAIL)/C | |
| 8563 | aaaaaa | |
| 8564 | --->aaaaaa | |
| 8565 | +0 ^ ^ | |
| 8566 | +1 ^ a+ | |
| 8567 | +3 ^ ^ (*FAIL) | |
| 8568 | +3 ^ ^ (*FAIL) | |
| 8569 | +3 ^ ^ (*FAIL) | |
| 8570 | +3 ^ ^ (*FAIL) | |
| 8571 | +3 ^ ^ (*FAIL) | |
| 8572 | +3 ^^ (*FAIL) | |
| 8573 | No match | |
| 8574 | ||
| 8575 | /a+b?c+(*FAIL)/C | |
| 8576 | aaabccc | |
| 8577 | --->aaabccc | |
| 8578 | +0 ^ a+ | |
| 8579 | +2 ^ ^ b? | |
| 8580 | +4 ^ ^ c+ | |
| 8581 | +6 ^ ^ (*FAIL) | |
| 8582 | +6 ^ ^ (*FAIL) | |
| 8583 | +6 ^ ^ (*FAIL) | |
| 8584 | +4 ^ ^ c+ | |
| 8585 | +2 ^ ^ b? | |
| 8586 | +4 ^ ^ c+ | |
| 8587 | +2 ^^ b? | |
| 8588 | +4 ^^ c+ | |
| 8589 | +0 ^ a+ | |
| 8590 | +2 ^ ^ b? | |
| 8591 | +4 ^ ^ c+ | |
| 8592 | +6 ^ ^ (*FAIL) | |
| 8593 | +6 ^ ^ (*FAIL) | |
| 8594 | +6 ^ ^ (*FAIL) | |
| 8595 | +4 ^ ^ c+ | |
| 8596 | +2 ^^ b? | |
| 8597 | +4 ^^ c+ | |
| 8598 | +0 ^ a+ | |
| 8599 | +2 ^^ b? | |
| 8600 | +4 ^ ^ c+ | |
| 8601 | +6 ^ ^ (*FAIL) | |
| 8602 | +6 ^ ^ (*FAIL) | |
| 8603 | +6 ^ ^ (*FAIL) | |
| 8604 | +4 ^^ c+ | |
| 8605 | No match | |
| 8606 | ||
| 8607 | /a+b?(*PRUNE)c+(*FAIL)/C | |
| 8608 | aaabccc | |
| 8609 | --->aaabccc | |
| 8610 | +0 ^ a+ | |
| 8611 | +2 ^ ^ b? | |
| 8612 | +4 ^ ^ (*PRUNE) | |
| 8613 | +12 ^ ^ c+ | |
| 8614 | +14 ^ ^ (*FAIL) | |
| 8615 | +14 ^ ^ (*FAIL) | |
| 8616 | +14 ^ ^ (*FAIL) | |
| 8617 | +0 ^ a+ | |
| 8618 | +2 ^ ^ b? | |
| 8619 | +4 ^ ^ (*PRUNE) | |
| 8620 | +12 ^ ^ c+ | |
| 8621 | +14 ^ ^ (*FAIL) | |
| 8622 | +14 ^ ^ (*FAIL) | |
| 8623 | +14 ^ ^ (*FAIL) | |
| 8624 | +0 ^ a+ | |
| 8625 | +2 ^^ b? | |
| 8626 | +4 ^ ^ (*PRUNE) | |
| 8627 | +12 ^ ^ c+ | |
| 8628 | +14 ^ ^ (*FAIL) | |
| 8629 | +14 ^ ^ (*FAIL) | |
| 8630 | +14 ^ ^ (*FAIL) | |
| 8631 | No match | |
| 8632 | ||
| 8633 | /a+b?(*COMMIT)c+(*FAIL)/C | |
| 8634 | aaabccc | |
| 8635 | --->aaabccc | |
| 8636 | +0 ^ a+ | |
| 8637 | +2 ^ ^ b? | |
| 8638 | +4 ^ ^ (*COMMIT) | |
| 8639 | +13 ^ ^ c+ | |
| 8640 | +15 ^ ^ (*FAIL) | |
| 8641 | +15 ^ ^ (*FAIL) | |
| 8642 | +15 ^ ^ (*FAIL) | |
| 8643 | No match | |
| 8644 | ||
| 8645 | /a+b?(*SKIP)c+(*FAIL)/C | |
| 8646 | aaabcccaaabccc | |
| 8647 | --->aaabcccaaabccc | |
| 8648 | +0 ^ a+ | |
| 8649 | +2 ^ ^ b? | |
| 8650 | +4 ^ ^ (*SKIP) | |
| 8651 | +11 ^ ^ c+ | |
| 8652 | +13 ^ ^ (*FAIL) | |
| 8653 | +13 ^ ^ (*FAIL) | |
| 8654 | +13 ^ ^ (*FAIL) | |
| 8655 | +0 ^ a+ | |
| 8656 | +2 ^ ^ b? | |
| 8657 | +4 ^ ^ (*SKIP) | |
| 8658 | +11 ^ ^ c+ | |
| 8659 | +13 ^ ^ (*FAIL) | |
| 8660 | +13 ^ ^ (*FAIL) | |
| 8661 | +13 ^ ^ (*FAIL) | |
| 8662 | No match | |
| 8663 | ||
| 8664 | /a+b?(*THEN)c+(*FAIL)/C | |
| 8665 | aaabccc | |
| 8666 | --->aaabccc | |
| 8667 | +0 ^ a+ | |
| 8668 | +2 ^ ^ b? | |
| 8669 | +4 ^ ^ (*THEN) | |
| 8670 | +11 ^ ^ c+ | |
| 8671 | +13 ^ ^ (*FAIL) | |
| 8672 | +13 ^ ^ (*FAIL) | |
| 8673 | +13 ^ ^ (*FAIL) | |
| 8674 | +0 ^ a+ | |
| 8675 | +2 ^ ^ b? | |
| 8676 | +4 ^ ^ (*THEN) | |
| 8677 | +11 ^ ^ c+ | |
| 8678 | +13 ^ ^ (*FAIL) | |
| 8679 | +13 ^ ^ (*FAIL) | |
| 8680 | +13 ^ ^ (*FAIL) | |
| 8681 | +0 ^ a+ | |
| 8682 | +2 ^^ b? | |
| 8683 | +4 ^ ^ (*THEN) | |
| 8684 | +11 ^ ^ c+ | |
| 8685 | +13 ^ ^ (*FAIL) | |
| 8686 | +13 ^ ^ (*FAIL) | |
| 8687 | +13 ^ ^ (*FAIL) | |
| 8688 | No match | |
| 8689 | ||
| 8690 | /a(*MARK)b/ | |
| 8691 | Failed: (*MARK) must have an argument at offset 7 | |
| 8692 | ||
| 8693 | /(?i:A{1,}\6666666666)/ | |
| 8694 | Failed: number is too big at offset 19 | |
| 8695 | ||
| 8696 | /\g6666666666/ | |
| 8697 | Failed: number is too big at offset 11 | |
| 8698 | ||
| 8699 | /[\g6666666666]/ | |
| 8700 | Failed: number is too big at offset 12 | |
| 8701 | ||
| 8702 | /(?1)\c[/ | |
| 8703 | Failed: reference to non-existent subpattern at offset 3 | |
| 8704 | ||
| 8705 | /.+A/<crlf> | |
| 8706 | \r\nA | |
| 8707 | No match | |
| 8708 | ||
| 8709 | /\nA/<crlf> | |
| 8710 | \r\nA | |
| 8711 | 0: \x0aA | |
| 8712 | ||
| 8713 | /[\r\n]A/<crlf> | |
| 8714 | \r\nA | |
| 8715 | 0: \x0aA | |
| 8716 | ||
| 8717 | /(\r|\n)A/<crlf> | |
| 8718 | \r\nA | |
| 8719 | 0: \x0aA | |
| 8720 | 1: \x0a | |
| 8721 | ||
| 8722 | /a(*CR)b/ | |
| 8723 | Failed: (*VERB) not recognized at offset 5 | |
| 8724 | ||
| 8725 | /(*CR)a.b/ | |
| 8726 | a\nb | |
| 8727 | 0: a\x0ab | |
| 8728 | ** Failers | |
| 8729 | No match | |
| 8730 | a\rb | |
| 8731 | No match | |
| 8732 | ||
| 8733 | /(*CR)a.b/<lf> | |
| 8734 | a\nb | |
| 8735 | 0: a\x0ab | |
| 8736 | ** Failers | |
| 8737 | No match | |
| 8738 | a\rb | |
| 8739 | No match | |
| 8740 | ||
| 8741 | /(*LF)a.b/<CRLF> | |
| 8742 | a\rb | |
| 8743 | 0: a\x0db | |
| 8744 | ** Failers | |
| 8745 | No match | |
| 8746 | a\nb | |
| 8747 | No match | |
| 8748 | ||
| 8749 | /(*CRLF)a.b/ | |
| 8750 | a\rb | |
| 8751 | 0: a\x0db | |
| 8752 | a\nb | |
| 8753 | 0: a\x0ab | |
| 8754 | ** Failers | |
| 8755 | No match | |
| 8756 | a\r\nb | |
| 8757 | No match | |
| 8758 | ||
| 8759 | /(*ANYCRLF)a.b/<CR> | |
| 8760 | ** Failers | |
| 8761 | No match | |
| 8762 | a\rb | |
| 8763 | No match | |
| 8764 | a\nb | |
| 8765 | No match | |
| 8766 | a\r\nb | |
| 8767 | No match | |
| 8768 | ||
| 8769 | /(*ANY)a.b/<cr> | |
| 8770 | ** Failers | |
| 8771 | No match | |
| 8772 | a\rb | |
| 8773 | No match | |
| 8774 | a\nb | |
| 8775 | No match | |
| 8776 | a\r\nb | |
| 8777 | No match | |
| 8778 | a\x85b | |
| 8779 | No match | |
| 8780 | ||
| 8781 | /(*ANY).*/g | |
| 8782 | abc\r\ndef | |
| 8783 | 0: abc | |
| 8784 | 0: | |
| 8785 | 0: def | |
| 8786 | 0: | |
| 8787 | ||
| 8788 | /(*ANYCRLF).*/g | |
| 8789 | abc\r\ndef | |
| 8790 | 0: abc | |
| 8791 | 0: | |
| 8792 | 0: def | |
| 8793 | 0: | |
| 8794 | ||
| 8795 | /(*CRLF).*/g | |
| 8796 | abc\r\ndef | |
| 8797 | 0: abc | |
| 8798 | 0: | |
| 8799 | 0: def | |
| 8800 | 0: | |
| 8801 | ||
| 8802 | /a\Rb/I<bsr_anycrlf> | |
| 8803 | Capturing subpattern count = 0 | |
| 8804 | Options: bsr_anycrlf | |
| 8805 | First char = 'a' | |
| 8806 | Need char = 'b' | |
| 8807 | a\rb | |
| 8808 | 0: a\x0db | |
| 8809 | a\nb | |
| 8810 | 0: a\x0ab | |
| 8811 | a\r\nb | |
| 8812 | 0: a\x0d\x0ab | |
| 8813 | ** Failers | |
| 8814 | No match | |
| 8815 | a\x85b | |
| 8816 | No match | |
| 8817 | a\x0bb | |
| 8818 | No match | |
| 8819 | ||
| 8820 | /a\Rb/I<bsr_unicode> | |
| 8821 | Capturing subpattern count = 0 | |
| 8822 | Options: bsr_unicode | |
| 8823 | First char = 'a' | |
| 8824 | Need char = 'b' | |
| 8825 | a\rb | |
| 8826 | 0: a\x0db | |
| 8827 | a\nb | |
| 8828 | 0: a\x0ab | |
| 8829 | a\r\nb | |
| 8830 | 0: a\x0d\x0ab | |
| 8831 | a\x85b | |
| 8832 | 0: a\x85b | |
| 8833 | a\x0bb | |
| 8834 | 0: a\x0bb | |
| 8835 | ** Failers | |
| 8836 | No match | |
| 8837 | a\x85b\<bsr_anycrlf> | |
| 8838 | No match | |
| 8839 | a\x0bb\<bsr_anycrlf> | |
| 8840 | No match | |
| 8841 | ||
| 8842 | /a\R?b/I<bsr_anycrlf> | |
| 8843 | Capturing subpattern count = 0 | |
| 8844 | Options: bsr_anycrlf | |
| 8845 | First char = 'a' | |
| 8846 | Need char = 'b' | |
| 8847 | a\rb | |
| 8848 | 0: a\x0db | |
| 8849 | a\nb | |
| 8850 | 0: a\x0ab | |
| 8851 | a\r\nb | |
| 8852 | 0: a\x0d\x0ab | |
| 8853 | ** Failers | |
| 8854 | No match | |
| 8855 | a\x85b | |
| 8856 | No match | |
| 8857 | a\x0bb | |
| 8858 | No match | |
| 8859 | ||
| 8860 | /a\R?b/I<bsr_unicode> | |
| 8861 | Capturing subpattern count = 0 | |
| 8862 | Options: bsr_unicode | |
| 8863 | First char = 'a' | |
| 8864 | Need char = 'b' | |
| 8865 | a\rb | |
| 8866 | 0: a\x0db | |
| 8867 | a\nb | |
| 8868 | 0: a\x0ab | |
| 8869 | a\r\nb | |
| 8870 | 0: a\x0d\x0ab | |
| 8871 | a\x85b | |
| 8872 | 0: a\x85b | |
| 8873 | a\x0bb | |
| 8874 | 0: a\x0bb | |
| 8875 | ** Failers | |
| 8876 | No match | |
| 8877 | a\x85b\<bsr_anycrlf> | |
| 8878 | No match | |
| 8879 | a\x0bb\<bsr_anycrlf> | |
| 8880 | No match | |
| 8881 | ||
| 8882 | /a\R{2,4}b/I<bsr_anycrlf> | |
| 8883 | Capturing subpattern count = 0 | |
| 8884 | Options: bsr_anycrlf | |
| 8885 | First char = 'a' | |
| 8886 | Need char = 'b' | |
| 8887 | a\r\n\nb | |
| 8888 | 0: a\x0d\x0a\x0ab | |
| 8889 | a\n\r\rb | |
| 8890 | 0: a\x0a\x0d\x0db | |
| 8891 | a\r\n\r\n\r\n\r\nb | |
| 8892 | 0: a\x0d\x0a\x0d\x0a\x0d\x0a\x0d\x0ab | |
| 8893 | ** Failers | |
| 8894 | No match | |
| 8895 | a\x85\85b | |
| 8896 | No match | |
| 8897 | a\x0b\0bb | |
| 8898 | No match | |
| 8899 | ||
| 8900 | /a\R{2,4}b/I<bsr_unicode> | |
| 8901 | Capturing subpattern count = 0 | |
| 8902 | Options: bsr_unicode | |
| 8903 | First char = 'a' | |
| 8904 | Need char = 'b' | |
| 8905 | a\r\rb | |
| 8906 | 0: a\x0d\x0db | |
| 8907 | a\n\n\nb | |
| 8908 | 0: a\x0a\x0a\x0ab | |
| 8909 | a\r\n\n\r\rb | |
| 8910 | 0: a\x0d\x0a\x0a\x0d\x0db | |
| 8911 | a\x85\85b | |
| 8912 | No match | |
| 8913 | a\x0b\0bb | |
| 8914 | No match | |
| 8915 | ** Failers | |
| 8916 | No match | |
| 8917 | a\r\r\r\r\rb | |
| 8918 | No match | |
| 8919 | a\x85\85b\<bsr_anycrlf> | |
| 8920 | No match | |
| 8921 | a\x0b\0bb\<bsr_anycrlf> | |
| 8922 | No match | |
| 8923 | ||
| 8924 | /(*BSR_ANYCRLF)a\Rb/I | |
| 8925 | Capturing subpattern count = 0 | |
| 8926 | Options: bsr_anycrlf | |
| 8927 | First char = 'a' | |
| 8928 | Need char = 'b' | |
| 8929 | a\nb | |
| 8930 | 0: a\x0ab | |
| 8931 | a\rb | |
| 8932 | 0: a\x0db | |
| 8933 | ||
| 8934 | /(*BSR_UNICODE)a\Rb/I | |
| 8935 | Capturing subpattern count = 0 | |
| 8936 | Options: bsr_unicode | |
| 8937 | First char = 'a' | |
| 8938 | Need char = 'b' | |
| 8939 | a\x85b | |
| 8940 | 0: a\x85b | |
| 8941 | ||
| 8942 | /(*BSR_ANYCRLF)(*CRLF)a\Rb/I | |
| 8943 | Capturing subpattern count = 0 | |
| 8944 | Options: bsr_anycrlf | |
| 8945 | Forced newline sequence: CRLF | |
| 8946 | First char = 'a' | |
| 8947 | Need char = 'b' | |
| 8948 | a\nb | |
| 8949 | 0: a\x0ab | |
| 8950 | a\rb | |
| 8951 | 0: a\x0db | |
| 8952 | ||
| 8953 | /(*CRLF)(*BSR_UNICODE)a\Rb/I | |
| 8954 | Capturing subpattern count = 0 | |
| 8955 | Options: bsr_unicode | |
| 8956 | Forced newline sequence: CRLF | |
| 8957 | First char = 'a' | |
| 8958 | Need char = 'b' | |
| 8959 | a\x85b | |
| 8960 | 0: a\x85b | |
| 8961 | ||
| 8962 | /(*CRLF)(*BSR_ANYCRLF)(*CR)ab/I | |
| 8963 | Capturing subpattern count = 0 | |
| 8964 | Options: bsr_anycrlf | |
| 8965 | Forced newline sequence: CR | |
| 8966 | First char = 'a' | |
| 8967 | Need char = 'b' | |
| 8968 | ||
| 8969 | /(?<a>)(?&)/ | |
| 8970 | Failed: subpattern name expected at offset 9 | |
| 8971 | ||
| 8972 | /(?<abc>)(?&a)/ | |
| 8973 | Failed: reference to non-existent subpattern at offset 12 | |
| 8974 | ||
| 8975 | /(?<a>)(?&aaaaaaaaaaaaaaaaaaaaaaa)/ | |
| 8976 | Failed: reference to non-existent subpattern at offset 32 | |
| 8977 | ||
| 8978 | /(?+-a)/ | |
| 8979 | Failed: digit expected after (?+ at offset 3 | |
| 8980 | ||
| 8981 | /(?-+a)/ | |
| 8982 | Failed: unrecognized character after (? or (?- at offset 3 | |
| 8983 | ||
| 8984 | /(?(-1))/ | |
| 8985 | Failed: reference to non-existent subpattern at offset 6 | |
| 8986 | ||
| 8987 | /(?(+10))/ | |
| 8988 | Failed: reference to non-existent subpattern at offset 7 | |
| 8989 | ||
| 8990 | /(?(10))/ | |
| 8991 | Failed: reference to non-existent subpattern at offset 6 | |
| 8992 | ||
| 8993 | /(?(+2))()()/ | |
| 8994 | ||
| 8995 | /(?(2))()()/ | |
| 8996 | ||
| 8997 | /\k''/ | |
| 8998 | Failed: subpattern name expected at offset 3 | |
| 8999 | ||
| 9000 | /\k<>/ | |
| 9001 | Failed: subpattern name expected at offset 3 | |
| 9002 | ||
| 9003 | /\k{}/ | |
| 9004 | Failed: subpattern name expected at offset 3 | |
| 9005 | ||
| 9006 | /(?P=)/ | |
| 9007 | Failed: subpattern name expected at offset 4 | |
| 9008 | ||
| 9009 | /(?P>)/ | |
| 9010 | Failed: subpattern name expected at offset 4 | |
| 9011 | ||
| 9012 | /(?!\w)(?R)/ | |
| 9013 | Failed: recursive call could loop indefinitely at offset 9 | |
| 9014 | ||
| 9015 | /(?=\w)(?R)/ | |
| 9016 | Failed: recursive call could loop indefinitely at offset 9 | |
| 9017 | ||
| 9018 | /(?<!\w)(?R)/ | |
| 9019 | Failed: recursive call could loop indefinitely at offset 10 | |
| 9020 | ||
| 9021 | /(?<=\w)(?R)/ | |
| 9022 | Failed: recursive call could loop indefinitely at offset 10 | |
| 9023 | ||
| 9024 | /[[:foo:]]/ | |
| 9025 | Failed: unknown POSIX class name at offset 3 | |
| 9026 | ||
| 9027 | /[[:1234:]]/ | |
| 9028 | Failed: unknown POSIX class name at offset 3 | |
| 9029 | ||
| 9030 | /[[:f\oo:]]/ | |
| 9031 | Failed: unknown POSIX class name at offset 3 | |
| 9032 | ||
| 9033 | /[[: :]]/ | |
| 9034 | Failed: unknown POSIX class name at offset 3 | |
| 9035 | ||
| 9036 | /[[:...:]]/ | |
| 9037 | Failed: unknown POSIX class name at offset 3 | |
| 9038 | ||
| 9039 | /[[:l\ower:]]/ | |
| 9040 | Failed: unknown POSIX class name at offset 3 | |
| 9041 | ||
| 9042 | /[[:abc\:]]/ | |
| 9043 | Failed: unknown POSIX class name at offset 3 | |
| 9044 | ||
| 9045 | /[abc[:x\]pqr:]]/ | |
| 9046 | Failed: unknown POSIX class name at offset 6 | |
| 9047 | ||
| 9048 | /[[:a\dz:]]/ | |
| 9049 | Failed: unknown POSIX class name at offset 3 | |
| 9050 | ||
| 9051 | /(^(a|b\g<-1'c))/ | |
| 9052 | Failed: \g is not followed by a braced, angle-bracketed, or quoted name/number or by a plain number at offset 15 | |
| 9053 | ||
| 9054 | /^(?+1)(?<a>x|y){0}z/ | |
| 9055 | xzxx | |
| 9056 | 0: xz | |
| 9057 | yzyy | |
| 9058 | 0: yz | |
| 9059 | ** Failers | |
| 9060 | No match | |
| 9061 | xxz | |
| 9062 | No match | |
| 9063 | ||
| 9064 | /(\3)(\1)(a)/ | |
| 9065 | cat | |
| 9066 | No match | |
| 9067 | ||
| 9068 | /(\3)(\1)(a)/<JS> | |
| 9069 | cat | |
| 9070 | 0: a | |
| 9071 | 1: | |
| 9072 | 2: | |
| 9073 | 3: a | |
| 9074 | ||
| 9075 | /TA]/ | |
| 9076 | The ACTA] comes | |
| 9077 | 0: TA] | |
| 9078 | ||
| 9079 | /TA]/<JS> | |
| 9080 | Failed: ] is an invalid data character in JavaScript compatibility mode at offset 2 | |
| 9081 | ||
| 9082 | /(?2)[]a()b](abc)/ | |
| 9083 | Failed: reference to non-existent subpattern at offset 3 | |
| 9084 | ||
| 9085 | /(?2)[^]a()b](abc)/ | |
| 9086 | Failed: reference to non-existent subpattern at offset 3 | |
| 9087 | ||
| 9088 | /(?1)[]a()b](abc)/ | |
| 9089 | abcbabc | |
| 9090 | 0: abcbabc | |
| 9091 | 1: abc | |
| 9092 | ** Failers | |
| 9093 | No match | |
| 9094 | abcXabc | |
| 9095 | No match | |
| 9096 | ||
| 9097 | /(?1)[^]a()b](abc)/ | |
| 9098 | abcXabc | |
| 9099 | 0: abcXabc | |
| 9100 | 1: abc | |
| 9101 | ** Failers | |
| 9102 | No match | |
| 9103 | abcbabc | |
| 9104 | No match | |
| 9105 | ||
| 9106 | /(?2)[]a()b](abc)(xyz)/ | |
| 9107 | xyzbabcxyz | |
| 9108 | 0: xyzbabcxyz | |
| 9109 | 1: abc | |
| 9110 | 2: xyz | |
| 9111 | ||
| 9112 | /(?&N)[]a(?<N>)](?<M>abc)/ | |
| 9113 | Failed: reference to non-existent subpattern at offset 4 | |
| 9114 | ||
| 9115 | /(?&N)[]a(?<N>)](abc)/ | |
| 9116 | Failed: reference to non-existent subpattern at offset 4 | |
| 9117 | ||
| 9118 | /a[]b/ | |
| 9119 | Failed: missing terminating ] for character class at offset 4 | |
| 9120 | ||
| 9121 | /a[^]b/ | |
| 9122 | Failed: missing terminating ] for character class at offset 5 | |
| 9123 | ||
| 9124 | /a[]b/<JS> | |
| 9125 | ** Failers | |
| 9126 | No match | |
| 9127 | ab | |
| 9128 | No match | |
| 9129 | ||
| 9130 | /a[]+b/<JS> | |
| 9131 | ** Failers | |
| 9132 | No match | |
| 9133 | ab | |
| 9134 | No match | |
| 9135 | ||
| 9136 | /a[]*+b/<JS> | |
| 9137 | ** Failers | |
| 9138 | No match | |
| 9139 | ab | |
| 9140 | No match | |
| 9141 | ||
| 9142 | /a[^]b/<JS> | |
| 9143 | aXb | |
| 9144 | 0: aXb | |
| 9145 | a\nb | |
| 9146 | 0: a\x0ab | |
| 9147 | ** Failers | |
| 9148 | No match | |
| 9149 | ab | |
| 9150 | No match | |
| 9151 | ||
| 9152 | /a[^]+b/<JS> | |
| 9153 | aXb | |
| 9154 | 0: aXb | |
| 9155 | a\nX\nXb | |
| 9156 | 0: a\x0aX\x0aXb | |
| 9157 | ** Failers | |
| 9158 | No match | |
| 9159 | ab | |
| 9160 | No match | |
| 9161 | ||
| 9162 | /a(?!)+b/ | |
| 9163 | Failed: nothing to repeat at offset 5 | |
| 9164 | ||
| 9165 | /a(*FAIL)+b/ | |
| 9166 | Failed: nothing to repeat at offset 8 | |
| 9167 | ||
| 9168 | /(abc|pqr|123){0}[xyz]/SI | |
| 9169 | Capturing subpattern count = 1 | |
| 9170 | No options | |
| 9171 | No first char | |
| 9172 | No need char | |
| 9173 | Subject length lower bound = 1 | |
| 9174 | Starting byte set: x y z | |
| 9175 | ||
| 9176 | /(?(?=.*b)b|^)/CI | |
| 9177 | Capturing subpattern count = 0 | |
| 9178 | Options: | |
| 9179 | No first char | |
| 9180 | No need char | |
| 9181 | adc | |
| 9182 | --->adc | |
| 9183 | +0 ^ (?(?=.*b)b|^) | |
| 9184 | +2 ^ (?=.*b) | |
| 9185 | +5 ^ .* | |
| 9186 | +7 ^ ^ b | |
| 9187 | +7 ^ ^ b | |
| 9188 | +7 ^^ b | |
| 9189 | +7 ^ b | |
| 9190 | +12 ^ ) | |
| 9191 | +13 ^ | |
| 9192 | 0: | |
| 9193 | abc | |
| 9194 | --->abc | |
| 9195 | +0 ^ (?(?=.*b)b|^) | |
| 9196 | +2 ^ (?=.*b) | |
| 9197 | +5 ^ .* | |
| 9198 | +7 ^ ^ b | |
| 9199 | +7 ^ ^ b | |
| 9200 | +7 ^^ b | |
| 9201 | +8 ^ ^ ) | |
| 9202 | +9 ^ b | |
| 9203 | +0 ^ (?(?=.*b)b|^) | |
| 9204 | +2 ^ (?=.*b) | |
| 9205 | +5 ^ .* | |
| 9206 | +7 ^ ^ b | |
| 9207 | +7 ^^ b | |
| 9208 | +7 ^ b | |
| 9209 | +8 ^^ ) | |
| 9210 | +9 ^ b | |
| 9211 | +10 ^^ | | |
| 9212 | +13 ^^ | |
| 9213 | 0: b | |
| 9214 | ||
| 9215 | /(?(?=b).*b|^d)/I | |
| 9216 | Capturing subpattern count = 0 | |
| 9217 | No options | |
| 9218 | No first char | |
| 9219 | No need char | |
| 9220 | ||
| 9221 | /(?(?=.*b).*b|^d)/I | |
| 9222 | Capturing subpattern count = 0 | |
| 9223 | No options | |
| 9224 | First char at start or follows newline | |
| 9225 | No need char | |
| 9226 | ||
| 9227 | /a?|b?/P | |
| 9228 | abc | |
| 9229 | 0: a | |
| 9230 | ** Failers | |
| 9231 | 0: | |
| 9232 | ddd\N | |
| 9233 | No match: POSIX code 17: match failed | |
| 9234 | ||
| 9235 | /xyz/C | |
| 9236 | xyz | |
| 9237 | --->xyz | |
| 9238 | +0 ^ x | |
| 9239 | +1 ^^ y | |
| 9240 | +2 ^ ^ z | |
| 9241 | +3 ^ ^ | |
| 9242 | 0: xyz | |
| 9243 | abcxyz | |
| 9244 | --->abcxyz | |
| 9245 | +0 ^ x | |
| 9246 | +1 ^^ y | |
| 9247 | +2 ^ ^ z | |
| 9248 | +3 ^ ^ | |
| 9249 | 0: xyz | |
| 9250 | abcxyz\Y | |
| 9251 | --->abcxyz | |
| 9252 | +0 ^ x | |
| 9253 | +0 ^ x | |
| 9254 | +0 ^ x | |
| 9255 | +0 ^ x | |
| 9256 | +1 ^^ y | |
| 9257 | +2 ^ ^ z | |
| 9258 | +3 ^ ^ | |
| 9259 | 0: xyz | |
| 9260 | ** Failers | |
| 9261 | No match | |
| 9262 | abc | |
| 9263 | No match | |
| 9264 | abc\Y | |
| 9265 | --->abc | |
| 9266 | +0 ^ x | |
| 9267 | +0 ^ x | |
| 9268 | +0 ^ x | |
| 9269 | +0 ^ x | |
| 9270 | No match | |
| 9271 | abcxypqr | |
| 9272 | No match | |
| 9273 | abcxypqr\Y | |
| 9274 | --->abcxypqr | |
| 9275 | +0 ^ x | |
| 9276 | +0 ^ x | |
| 9277 | +0 ^ x | |
| 9278 | +0 ^ x | |
| 9279 | +1 ^^ y | |
| 9280 | +2 ^ ^ z | |
| 9281 | +0 ^ x | |
| 9282 | +0 ^ x | |
| 9283 | +0 ^ x | |
| 9284 | +0 ^ x | |
| 9285 | +0 ^ x | |
| 9286 | No match | |
| 9287 | ||
| 9288 | /(*NO_START_OPT)xyz/C | |
| 9289 | abcxyz | |
| 9290 | --->abcxyz | |
| 9291 | +15 ^ x | |
| 9292 | +15 ^ x | |
| 9293 | +15 ^ x | |
| 9294 | +15 ^ x | |
| 9295 | +16 ^^ y | |
| 9296 | +17 ^ ^ z | |
| 9297 | +18 ^ ^ | |
| 9298 | 0: xyz | |
| 9299 | ||
| 9300 | /xyz/CY | |
| 9301 | abcxyz | |
| 9302 | --->abcxyz | |
| 9303 | +0 ^ x | |
| 9304 | +0 ^ x | |
| 9305 | +0 ^ x | |
| 9306 | +0 ^ x | |
| 9307 | +1 ^^ y | |
| 9308 | +2 ^ ^ z | |
| 9309 | +3 ^ ^ | |
| 9310 | 0: xyz | |
| 9311 | ||
| 9312 | /^"((?(?=[a])[^"])|b)*"$/C | |
| 9313 | "ab" | |
| 9314 | --->"ab" | |
| 9315 | +0 ^ ^ | |
| 9316 | +1 ^ " | |
| 9317 | +2 ^^ ((?(?=[a])[^"])|b)* | |
| 9318 | +3 ^^ (?(?=[a])[^"]) | |
| 9319 | +5 ^^ (?=[a]) | |
| 9320 | +8 ^^ [a] | |
| 9321 | +11 ^ ^ ) | |
| 9322 | +12 ^^ [^"] | |
| 9323 | +16 ^ ^ ) | |
| 9324 | +17 ^ ^ | | |
| 9325 | +3 ^ ^ (?(?=[a])[^"]) | |
| 9326 | +5 ^ ^ (?=[a]) | |
| 9327 | +8 ^ ^ [a] | |
| 9328 | +21 ^ ^ " | |
| 9329 | +18 ^ ^ b | |
| 9330 | +19 ^ ^ ) | |
| 9331 | +3 ^ ^ (?(?=[a])[^"]) | |
| 9332 | +5 ^ ^ (?=[a]) | |
| 9333 | +8 ^ ^ [a] | |
| 9334 | +21 ^ ^ " | |
| 9335 | +22 ^ ^ $ | |
| 9336 | +23 ^ ^ | |
| 9337 | 0: "ab" | |
| 9338 | 1: | |
| 9339 | ||
| 9340 | /^"((?(?=[a])[^"])|b)*"$/ | |
| 9341 | "ab" | |
| 9342 | 0: "ab" | |
| 9343 | 1: | |
| 9344 | ||
| 9345 | /^X(?5)(a)(?|(b)|(q))(c)(d)Y/ | |
| 9346 | Failed: reference to non-existent subpattern at offset 5 | |
| 9347 | ||
| 9348 | /^X(?&N)(a)(?|(b)|(q))(c)(d)(?<N>Y)/ | |
| 9349 | XYabcdY | |
| 9350 | 0: XYabcdY | |
| 9351 | 1: a | |
| 9352 | 2: b | |
| 9353 | 3: c | |
| 9354 | 4: d | |
| 9355 | 5: Y | |
| 9356 | ||
| 9357 | /Xa{2,4}b/ | |
| 9358 | X\P | |
| 9359 | Partial match: X | |
| 9360 | Xa\P | |
| 9361 | Partial match: Xa | |
| 9362 | Xaa\P | |
| 9363 | Partial match: Xaa | |
| 9364 | Xaaa\P | |
| 9365 | Partial match: Xaaa | |
| 9366 | Xaaaa\P | |
| 9367 | Partial match: Xaaaa | |
| 9368 | ||
| 9369 | /Xa{2,4}?b/ | |
| 9370 | X\P | |
| 9371 | Partial match: X | |
| 9372 | Xa\P | |
| 9373 | Partial match: Xa | |
| 9374 | Xaa\P | |
| 9375 | Partial match: Xaa | |
| 9376 | Xaaa\P | |
| 9377 | Partial match: Xaaa | |
| 9378 | Xaaaa\P | |
| 9379 | Partial match: Xaaaa | |
| 9380 | ||
| 9381 | /Xa{2,4}+b/ | |
| 9382 | X\P | |
| 9383 | Partial match: X | |
| 9384 | Xa\P | |
| 9385 | Partial match: Xa | |
| 9386 | Xaa\P | |
| 9387 | Partial match: Xaa | |
| 9388 | Xaaa\P | |
| 9389 | Partial match: Xaaa | |
| 9390 | Xaaaa\P | |
| 9391 | Partial match: Xaaaa | |
| 9392 | ||
| 9393 | /X\d{2,4}b/ | |
| 9394 | X\P | |
| 9395 | Partial match: X | |
| 9396 | X3\P | |
| 9397 | Partial match: X3 | |
| 9398 | X33\P | |
| 9399 | Partial match: X33 | |
| 9400 | X333\P | |
| 9401 | Partial match: X333 | |
| 9402 | X3333\P | |
| 9403 | Partial match: X3333 | |
| 9404 | ||
| 9405 | /X\d{2,4}?b/ | |
| 9406 | X\P | |
| 9407 | Partial match: X | |
| 9408 | X3\P | |
| 9409 | Partial match: X3 | |
| 9410 | X33\P | |
| 9411 | Partial match: X33 | |
| 9412 | X333\P | |
| 9413 | Partial match: X333 | |
| 9414 | X3333\P | |
| 9415 | Partial match: X3333 | |
| 9416 | ||
| 9417 | /X\d{2,4}+b/ | |
| 9418 | X\P | |
| 9419 | Partial match: X | |
| 9420 | X3\P | |
| 9421 | Partial match: X3 | |
| 9422 | X33\P | |
| 9423 | Partial match: X33 | |
| 9424 | X333\P | |
| 9425 | Partial match: X333 | |
| 9426 | X3333\P | |
| 9427 | Partial match: X3333 | |
| 9428 | ||
| 9429 | /X\D{2,4}b/ | |
| 9430 | X\P | |
| 9431 | Partial match: X | |
| 9432 | Xa\P | |
| 9433 | Partial match: Xa | |
| 9434 | Xaa\P | |
| 9435 | Partial match: Xaa | |
| 9436 | Xaaa\P | |
| 9437 | Partial match: Xaaa | |
| 9438 | Xaaaa\P | |
| 9439 | Partial match: Xaaaa | |
| 9440 | ||
| 9441 | /X\D{2,4}?b/ | |
| 9442 | X\P | |
| 9443 | Partial match: X | |
| 9444 | Xa\P | |
| 9445 | Partial match: Xa | |
| 9446 | Xaa\P | |
| 9447 | Partial match: Xaa | |
| 9448 | Xaaa\P | |
| 9449 | Partial match: Xaaa | |
| 9450 | Xaaaa\P | |
| 9451 | Partial match: Xaaaa | |
| 9452 | ||
| 9453 | /X\D{2,4}+b/ | |
| 9454 | X\P | |
| 9455 | Partial match: X | |
| 9456 | Xa\P | |
| 9457 | Partial match: Xa | |
| 9458 | Xaa\P | |
| 9459 | Partial match: Xaa | |
| 9460 | Xaaa\P | |
| 9461 | Partial match: Xaaa | |
| 9462 | Xaaaa\P | |
| 9463 | Partial match: Xaaaa | |
| 9464 | ||
| 9465 | /X[abc]{2,4}b/ | |
| 9466 | X\P | |
| 9467 | Partial match: X | |
| 9468 | Xa\P | |
| 9469 | Partial match: Xa | |
| 9470 | Xaa\P | |
| 9471 | Partial match: Xaa | |
| 9472 | Xaaa\P | |
| 9473 | Partial match: Xaaa | |
| 9474 | Xaaaa\P | |
| 9475 | Partial match: Xaaaa | |
| 9476 | ||
| 9477 | /X[abc]{2,4}?b/ | |
| 9478 | X\P | |
| 9479 | Partial match: X | |
| 9480 | Xa\P | |
| 9481 | Partial match: Xa | |
| 9482 | Xaa\P | |
| 9483 | Partial match: Xaa | |
| 9484 | Xaaa\P | |
| 9485 | Partial match: Xaaa | |
| 9486 | Xaaaa\P | |
| 9487 | Partial match: Xaaaa | |
| 9488 | ||
| 9489 | /X[abc]{2,4}+b/ | |
| 9490 | X\P | |
| 9491 | Partial match: X | |
| 9492 | Xa\P | |
| 9493 | Partial match: Xa | |
| 9494 | Xaa\P | |
| 9495 | Partial match: Xaa | |
| 9496 | Xaaa\P | |
| 9497 | Partial match: Xaaa | |
| 9498 | Xaaaa\P | |
| 9499 | Partial match: Xaaaa | |
| 9500 | ||
| 9501 | /X[^a]{2,4}b/ | |
| 9502 | X\P | |
| 9503 | Partial match: X | |
| 9504 | Xz\P | |
| 9505 | Partial match: Xz | |
| 9506 | Xzz\P | |
| 9507 | Partial match: Xzz | |
| 9508 | Xzzz\P | |
| 9509 | Partial match: Xzzz | |
| 9510 | Xzzzz\P | |
| 9511 | Partial match: Xzzzz | |
| 9512 | ||
| 9513 | /X[^a]{2,4}?b/ | |
| 9514 | X\P | |
| 9515 | Partial match: X | |
| 9516 | Xz\P | |
| 9517 | Partial match: Xz | |
| 9518 | Xzz\P | |
| 9519 | Partial match: Xzz | |
| 9520 | Xzzz\P | |
| 9521 | Partial match: Xzzz | |
| 9522 | Xzzzz\P | |
| 9523 | Partial match: Xzzzz | |
| 9524 | ||
| 9525 | /X[^a]{2,4}+b/ | |
| 9526 | X\P | |
| 9527 | Partial match: X | |
| 9528 | Xz\P | |
| 9529 | Partial match: Xz | |
| 9530 | Xzz\P | |
| 9531 | Partial match: Xzz | |
| 9532 | Xzzz\P | |
| 9533 | Partial match: Xzzz | |
| 9534 | Xzzzz\P | |
| 9535 | Partial match: Xzzzz | |
| 9536 | ||
| 9537 | /(Y)X\1{2,4}b/ | |
| 9538 | YX\P | |
| 9539 | Partial match: YX | |
| 9540 | YXY\P | |
| 9541 | Partial match: YXY | |
| 9542 | YXYY\P | |
| 9543 | Partial match: YXYY | |
| 9544 | YXYYY\P | |
| 9545 | Partial match: YXYYY | |
| 9546 | YXYYYY\P | |
| 9547 | Partial match: YXYYYY | |
| 9548 | ||
| 9549 | /(Y)X\1{2,4}?b/ | |
| 9550 | YX\P | |
| 9551 | Partial match: YX | |
| 9552 | YXY\P | |
| 9553 | Partial match: YXY | |
| 9554 | YXYY\P | |
| 9555 | Partial match: YXYY | |
| 9556 | YXYYY\P | |
| 9557 | Partial match: YXYYY | |
| 9558 | YXYYYY\P | |
| 9559 | Partial match: YXYYYY | |
| 9560 | ||
| 9561 | /(Y)X\1{2,4}+b/ | |
| 9562 | YX\P | |
| 9563 | Partial match: YX | |
| 9564 | YXY\P | |
| 9565 | Partial match: YXY | |
| 9566 | YXYY\P | |
| 9567 | Partial match: YXYY | |
| 9568 | YXYYY\P | |
| 9569 | Partial match: YXYYY | |
| 9570 | YXYYYY\P | |
| 9571 | Partial match: YXYYYY | |
| 9572 | ||
| 9573 | /\++\KZ|\d+X|9+Y/ | |
| 9574 | ++++123999\P | |
| 9575 | Partial match: 123999 | |
| 9576 | ++++123999Y\P | |
| 9577 | 0: 999Y | |
| 9578 | ++++Z1234\P | |
| 9579 | 0: Z | |
| 9580 | ||
| 9581 | /Z(*F)/ | |
| 9582 | Z\P | |
| 9583 | No match | |
| 9584 | ZA\P | |
| 9585 | No match | |
| 9586 | ||
| 9587 | /Z(?!)/ | |
| 9588 | Z\P | |
| 9589 | No match | |
| 9590 | ZA\P | |
| 9591 | No match | |
| 9592 | ||
| 9593 | /dog(sbody)?/ | |
| 9594 | dogs\P | |
| 9595 | 0: dog | |
| 9596 | dogs\P\P | |
| 9597 | Partial match: dogs | |
| 9598 | ||
| 9599 | /dog(sbody)??/ | |
| 9600 | dogs\P | |
| 9601 | 0: dog | |
| 9602 | dogs\P\P | |
| 9603 | 0: dog | |
| 9604 | ||
| 9605 | /dog|dogsbody/ | |
| 9606 | dogs\P | |
| 9607 | 0: dog | |
| 9608 | dogs\P\P | |
| 9609 | 0: dog | |
| 9610 | ||
| 9611 | /dogsbody|dog/ | |
| 9612 | dogs\P | |
| 9613 | 0: dog | |
| 9614 | dogs\P\P | |
| 9615 | Partial match: dogs | |
| 9616 | ||
| 9617 | /\bthe cat\b/ | |
| 9618 | the cat\P | |
| 9619 | 0: the cat | |
| 9620 | the cat\P\P | |
| 9621 | Partial match: the cat | |
| 9622 | ||
| 9623 | /abc/ | |
| 9624 | abc\P | |
| 9625 | 0: abc | |
| 9626 | abc\P\P | |
| 9627 | 0: abc | |
| 9628 | ||
| 9629 | /\w+A/P | |
| 9630 | CDAAAAB | |
| 9631 | 0: CDAAAA | |
| 9632 | ||
| 9633 | /\w+A/PU | |
| 9634 | CDAAAAB | |
| 9635 | 0: CDA | |
| 9636 | ||
| 9637 | /abc\K123/ | |
| 9638 | xyzabc123pqr | |
| 9639 | 0: 123 | |
| 9640 | xyzabc12\P | |
| 9641 | Partial match: abc12 | |
| 9642 | xyzabc12\P\P | |
| 9643 | Partial match: abc12 | |
| 9644 | ||
| 9645 | /(?<=abc)123/ | |
| 9646 | xyzabc123pqr | |
| 9647 | 0: 123 | |
| 9648 | xyzabc12\P | |
| 9649 | Partial match: abc12 | |
| 9650 | xyzabc12\P\P | |
| 9651 | Partial match: abc12 | |
| 9652 | ||
| 9653 | /\babc\b/ | |
| 9654 | +++abc+++ | |
| 9655 | 0: abc | |
| 9656 | +++ab\P | |
| 9657 | Partial match: +ab | |
| 9658 | +++ab\P\P | |
| 9659 | Partial match: +ab | |
| 9660 | ||
| 9661 | /(?&word)(?&element)(?(DEFINE)(?<element><[^m][^>]>[^<])(?<word>\w*+))/BZ | |
| 9662 | ------------------------------------------------------------------ | |
| 9663 | Bra | |
| 9664 | Once | |
| 9665 | Recurse | |
| 9666 | Ket | |
| 9667 | Once | |
| 9668 | Recurse | |
| 9669 | Ket | |
| 9670 | Cond | |
| 9671 | Cond def | |
| 9672 | CBra 1 | |
| 9673 | < | |
| 9674 | [^m] | |
| 9675 | [^>] | |
| 9676 | > | |
| 9677 | [^<] | |
| 9678 | Ket | |
| 9679 | CBra 2 | |
| 9680 | \w*+ | |
| 9681 | Ket | |
| 9682 | Ket | |
| 9683 | Ket | |
| 9684 | End | |
| 9685 | ------------------------------------------------------------------ | |
| 9686 | ||
| 9687 | /(?&word)(?&element)(?(DEFINE)(?<element><[^\d][^>]>[^<])(?<word>\w*+))/BZ | |
| 9688 | ------------------------------------------------------------------ | |
| 9689 | Bra | |
| 9690 | Once | |
| 9691 | Recurse | |
| 9692 | Ket | |
| 9693 | Once | |
| 9694 | Recurse | |
| 9695 | Ket | |
| 9696 | Cond | |
| 9697 | Cond def | |
| 9698 | CBra 1 | |
| 9699 | < | |
| 9700 | [\x00-/:-\xff] (neg) | |
| 9701 | [^>] | |
| 9702 | > | |
| 9703 | [^<] | |
| 9704 | Ket | |
| 9705 | CBra 2 | |
| 9706 | \w*+ | |
| 9707 | Ket | |
| 9708 | Ket | |
| 9709 | Ket | |
| 9710 | End | |
| 9711 | ------------------------------------------------------------------ | |
| 9712 | ||
| 9713 | /(ab)(x(y)z(cd(*ACCEPT)))pq/BZ | |
| 9714 | ------------------------------------------------------------------ | |
| 9715 | Bra | |
| 9716 | CBra 1 | |
| 9717 | ab | |
| 9718 | Ket | |
| 9719 | CBra 2 | |
| 9720 | x | |
| 9721 | CBra 3 | |
| 9722 | y | |
| 9723 | Ket | |
| 9724 | z | |
| 9725 | CBra 4 | |
| 9726 | cd | |
| 9727 | Close 4 | |
| 9728 | Close 2 | |
| 9729 | *ACCEPT | |
| 9730 | Ket | |
| 9731 | Ket | |
| 9732 | pq | |
| 9733 | Ket | |
| 9734 | End | |
| 9735 | ------------------------------------------------------------------ | |
| 9736 | ||
| 9737 | /abc\K/+ | |
| 9738 | abcdef | |
| 9739 | 0: | |
| 9740 | 0+ def | |
| 9741 | abcdef\N\N | |
| 9742 | 0: | |
| 9743 | 0+ def | |
| 9744 | xyzabcdef\N\N | |
| 9745 | 0: | |
| 9746 | 0+ def | |
| 9747 | ** Failers | |
| 9748 | No match | |
| 9749 | abcdef\N | |
| 9750 | No match | |
| 9751 | xyzabcdef\N | |
| 9752 | No match | |
| 9753 | ||
| 9754 | /^(?:(?=abc)|abc\K)/+ | |
| 9755 | abcdef | |
| 9756 | 0: | |
| 9757 | 0+ abcdef | |
| 9758 | abcdef\N\N | |
| 9759 | 0: | |
| 9760 | 0+ def | |
| 9761 | ** Failers | |
| 9762 | No match | |
| 9763 | abcdef\N | |
| 9764 | No match | |
| 9765 | ||
| 9766 | /a?b?/+ | |
| 9767 | xyz | |
| 9768 | 0: | |
| 9769 | 0+ xyz | |
| 9770 | xyzabc | |
| 9771 | 0: | |
| 9772 | 0+ xyzabc | |
| 9773 | xyzabc\N | |
| 9774 | 0: ab | |
| 9775 | 0+ c | |
| 9776 | xyzabc\N\N | |
| 9777 | 0: | |
| 9778 | 0+ yzabc | |
| 9779 | xyz\N\N | |
| 9780 | 0: | |
| 9781 | 0+ yz | |
| 9782 | ** Failers | |
| 9783 | 0: | |
| 9784 | 0+ ** Failers | |
| 9785 | xyz\N | |
| 9786 | No match | |
| 9787 | ||
| 9788 | /^a?b?/+ | |
| 9789 | xyz | |
| 9790 | 0: | |
| 9791 | 0+ xyz | |
| 9792 | xyzabc | |
| 9793 | 0: | |
| 9794 | 0+ xyzabc | |
| 9795 | ** Failers | |
| 9796 | 0: | |
| 9797 | 0+ ** Failers | |
| 9798 | xyzabc\N | |
| 9799 | No match | |
| 9800 | xyzabc\N\N | |
| 9801 | No match | |
| 9802 | xyz\N\N | |
| 9803 | No match | |
| 9804 | xyz\N | |
| 9805 | No match | |
| 9806 | ||
| 9807 | /^(?<name>a|b\g<name>c)/ | |
| 9808 | aaaa | |
| 9809 | 0: a | |
| 9810 | 1: a | |
| 9811 | bacxxx | |
| 9812 | 0: bac | |
| 9813 | 1: bac | |
| 9814 | bbaccxxx | |
| 9815 | 0: bbacc | |
| 9816 | 1: bbacc | |
| 9817 | bbbacccxx | |
| 9818 | 0: bbbaccc | |
| 9819 | 1: bbbaccc | |
| 9820 | ||
| 9821 | /^(?<name>a|b\g'name'c)/ | |
| 9822 | aaaa | |
| 9823 | 0: a | |
| 9824 | 1: a | |
| 9825 | bacxxx | |
| 9826 | 0: bac | |
| 9827 | 1: bac | |
| 9828 | bbaccxxx | |
| 9829 | 0: bbacc | |
| 9830 | 1: bbacc | |
| 9831 | bbbacccxx | |
| 9832 | 0: bbbaccc | |
| 9833 | 1: bbbaccc | |
| 9834 | ||
| 9835 | /^(a|b\g<1>c)/ | |
| 9836 | aaaa | |
| 9837 | 0: a | |
| 9838 | 1: a | |
| 9839 | bacxxx | |
| 9840 | 0: bac | |
| 9841 | 1: bac | |
| 9842 | bbaccxxx | |
| 9843 | 0: bbacc | |
| 9844 | 1: bbacc | |
| 9845 | bbbacccxx | |
| 9846 | 0: bbbaccc | |
| 9847 | 1: bbbaccc | |
| 9848 | ||
| 9849 | /^(a|b\g'1'c)/ | |
| 9850 | aaaa | |
| 9851 | 0: a | |
| 9852 | 1: a | |
| 9853 | bacxxx | |
| 9854 | 0: bac | |
| 9855 | 1: bac | |
| 9856 | bbaccxxx | |
| 9857 | 0: bbacc | |
| 9858 | 1: bbacc | |
| 9859 | bbbacccxx | |
| 9860 | 0: bbbaccc | |
| 9861 | 1: bbbaccc | |
| 9862 | ||
| 9863 | /^(a|b\g'-1'c)/ | |
| 9864 | aaaa | |
| 9865 | 0: a | |
| 9866 | 1: a | |
| 9867 | bacxxx | |
| 9868 | 0: bac | |
| 9869 | 1: bac | |
| 9870 | bbaccxxx | |
| 9871 | 0: bbacc | |
| 9872 | 1: bbacc | |
| 9873 | bbbacccxx | |
| 9874 | 0: bbbaccc | |
| 9875 | 1: bbbaccc | |
| 9876 | ||
| 9877 | /(^(a|b\g<-1>c))/ | |
| 9878 | aaaa | |
| 9879 | 0: a | |
| 9880 | 1: a | |
| 9881 | 2: a | |
| 9882 | bacxxx | |
| 9883 | 0: bac | |
| 9884 | 1: bac | |
| 9885 | 2: bac | |
| 9886 | bbaccxxx | |
| 9887 | 0: bbacc | |
| 9888 | 1: bbacc | |
| 9889 | 2: bbacc | |
| 9890 | bbbacccxx | |
| 9891 | 0: bbbaccc | |
| 9892 | 1: bbbaccc | |
| 9893 | 2: bbbaccc | |
| 9894 | ||
| 9895 | /(?-i:\g<name>)(?i:(?<name>a))/ | |
| 9896 | XaaX | |
| 9897 | 0: aa | |
| 9898 | 1: a | |
| 9899 | XAAX | |
| 9900 | 0: AA | |
| 9901 | 1: A | |
| 9902 | ||
| 9903 | /(?i:\g<name>)(?-i:(?<name>a))/ | |
| 9904 | XaaX | |
| 9905 | 0: aa | |