/[pcre]/code/trunk/testdata/testoutput2
ViewVC logotype

Diff of /code/trunk/testdata/testoutput2

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 205 by ph10, Fri Aug 3 13:18:33 2007 UTC revision 388 by ph10, Wed Mar 11 17:03:17 2009 UTC
# Line 109  Failed: missing ) at offset 4 Line 109  Failed: missing ) at offset 4
109  Failed: missing ) after comment at offset 7  Failed: missing ) after comment at offset 7
110    
111  /(?z)abc/  /(?z)abc/
112  Failed: unrecognized character after (? at offset 2  Failed: unrecognized character after (? or (?- at offset 2
113    
114  /.*b/I  /.*b/I
115  Capturing subpattern count = 0  Capturing subpattern count = 0
# Line 310  No match Line 310  No match
310  No match  No match
311    
312  /ab(?z)cd/  /ab(?z)cd/
313  Failed: unrecognized character after (? at offset 4  Failed: unrecognized character after (? or (?- at offset 4
314    
315  /^abc|def/I  /^abc|def/I
316  Capturing subpattern count = 0  Capturing subpattern count = 0
# Line 703  Starting byte set: a b Line 703  Starting byte set: a b
703    
704  /(?<=foo\n)^bar/Im  /(?<=foo\n)^bar/Im
705  Capturing subpattern count = 0  Capturing subpattern count = 0
706    Contains explicit CR or LF match
707  Options: multiline  Options: multiline
708  No first char  No first char
709  Need char = 'r'  Need char = 'r'
# Line 719  No match Line 720  No match
720    
721  /^(?<=foo\n)bar/Im  /^(?<=foo\n)bar/Im
722  Capturing subpattern count = 0  Capturing subpattern count = 0
723    Contains explicit CR or LF match
724  Options: multiline  Options: multiline
725  First char at start or follows newline  First char at start or follows newline
726  Need char = 'r'  Need char = 'r'
# Line 944  Failed: missing ) at offset 4 Line 946  Failed: missing ) at offset 4
946  Failed: unrecognized character after (?< at offset 3  Failed: unrecognized character after (?< at offset 3
947    
948  /a(?{)b/  /a(?{)b/
949  Failed: unrecognized character after (? at offset 3  Failed: unrecognized character after (? or (?- at offset 3
950    
951  /a(?{{})b/  /a(?{{})b/
952  Failed: unrecognized character after (? at offset 3  Failed: unrecognized character after (? or (?- at offset 3
953    
954  /a(?{}})b/  /a(?{}})b/
955  Failed: unrecognized character after (? at offset 3  Failed: unrecognized character after (? or (?- at offset 3
956    
957  /a(?{"{"})b/  /a(?{"{"})b/
958  Failed: unrecognized character after (? at offset 3  Failed: unrecognized character after (? or (?- at offset 3
959    
960  /a(?{"{"}})b/  /a(?{"{"}})b/
961  Failed: unrecognized character after (? at offset 3  Failed: unrecognized character after (? or (?- at offset 3
962    
963  /(?(1?)a|b)/  /(?(1?)a|b)/
964  Failed: malformed number or name after (?( at offset 4  Failed: malformed number or name after (?( at offset 4
965    
 /(?(1)a|b|c)/  
 Failed: conditional group contains more than two branches at offset 10  
   
966  /[a[:xyz:/  /[a[:xyz:/
967  Failed: missing terminating ] for character class at offset 8  Failed: missing terminating ] for character class at offset 8
968    
# Line 1105  No need char Line 1104  No need char
1104  )?)?)?)?)?)?)?)?)?otherword/I  )?)?)?)?)?)?)?)?)?otherword/I
1105  Capturing subpattern count = 8  Capturing subpattern count = 8
1106  Partial matching not supported  Partial matching not supported
1107    Contains explicit CR or LF match
1108  No options  No options
1109  First char = 'w'  First char = 'w'
1110  Need char = 'd'  Need char = 'd'
# Line 1126  Need char = 'X' Line 1126  Need char = 'X'
1126  /.*X/IDZs  /.*X/IDZs
1127  ------------------------------------------------------------------  ------------------------------------------------------------------
1128          Bra          Bra
1129          Any*          AllAny*
1130          X          X
1131          Ket          Ket
1132          End          End
# Line 1160  No need char Line 1160  No need char
1160  ------------------------------------------------------------------  ------------------------------------------------------------------
1161          Bra          Bra
1162          CBra 1          CBra 1
1163          Any*          AllAny*
1164          X          X
1165          Alt          Alt
1166          ^          ^
# Line 1179  No need char Line 1179  No need char
1179  ------------------------------------------------------------------  ------------------------------------------------------------------
1180          Bra          Bra
1181          CBra 1          CBra 1
1182          Any*          AllAny*
1183          X          X
1184          Alt          Alt
1185          ^          ^
# Line 1199  No need char Line 1199  No need char
1199          Bra          Bra
1200          Bra          Bra
1201       04 Opt       04 Opt
1202          Any*          AllAny*
1203          X          X
1204          Alt          Alt
1205       04 Opt       04 Opt
# Line 1212  No need char Line 1212  No need char
1212  ------------------------------------------------------------------  ------------------------------------------------------------------
1213  Capturing subpattern count = 0  Capturing subpattern count = 0
1214  Partial matching not supported  Partial matching not supported
1215  No options  Options: anchored
1216  First char at start or follows newline  No first char
1217  No need char  No need char
1218    
1219  /\Biss\B/I+  /\Biss\B/I+
# Line 1347  No need char Line 1347  No need char
1347    
1348  /^ab\n/Ig+  /^ab\n/Ig+
1349  Capturing subpattern count = 0  Capturing subpattern count = 0
1350    Contains explicit CR or LF match
1351  Options: anchored  Options: anchored
1352  No first char  No first char
1353  No need char  No need char
# Line 1356  No need char Line 1357  No need char
1357    
1358  /^ab\n/Img+  /^ab\n/Img+
1359  Capturing subpattern count = 0  Capturing subpattern count = 0
1360    Contains explicit CR or LF match
1361  Options: multiline  Options: multiline
1362  First char at start or follows newline  First char at start or follows newline
1363  Need char = 10  Need char = 10
# Line 1594  No options Line 1596  No options
1596  First char = 'a'  First char = 'a'
1597  Need char = 'b'  Need char = 'b'
1598    
1599  /a(?(1)b)/I  /a(?(1)b)(.)/I
1600  Capturing subpattern count = 0  Capturing subpattern count = 1
1601  No options  No options
1602  First char = 'a'  First char = 'a'
1603  No need char  No need char
1604    
1605  /a(?(1)bag|big)/I  /a(?(1)bag|big)(.)/I
1606  Capturing subpattern count = 0  Capturing subpattern count = 1
1607  No options  No options
1608  First char = 'a'  First char = 'a'
1609  Need char = 'g'  Need char = 'g'
1610    
1611  /a(?(1)bag|big)*/I  /a(?(1)bag|big)*(.)/I
1612  Capturing subpattern count = 0  Capturing subpattern count = 1
1613  No options  No options
1614  First char = 'a'  First char = 'a'
1615  No need char  No need char
1616    
1617  /a(?(1)bag|big)+/I  /a(?(1)bag|big)+(.)/I
1618  Capturing subpattern count = 0  Capturing subpattern count = 1
1619  No options  No options
1620  First char = 'a'  First char = 'a'
1621  Need char = 'g'  Need char = 'g'
1622    
1623  /a(?(1)b..|b..)/I  /a(?(1)b..|b..)(.)/I
1624  Capturing subpattern count = 0  Capturing subpattern count = 1
1625  No options  No options
1626  First char = 'a'  First char = 'a'
1627  Need char = 'b'  Need char = 'b'
# Line 1900  No need char Line 1902  No need char
1902  ------------------------------------------------------------------  ------------------------------------------------------------------
1903          Bra          Bra
1904          ^          ^
1905          [\x00-/:-@[-`{-\xff]          [\x00-/:-@[-`{-\xff] (neg)
1906          Ket          Ket
1907          End          End
1908  ------------------------------------------------------------------  ------------------------------------------------------------------
# Line 1926  No need char Line 1928  No need char
1928  ------------------------------------------------------------------  ------------------------------------------------------------------
1929          Bra          Bra
1930          ^          ^
1931          [\x00-@[-`{-\xff]          [\x00-@[-`{-\xff] (neg)
1932          Ket          Ket
1933          End          End
1934  ------------------------------------------------------------------  ------------------------------------------------------------------
# Line 1960  No need char Line 1962  No need char
1962  ------------------------------------------------------------------  ------------------------------------------------------------------
1963          Bra          Bra
1964          ^          ^
1965          [\x80-\xff]          [\x80-\xff] (neg)
1966          Ket          Ket
1967          End          End
1968  ------------------------------------------------------------------  ------------------------------------------------------------------
# Line 1986  No need char Line 1988  No need char
1988  ------------------------------------------------------------------  ------------------------------------------------------------------
1989          Bra          Bra
1990          ^          ^
1991          [\x00-\x08\x0a-\x1f!-\xff]          [\x00-\x08\x0a-\x1f!-\xff] (neg)
1992          Ket          Ket
1993          End          End
1994  ------------------------------------------------------------------  ------------------------------------------------------------------
# Line 1997  No need char Line 1999  No need char
1999    
2000  /[\n\x0b\x0c\x0d[:blank:]]/IS  /[\n\x0b\x0c\x0d[:blank:]]/IS
2001  Capturing subpattern count = 0  Capturing subpattern count = 0
2002    Contains explicit CR or LF match
2003  No options  No options
2004  No first char  No first char
2005  No need char  No need char
# Line 2136  No need char Line 2139  No need char
2139  ------------------------------------------------------------------  ------------------------------------------------------------------
2140          Bra          Bra
2141          ^          ^
2142          [ -~\x80-\xff]          [ -~\x80-\xff] (neg)
2143          Ket          Ket
2144          End          End
2145  ------------------------------------------------------------------  ------------------------------------------------------------------
# Line 2149  No need char Line 2152  No need char
2152  ------------------------------------------------------------------  ------------------------------------------------------------------
2153          Bra          Bra
2154          ^          ^
2155          [\x00-/12:-\xff]          [\x00-/12:-\xff] (neg)
2156          Ket          Ket
2157          End          End
2158  ------------------------------------------------------------------  ------------------------------------------------------------------
# Line 2162  No need char Line 2165  No need char
2165  ------------------------------------------------------------------  ------------------------------------------------------------------
2166          Bra          Bra
2167          ^          ^
2168          [\x00-\x08\x0a-\x1f!-\xff]          [\x00-\x08\x0a-\x1f!-\xff] (neg)
2169          Ket          Ket
2170          End          End
2171  ------------------------------------------------------------------  ------------------------------------------------------------------
# Line 2730  No need char Line 2733  No need char
2733  /[\S]/DZ  /[\S]/DZ
2734  ------------------------------------------------------------------  ------------------------------------------------------------------
2735          Bra          Bra
2736          [\x00-\x08\x0b\x0e-\x1f!-\xff]          [\x00-\x08\x0b\x0e-\x1f!-\xff] (neg)
2737          Ket          Ket
2738          End          End
2739  ------------------------------------------------------------------  ------------------------------------------------------------------
# Line 3435  No options Line 3438  No options
3438  No first char  No first char
3439  Need char = 'a'  Need char = 'a'
3440    
3441  /(?(1)ab|ac)/I  /(?(1)ab|ac)(.)/I
3442  Capturing subpattern count = 0  Capturing subpattern count = 1
3443  No options  No options
3444  First char = 'a'  First char = 'a'
3445  No need char  No need char
3446    
3447  /(?(1)abz|acz)/I  /(?(1)abz|acz)(.)/I
3448  Capturing subpattern count = 0  Capturing subpattern count = 1
3449  No options  No options
3450  First char = 'a'  First char = 'a'
3451  Need char = 'z'  Need char = 'z'
3452    
3453  /(?(1)abz)/I  /(?(1)abz)(.)/I
3454  Capturing subpattern count = 0  Capturing subpattern count = 1
3455  No options  No options
3456  No first char  No first char
3457  No need char  No need char
3458    
3459  /(?(1)abz)123/I  /(?(1)abz)(1)23/I
3460  Capturing subpattern count = 0  Capturing subpattern count = 1
3461  No options  No options
3462  No first char  No first char
3463  Need char = '3'  Need char = '3'
# Line 5631  No need char Line 5634  No need char
5634    
5635  /line\nbreak/I  /line\nbreak/I
5636  Capturing subpattern count = 0  Capturing subpattern count = 0
5637    Contains explicit CR or LF match
5638  No options  No options
5639  First char = 'l'  First char = 'l'
5640  Need char = 'k'  Need char = 'k'
# Line 5641  Need char = 'k' Line 5645  Need char = 'k'
5645    
5646  /line\nbreak/If  /line\nbreak/If
5647  Capturing subpattern count = 0  Capturing subpattern count = 0
5648    Contains explicit CR or LF match
5649  Options: firstline  Options: firstline
5650  First char = 'l'  First char = 'l'
5651  Need char = 'k'  Need char = 'k'
# Line 5653  No match Line 5658  No match
5658    
5659  /line\nbreak/Imf  /line\nbreak/Imf
5660  Capturing subpattern count = 0  Capturing subpattern count = 0
5661    Contains explicit CR or LF match
5662  Options: multiline firstline  Options: multiline firstline
5663  First char = 'l'  First char = 'l'
5664  Need char = 'k'  Need char = 'k'
# Line 6160  Named capturing subpatterns: Line 6166  Named capturing subpatterns:
6166    A   2    A   2
6167    A   3    A   3
6168  Options: anchored dupnames  Options: anchored dupnames
6169    Duplicate name status changes
6170  No first char  No first char
6171  No need char  No need char
6172      a1b\CA      a1b\CA
# Line 7844  No match Line 7851  No match
7851  No match  No match
7852    
7853  /^abc./mgx<any>  /^abc./mgx<any>
7854      abc1 \x0aabc2 \x0babc3xx \x0cabc4 \x0dabc5xx \x0d\x0aabc6 \x85abc7 \x{2028}abc8 \x{2029}abc9 JUNK      abc1 \x0aabc2 \x0babc3xx \x0cabc4 \x0dabc5xx \x0d\x0aabc6 \x85abc7 JUNK
7855   0: abc1   0: abc1
7856   0: abc2   0: abc2
7857   0: abc3   0: abc3
# Line 7854  No match Line 7861  No match
7861   0: abc7   0: abc7
7862    
7863  /abc.$/mgx<any>  /abc.$/mgx<any>
7864      abc1\x0a abc2\x0b abc3\x0c abc4\x0d abc5\x0d\x0a abc6\x85 abc7\x{2028} abc8\x{2029} abc9      abc1\x0a abc2\x0b abc3\x0c abc4\x0d abc5\x0d\x0a abc6\x85 abc7 abc9
7865   0: abc1   0: abc1
7866   0: abc2   0: abc2
7867   0: abc3   0: abc3
# Line 7868  No match Line 7875  No match
7875  /a/<any><crlf>  /a/<any><crlf>
7876  Failed: inconsistent NEWLINE options at offset 0  Failed: inconsistent NEWLINE options at offset 0
7877    
7878  /^a\Rb/  /^a\Rb/<bsr_unicode>
7879      a\nb      a\nb
7880   0: a\x0ab   0: a\x0ab
7881      a\rb      a\rb
# Line 7886  No match Line 7893  No match
7893      a\n\rb      a\n\rb
7894  No match  No match
7895    
7896  /^a\R*b/  /^a\R*b/<bsr_unicode>
7897      ab      ab
7898   0: ab   0: ab
7899      a\nb      a\nb
# Line 7906  No match Line 7913  No match
7913      a\n\r\x85\x0cb      a\n\r\x85\x0cb
7914   0: a\x0a\x0d\x85\x0cb   0: a\x0a\x0d\x85\x0cb
7915    
7916  /^a\R+b/  /^a\R+b/<bsr_unicode>
7917      a\nb      a\nb
7918   0: a\x0ab   0: a\x0ab
7919      a\rb      a\rb
# Line 7928  No match Line 7935  No match
7935      ab      ab
7936  No match  No match
7937    
7938  /^a\R{1,3}b/  /^a\R{1,3}b/<bsr_unicode>
7939      a\nb      a\nb
7940   0: a\x0ab   0: a\x0ab
7941      a\n\rb      a\n\rb
# Line 7950  No match Line 7957  No match
7957      a\r      a\r
7958  No match  No match
7959    
7960  /^a[\R]b/  /^a[\R]b/<bsr_unicode>
7961      aRb      aRb
7962   0: aRb   0: aRb
7963      ** Failers      ** Failers
# Line 8064  No match Line 8071  No match
8071   2: b   2: b
8072    
8073  /^(a)\g-2/  /^(a)\g-2/
8074  Failed: reference to non-existent subpattern at offset 4  Failed: reference to non-existent subpattern at offset 7
8075    
8076  /^(a)\g/  /^(a)\g/
8077  Failed: \g is not followed by a braced name or an optionally braced non-zero number at offset 4  Failed: a numbered reference must not be zero at offset 5
8078    
8079  /^(a)\g{0}/  /^(a)\g{0}/
8080  Failed: \g is not followed by a braced name or an optionally braced non-zero number at offset 4  Failed: a numbered reference must not be zero at offset 8
8081    
8082  /^(a)\g{3/  /^(a)\g{3/
8083  Failed: \g is not followed by a braced name or an optionally braced non-zero number at offset 4  Failed: \g is not followed by a braced, angle-bracketed, or quoted name/number or by a plain number at offset 8
8084    
8085  /^(a)\g{4a}/  /^(a)\g{4a}/
8086  Failed: reference to non-existent subpattern at offset 9  Failed: reference to non-existent subpattern at offset 9
# Line 8156  No match Line 8163  No match
8163   0+   0+
8164    
8165  /abc.$/mgx<anycrlf>  /abc.$/mgx<anycrlf>
8166      abc1\x0a abc2\x0b abc3\x0c abc4\x0d abc5\x0d\x0a abc6\x85 abc7\x{2028} abc8\x{2029} abc9      abc1\x0a abc2\x0b abc3\x0c abc4\x0d abc5\x0d\x0a abc6\x85 abc9
8167   0: abc1   0: abc1
8168   0: abc4   0: abc4
8169   0: abc5   0: abc5
# Line 8210  No match Line 8217  No match
8217  No match  No match
8218    
8219  /x(?-0)y/  /x(?-0)y/
8220  Failed: (?+ or (?- or (?(+ or (?(- must be followed by a non-zero number at offset 5  Failed: a numbered reference must not be zero at offset 5
8221    
8222  /x(?-1)y/  /x(?-1)y/
8223  Failed: reference to non-existent subpattern at offset 5  Failed: reference to non-existent subpattern at offset 5
8224    
8225  /x(?+0)y/  /x(?+0)y/
8226  Failed: (?+ or (?- or (?(+ or (?(- must be followed by a non-zero number at offset 5  Failed: a numbered reference must not be zero at offset 5
8227    
8228  /x(?+1)y/  /x(?+1)y/
8229  Failed: reference to non-existent subpattern at offset 5  Failed: reference to non-existent subpattern at offset 5
# Line 8298  Failed: reference to non-existent subpat Line 8305  Failed: reference to non-existent subpat
8305  /((?(-2)a))/BZ  /((?(-2)a))/BZ
8306  Failed: reference to non-existent subpattern at offset 7  Failed: reference to non-existent subpattern at offset 7
8307    
8308  /^(?(+1)X|Y)/BZ  /^(?(+1)X|Y)(.)/BZ
8309  ------------------------------------------------------------------  ------------------------------------------------------------------
8310          Bra          Bra
8311          ^          ^
# Line 8308  Failed: reference to non-existent subpat Line 8315  Failed: reference to non-existent subpat
8315          Alt          Alt
8316          Y          Y
8317          Ket          Ket
8318            CBra 1
8319            Any
8320            Ket
8321          Ket          Ket
8322          End          End
8323  ------------------------------------------------------------------  ------------------------------------------------------------------
8324      Y      Y!
8325   0: Y   0: Y!
8326     1: !
8327    
8328  /(foo)\Kbar/  /(foo)\Kbar/
8329      foobar      foobar
# Line 8796  Failed: missing terminating ] for charac Line 8807  Failed: missing terminating ] for charac
8807  /[\Q\E^]AAA/  /[\Q\E^]AAA/
8808  Failed: missing terminating ] for character class at offset 10  Failed: missing terminating ] for character class at offset 10
8809    
8810    /A(*PRUNE)B(*SKIP)C(*THEN)D(*COMMIT)E(*F)F(*FAIL)G(?!)H(*ACCEPT)I/BZ
8811    ------------------------------------------------------------------
8812            Bra
8813            A
8814            *PRUNE
8815            B
8816            *SKIP
8817            C
8818            *THEN
8819            D
8820            *COMMIT
8821            E
8822            *FAIL
8823            F
8824            *FAIL
8825            G
8826            *FAIL
8827            H
8828            *ACCEPT
8829            I
8830            Ket
8831            End
8832    ------------------------------------------------------------------
8833    
8834    /^a+(*FAIL)/
8835        aaaaaa
8836    No match
8837    
8838    /a+b?c+(*FAIL)/
8839        aaabccc
8840    No match
8841    
8842    /a+b?(*PRUNE)c+(*FAIL)/
8843        aaabccc
8844    No match
8845    
8846    /a+b?(*COMMIT)c+(*FAIL)/
8847        aaabccc
8848    No match
8849    
8850    /a+b?(*SKIP)c+(*FAIL)/
8851        aaabcccaaabccc
8852    No match
8853    
8854    /^(?:aaa(*THEN)\w{6}|bbb(*THEN)\w{5}|ccc(*THEN)\w{4}|\w{3})/
8855        aaaxxxxxx
8856     0: aaaxxxxxx
8857        aaa++++++
8858     0: aaa
8859        bbbxxxxx
8860     0: bbbxxxxx
8861        bbb+++++
8862     0: bbb
8863        cccxxxx
8864     0: cccxxxx
8865        ccc++++
8866     0: ccc
8867        dddddddd
8868     0: ddd
8869    
8870    /^(aaa(*THEN)\w{6}|bbb(*THEN)\w{5}|ccc(*THEN)\w{4}|\w{3})/
8871        aaaxxxxxx
8872     0: aaaxxxxxx
8873     1: aaaxxxxxx
8874        aaa++++++
8875     0: aaa
8876     1: aaa
8877        bbbxxxxx
8878     0: bbbxxxxx
8879     1: bbbxxxxx
8880        bbb+++++
8881     0: bbb
8882     1: bbb
8883        cccxxxx
8884     0: cccxxxx
8885     1: cccxxxx
8886        ccc++++
8887     0: ccc
8888     1: ccc
8889        dddddddd
8890     0: ddd
8891     1: ddd
8892    
8893    /a+b?(*THEN)c+(*FAIL)/
8894        aaabccc
8895    No match
8896    
8897    /(A (A|B(*ACCEPT)|C) D)(E)/x
8898        ABX
8899     0: AB
8900        AADE
8901     0: AADE
8902     1: AAD
8903     2: A
8904     3: E
8905        ACDE
8906     0: ACDE
8907     1: ACD
8908     2: C
8909     3: E
8910        ** Failers
8911    No match
8912        AD
8913    No match
8914    
8915    /^a+(*FAIL)/C
8916        aaaaaa
8917    --->aaaaaa
8918     +0 ^          ^
8919     +1 ^          a+
8920     +3 ^     ^    (*FAIL)
8921     +3 ^    ^     (*FAIL)
8922     +3 ^   ^      (*FAIL)
8923     +3 ^  ^       (*FAIL)
8924     +3 ^ ^        (*FAIL)
8925     +3 ^^         (*FAIL)
8926    No match
8927    
8928    /a+b?c+(*FAIL)/C
8929        aaabccc
8930    --->aaabccc
8931     +0 ^           a+
8932     +2 ^  ^        b?
8933     +4 ^   ^       c+
8934     +6 ^      ^    (*FAIL)
8935     +6 ^     ^     (*FAIL)
8936     +6 ^    ^      (*FAIL)
8937     +4 ^  ^        c+
8938     +2 ^ ^         b?
8939     +4 ^ ^         c+
8940     +2 ^^          b?
8941     +4 ^^          c+
8942     +0  ^          a+
8943     +2  ^ ^        b?
8944     +4  ^  ^       c+
8945     +6  ^     ^    (*FAIL)
8946     +6  ^    ^     (*FAIL)
8947     +6  ^   ^      (*FAIL)
8948     +4  ^ ^        c+
8949     +2  ^^         b?
8950     +4  ^^         c+
8951     +0   ^         a+
8952     +2   ^^        b?
8953     +4   ^ ^       c+
8954     +6   ^    ^    (*FAIL)
8955     +6   ^   ^     (*FAIL)
8956     +6   ^  ^      (*FAIL)
8957     +4   ^^        c+
8958    No match
8959    
8960    /a+b?(*PRUNE)c+(*FAIL)/C
8961        aaabccc
8962    --->aaabccc
8963     +0 ^           a+
8964     +2 ^  ^        b?
8965     +4 ^   ^       (*PRUNE)
8966    +12 ^   ^       c+
8967    +14 ^      ^    (*FAIL)
8968    +14 ^     ^     (*FAIL)
8969    +14 ^    ^      (*FAIL)
8970     +0  ^          a+
8971     +2  ^ ^        b?
8972     +4  ^  ^       (*PRUNE)
8973    +12  ^  ^       c+
8974    +14  ^     ^    (*FAIL)
8975    +14  ^    ^     (*FAIL)
8976    +14  ^   ^      (*FAIL)
8977     +0   ^         a+
8978     +2   ^^        b?
8979     +4   ^ ^       (*PRUNE)
8980    +12   ^ ^       c+
8981    +14   ^    ^    (*FAIL)
8982    +14   ^   ^     (*FAIL)
8983    +14   ^  ^      (*FAIL)
8984    No match
8985    
8986    /a+b?(*COMMIT)c+(*FAIL)/C
8987        aaabccc
8988    --->aaabccc
8989     +0 ^           a+
8990     +2 ^  ^        b?
8991     +4 ^   ^       (*COMMIT)
8992    +13 ^   ^       c+
8993    +15 ^      ^    (*FAIL)
8994    +15 ^     ^     (*FAIL)
8995    +15 ^    ^      (*FAIL)
8996    No match
8997    
8998    /a+b?(*SKIP)c+(*FAIL)/C
8999        aaabcccaaabccc
9000    --->aaabcccaaabccc
9001     +0 ^                  a+
9002     +2 ^  ^               b?
9003     +4 ^   ^              (*SKIP)
9004    +11 ^   ^              c+
9005    +13 ^      ^           (*FAIL)
9006    +13 ^     ^            (*FAIL)
9007    +13 ^    ^             (*FAIL)
9008     +0        ^           a+
9009     +2        ^  ^        b?
9010     +4        ^   ^       (*SKIP)
9011    +11        ^   ^       c+
9012    +13        ^      ^    (*FAIL)
9013    +13        ^     ^     (*FAIL)
9014    +13        ^    ^      (*FAIL)
9015    No match
9016    
9017    /a+b?(*THEN)c+(*FAIL)/C
9018        aaabccc
9019    --->aaabccc
9020     +0 ^           a+
9021     +2 ^  ^        b?
9022     +4 ^   ^       (*THEN)
9023    +11 ^   ^       c+
9024    +13 ^      ^    (*FAIL)
9025    +13 ^     ^     (*FAIL)
9026    +13 ^    ^      (*FAIL)
9027     +0  ^          a+
9028     +2  ^ ^        b?
9029     +4  ^  ^       (*THEN)
9030    +11  ^  ^       c+
9031    +13  ^     ^    (*FAIL)
9032    +13  ^    ^     (*FAIL)
9033    +13  ^   ^      (*FAIL)
9034     +0   ^         a+
9035     +2   ^^        b?
9036     +4   ^ ^       (*THEN)
9037    +11   ^ ^       c+
9038    +13   ^    ^    (*FAIL)
9039    +13   ^   ^     (*FAIL)
9040    +13   ^  ^      (*FAIL)
9041    No match
9042    
9043    /a(*PRUNE:XXX)b/
9044    Failed: (*VERB) with an argument is not supported at offset 8
9045    
9046    /a(*MARK)b/
9047    Failed: (*VERB) not recognized at offset 7
9048    
9049    /(?i:A{1,}\6666666666)/
9050    Failed: number is too big at offset 19
9051    
9052    /\g6666666666/
9053    Failed: number is too big at offset 11
9054    
9055    /[\g6666666666]/
9056    Failed: number is too big at offset 12
9057    
9058    /(?1)\c[/
9059    Failed: reference to non-existent subpattern at offset 3
9060    
9061    /.+A/<crlf>
9062        \r\nA
9063    No match
9064    
9065    /\nA/<crlf>
9066        \r\nA
9067     0: \x0aA
9068    
9069    /[\r\n]A/<crlf>
9070        \r\nA
9071     0: \x0aA
9072    
9073    /(\r|\n)A/<crlf>
9074        \r\nA
9075     0: \x0aA
9076     1: \x0a
9077    
9078    /a(*CR)b/
9079    Failed: (*VERB) not recognized at offset 5
9080    
9081    /(*CR)a.b/
9082        a\nb
9083     0: a\x0ab
9084        ** Failers
9085    No match
9086        a\rb
9087    No match
9088    
9089    /(*CR)a.b/<lf>
9090        a\nb
9091     0: a\x0ab
9092        ** Failers
9093    No match
9094        a\rb
9095    No match
9096    
9097    /(*LF)a.b/<CRLF>
9098        a\rb
9099     0: a\x0db
9100        ** Failers
9101    No match
9102        a\nb
9103    No match
9104    
9105    /(*CRLF)a.b/
9106        a\rb
9107     0: a\x0db
9108        a\nb
9109     0: a\x0ab
9110        ** Failers
9111    No match
9112        a\r\nb
9113    No match
9114    
9115    /(*ANYCRLF)a.b/<CR>
9116        ** Failers
9117    No match
9118        a\rb
9119    No match
9120        a\nb
9121    No match
9122        a\r\nb
9123    No match
9124    
9125    /(*ANY)a.b/<cr>
9126        ** Failers
9127    No match
9128        a\rb
9129    No match
9130        a\nb
9131    No match
9132        a\r\nb
9133    No match
9134        a\x85b
9135    No match
9136    
9137    /a\Rb/I<bsr_anycrlf>
9138    Capturing subpattern count = 0
9139    Options: bsr_anycrlf
9140    First char = 'a'
9141    Need char = 'b'
9142        a\rb
9143     0: a\x0db
9144        a\nb
9145     0: a\x0ab
9146        a\r\nb
9147     0: a\x0d\x0ab
9148        ** Failers
9149    No match
9150        a\x85b
9151    No match
9152        a\x0bb
9153    No match
9154    
9155    /a\Rb/I<bsr_unicode>
9156    Capturing subpattern count = 0
9157    Options: bsr_unicode
9158    First char = 'a'
9159    Need char = 'b'
9160        a\rb
9161     0: a\x0db
9162        a\nb
9163     0: a\x0ab
9164        a\r\nb
9165     0: a\x0d\x0ab
9166        a\x85b
9167     0: a\x85b
9168        a\x0bb
9169     0: a\x0bb
9170        ** Failers
9171    No match
9172        a\x85b\<bsr_anycrlf>
9173    No match
9174        a\x0bb\<bsr_anycrlf>
9175    No match
9176    
9177    /a\R?b/I<bsr_anycrlf>
9178    Capturing subpattern count = 0
9179    Options: bsr_anycrlf
9180    First char = 'a'
9181    Need char = 'b'
9182        a\rb
9183     0: a\x0db
9184        a\nb
9185     0: a\x0ab
9186        a\r\nb
9187     0: a\x0d\x0ab
9188        ** Failers
9189    No match
9190        a\x85b
9191    No match
9192        a\x0bb
9193    No match
9194    
9195    /a\R?b/I<bsr_unicode>
9196    Capturing subpattern count = 0
9197    Options: bsr_unicode
9198    First char = 'a'
9199    Need char = 'b'
9200        a\rb
9201     0: a\x0db
9202        a\nb
9203     0: a\x0ab
9204        a\r\nb
9205     0: a\x0d\x0ab
9206        a\x85b
9207     0: a\x85b
9208        a\x0bb
9209     0: a\x0bb
9210        ** Failers
9211    No match
9212        a\x85b\<bsr_anycrlf>
9213    No match
9214        a\x0bb\<bsr_anycrlf>
9215    No match
9216    
9217    /a\R{2,4}b/I<bsr_anycrlf>
9218    Capturing subpattern count = 0
9219    Partial matching not supported
9220    Options: bsr_anycrlf
9221    First char = 'a'
9222    Need char = 'b'
9223        a\r\n\nb
9224     0: a\x0d\x0a\x0ab
9225        a\n\r\rb
9226     0: a\x0a\x0d\x0db
9227        a\r\n\r\n\r\n\r\nb
9228     0: a\x0d\x0a\x0d\x0a\x0d\x0a\x0d\x0ab
9229        ** Failers
9230    No match
9231        a\x85\85b
9232    No match
9233        a\x0b\0bb
9234    No match
9235    
9236    /a\R{2,4}b/I<bsr_unicode>
9237    Capturing subpattern count = 0
9238    Partial matching not supported
9239    Options: bsr_unicode
9240    First char = 'a'
9241    Need char = 'b'
9242        a\r\rb
9243     0: a\x0d\x0db
9244        a\n\n\nb
9245     0: a\x0a\x0a\x0ab
9246        a\r\n\n\r\rb
9247     0: a\x0d\x0a\x0a\x0d\x0db
9248        a\x85\85b
9249    No match
9250        a\x0b\0bb
9251    No match
9252        ** Failers
9253    No match
9254        a\r\r\r\r\rb
9255    No match
9256        a\x85\85b\<bsr_anycrlf>
9257    No match
9258        a\x0b\0bb\<bsr_anycrlf>
9259    No match
9260    
9261    /(*BSR_ANYCRLF)a\Rb/I
9262    Capturing subpattern count = 0
9263    Options: bsr_anycrlf
9264    First char = 'a'
9265    Need char = 'b'
9266        a\nb
9267     0: a\x0ab
9268        a\rb
9269     0: a\x0db
9270    
9271    /(*BSR_UNICODE)a\Rb/I
9272    Capturing subpattern count = 0
9273    Options: bsr_unicode
9274    First char = 'a'
9275    Need char = 'b'
9276        a\x85b
9277     0: a\x85b
9278    
9279    /(*BSR_ANYCRLF)(*CRLF)a\Rb/I
9280    Capturing subpattern count = 0
9281    Options: bsr_anycrlf
9282    Forced newline sequence: CRLF
9283    First char = 'a'
9284    Need char = 'b'
9285        a\nb
9286     0: a\x0ab
9287        a\rb
9288     0: a\x0db
9289    
9290    /(*CRLF)(*BSR_UNICODE)a\Rb/I
9291    Capturing subpattern count = 0
9292    Options: bsr_unicode
9293    Forced newline sequence: CRLF
9294    First char = 'a'
9295    Need char = 'b'
9296        a\x85b
9297     0: a\x85b
9298    
9299    /(*CRLF)(*BSR_ANYCRLF)(*CR)ab/I
9300    Capturing subpattern count = 0
9301    Options: bsr_anycrlf
9302    Forced newline sequence: CR
9303    First char = 'a'
9304    Need char = 'b'
9305    
9306    /(?<a>)(?&)/
9307    Failed: subpattern name expected at offset 9
9308    
9309    /(?<abc>)(?&a)/
9310    Failed: reference to non-existent subpattern at offset 12
9311    
9312    /(?<a>)(?&aaaaaaaaaaaaaaaaaaaaaaa)/
9313    Failed: reference to non-existent subpattern at offset 32
9314    
9315    /(?+-a)/
9316    Failed: digit expected after (?+ at offset 3
9317    
9318    /(?-+a)/
9319    Failed: unrecognized character after (? or (?- at offset 3
9320    
9321    /(?(-1))/
9322    Failed: reference to non-existent subpattern at offset 6
9323    
9324    /(?(+10))/
9325    Failed: reference to non-existent subpattern at offset 7
9326    
9327    /(?(10))/
9328    Failed: reference to non-existent subpattern at offset 6
9329    
9330    /(?(+2))()()/
9331    
9332    /(?(2))()()/
9333    
9334    /\k''/
9335    Failed: subpattern name expected at offset 3
9336    
9337    /\k<>/
9338    Failed: subpattern name expected at offset 3
9339    
9340    /\k{}/
9341    Failed: subpattern name expected at offset 3
9342    
9343    /(?P=)/
9344    Failed: subpattern name expected at offset 4
9345    
9346    /(?P>)/
9347    Failed: subpattern name expected at offset 4
9348    
9349    /(?!\w)(?R)/
9350    Failed: recursive call could loop indefinitely at offset 9
9351    
9352    /(?=\w)(?R)/
9353    Failed: recursive call could loop indefinitely at offset 9
9354    
9355    /(?<!\w)(?R)/
9356    Failed: recursive call could loop indefinitely at offset 10
9357    
9358    /(?<=\w)(?R)/
9359    Failed: recursive call could loop indefinitely at offset 10
9360    
9361    /[[:foo:]]/
9362    Failed: unknown POSIX class name at offset 3
9363    
9364    /[[:1234:]]/
9365    Failed: unknown POSIX class name at offset 3
9366    
9367    /[[:f\oo:]]/
9368    Failed: unknown POSIX class name at offset 3
9369    
9370    /[[: :]]/
9371    Failed: unknown POSIX class name at offset 3
9372    
9373    /[[:...:]]/
9374    Failed: unknown POSIX class name at offset 3
9375    
9376    /[[:l\ower:]]/
9377    Failed: unknown POSIX class name at offset 3
9378    
9379    /[[:abc\:]]/
9380    Failed: unknown POSIX class name at offset 3
9381    
9382    /[abc[:x\]pqr:]]/
9383    Failed: unknown POSIX class name at offset 6
9384    
9385    /[[:a\dz:]]/
9386    Failed: unknown POSIX class name at offset 3
9387    
9388    /^(?<name>a|b\g<name>c)/
9389        aaaa
9390     0: a
9391     1: a
9392        bacxxx
9393     0: bac
9394     1: bac
9395        bbaccxxx
9396     0: bbacc
9397     1: bbacc
9398        bbbacccxx
9399     0: bbbaccc
9400     1: bbbaccc
9401    
9402    /^(?<name>a|b\g'name'c)/
9403        aaaa
9404     0: a
9405     1: a
9406        bacxxx
9407     0: bac
9408     1: bac
9409        bbaccxxx
9410     0: bbacc
9411     1: bbacc
9412        bbbacccxx
9413     0: bbbaccc
9414     1: bbbaccc
9415    
9416    /^(a|b\g<1>c)/
9417        aaaa
9418     0: a
9419     1: a
9420        bacxxx
9421     0: bac
9422     1: bac
9423        bbaccxxx
9424     0: bbacc
9425     1: bbacc
9426        bbbacccxx
9427     0: bbbaccc
9428     1: bbbaccc
9429    
9430    /^(a|b\g'1'c)/
9431        aaaa
9432     0: a
9433     1: a
9434        bacxxx
9435     0: bac
9436     1: bac
9437        bbaccxxx
9438     0: bbacc
9439     1: bbacc
9440        bbbacccxx
9441     0: bbbaccc
9442     1: bbbaccc
9443    
9444    /^(a|b\g'-1'c)/
9445        aaaa
9446     0: a
9447     1: a
9448        bacxxx
9449     0: bac
9450     1: bac
9451        bbaccxxx
9452     0: bbacc
9453     1: bbacc
9454        bbbacccxx
9455     0: bbbaccc
9456     1: bbbaccc
9457    
9458    /(^(a|b\g<-1>c))/
9459        aaaa
9460     0: a
9461     1: a
9462     2: a
9463        bacxxx
9464     0: bac
9465     1: bac
9466     2: bac
9467        bbaccxxx
9468     0: bbacc
9469     1: bbacc
9470     2: bbacc
9471        bbbacccxx
9472     0: bbbaccc
9473     1: bbbaccc
9474     2: bbbaccc
9475    
9476    /(^(a|b\g<-1'c))/
9477    Failed: \g is not followed by a braced, angle-bracketed, or quoted name/number or by a plain number at offset 15
9478    
9479    /(^(a|b\g{-1}))/
9480        bacxxx
9481    No match
9482    
9483    /(?-i:\g<name>)(?i:(?<name>a))/
9484        XaaX
9485     0: aa
9486     1: a
9487        XAAX
9488     0: AA
9489     1: A
9490    
9491    /(?i:\g<name>)(?-i:(?<name>a))/
9492        XaaX
9493     0: aa
9494     1: a
9495        ** Failers
9496    No match
9497        XAAX
9498    No match
9499    
9500    /(?-i:\g<+1>)(?i:(a))/
9501        XaaX
9502     0: aa
9503     1: a
9504        XAAX
9505     0: AA
9506     1: A
9507    
9508    /(?=(?<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>\})\}))\{/
9509    
9510    /(?<n>a|b|c)\g<n>*/
9511       abc
9512     0: abc
9513     1: a
9514       accccbbb
9515     0: accccbbb
9516     1: a
9517    
9518    /^(?+1)(?<a>x|y){0}z/
9519        xzxx
9520     0: xz
9521     1: <unset>
9522        yzyy
9523     0: yz
9524     1: <unset>
9525        ** Failers
9526    No match
9527        xxz
9528    No match
9529    
9530    /(\3)(\1)(a)/
9531        cat
9532    No match
9533    
9534    /(\3)(\1)(a)/<JS>
9535        cat
9536     0: a
9537     1:
9538     2:
9539     3: a
9540    
9541    /TA]/
9542        The ACTA] comes
9543     0: TA]
9544    
9545    /TA]/<JS>
9546    Failed: ] is an invalid data character in JavaScript compatibility mode at offset 2
9547    
9548    /(?2)[]a()b](abc)/
9549    Failed: reference to non-existent subpattern at offset 3
9550    
9551    /(?2)[^]a()b](abc)/
9552    Failed: reference to non-existent subpattern at offset 3
9553    
9554    /(?1)[]a()b](abc)/
9555        abcbabc
9556     0: abcbabc
9557     1: abc
9558        ** Failers
9559    No match
9560        abcXabc
9561    No match
9562    
9563    /(?1)[^]a()b](abc)/
9564        abcXabc
9565     0: abcXabc
9566     1: abc
9567        ** Failers
9568    No match
9569        abcbabc
9570    No match
9571    
9572    /(?2)[]a()b](abc)(xyz)/
9573        xyzbabcxyz
9574     0: xyzbabcxyz
9575     1: abc
9576     2: xyz
9577    
9578    /(?&N)[]a(?<N>)](?<M>abc)/
9579    Failed: reference to non-existent subpattern at offset 4
9580    
9581    /(?&N)[]a(?<N>)](abc)/
9582    Failed: reference to non-existent subpattern at offset 4
9583    
9584    /a[]b/
9585    Failed: missing terminating ] for character class at offset 4
9586    
9587    /a[^]b/
9588    Failed: missing terminating ] for character class at offset 5
9589    
9590    /a[]b/<JS>
9591        ** Failers
9592    No match
9593        ab
9594    No match
9595    
9596    /a[]+b/<JS>
9597        ** Failers
9598    No match
9599        ab
9600    No match
9601    
9602    /a[]*+b/<JS>
9603        ** Failers
9604    No match
9605        ab
9606    No match
9607    
9608    /a[^]b/<JS>
9609        aXb
9610     0: aXb
9611        a\nb
9612     0: a\x0ab
9613        ** Failers
9614    No match
9615        ab
9616    No match
9617    
9618    /a[^]+b/<JS>
9619        aXb
9620     0: aXb
9621        a\nX\nXb
9622     0: a\x0aX\x0aXb
9623        ** Failers
9624    No match
9625        ab
9626    No match
9627    
9628    /a(?!)+b/
9629    Failed: nothing to repeat at offset 5
9630    
9631    /a(*FAIL)+b/
9632    Failed: nothing to repeat at offset 8
9633    
9634    /(abc|pqr|123){0}[xyz]/SI
9635    Capturing subpattern count = 1
9636    No options
9637    No first char
9638    No need char
9639    Starting byte set: x y z
9640    
9641    /(?(?=.*b)b|^)/CI
9642    Capturing subpattern count = 0
9643    Partial matching not supported
9644    Options:
9645    No first char
9646    No need char
9647       adc
9648    --->adc
9649     +0 ^       (?(?=.*b)b|^)
9650     +2 ^       (?=.*b)
9651     +5 ^       .*
9652     +7 ^  ^    b
9653     +7 ^ ^     b
9654     +7 ^^      b
9655     +7 ^       b
9656     0:
9657       abc
9658    --->abc
9659     +0 ^       (?(?=.*b)b|^)
9660     +2 ^       (?=.*b)
9661     +5 ^       .*
9662     +7 ^  ^    b
9663     +7 ^ ^     b
9664     +7 ^^      b
9665     +8 ^ ^     )
9666     +9 ^       b
9667     +0  ^      (?(?=.*b)b|^)
9668     +2  ^      (?=.*b)
9669     +5  ^      .*
9670     +7  ^ ^    b
9671     +7  ^^     b
9672     +7  ^      b
9673     +8  ^^     )
9674     +9  ^      b
9675    +10  ^^     |
9676    +13  ^^
9677     0: b
9678    
9679    /(?(?=b).*b|^d)/I
9680    Capturing subpattern count = 0
9681    Partial matching not supported
9682    No options
9683    No first char
9684    No need char
9685    
9686    /(?(?=.*b).*b|^d)/I
9687    Capturing subpattern count = 0
9688    Partial matching not supported
9689    No options
9690    First char at start or follows newline
9691    No need char
9692    
9693    /a?|b?/P
9694        abc
9695     0: a
9696        ** Failers
9697     0:
9698        ddd\N
9699    No match: POSIX code 17: match failed
9700    
9701  / End of testinput2 /  / End of testinput2 /

Legend:
Removed from v.205  
changed lines
  Added in v.388

  ViewVC Help
Powered by ViewVC 1.1.5