"Fossies" - the Fresh Open Source Software Archive

Member "pcre-8.42/testdata/testinput2" (12 Dec 2017, 78606 Bytes) of package /linux/misc/pcre-8.42.tar.bz2:


As a special service "Fossies" has tried to format the requested text file into HTML format (style: standard) with prefixed line numbers. Alternatively you can here view or download the uninterpreted source code file. See also the latest Fossies "Diffs" side-by-side code changes report for "testinput2": 8.41_vs_8.42.

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