/[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 937 by ph10, Sun Feb 26 15:58:56 2012 UTC revision 1374 by ph10, Sat Oct 12 15:49:48 2013 UTC
# Line 10  Line 10 
10    
11  /(a)b|/I  /(a)b|/I
12  Capturing subpattern count = 1  Capturing subpattern count = 1
13    May match empty string
14  No options  No options
15  No first char  No first char
16  No need char  No need char
# Line 228  No options Line 229  No options
229  No first char  No first char
230  No need char  No need char
231  Subject length lower bound = 1  Subject length lower bound = 1
232  Starting byte set: \x09 \x0a \x0c \x0d \x20 a b  Starting byte set: \x09 \x0a \x0b \x0c \x0d \x20 a b
233    
234  /(ab\2)/  /(ab\2)/
235  Failed: reference to non-existent subpattern at offset 6  Failed: reference to non-existent subpattern at offset 6
# Line 448  Need char = '=' Line 449  Need char = '='
449    
450  /(?<!bar|cattle)foo/I  /(?<!bar|cattle)foo/I
451  Capturing subpattern count = 0  Capturing subpattern count = 0
452    Max lookbehind = 6
453  No options  No options
454  First char = 'f'  First char = 'f'
455  Need char = 'o'  Need char = 'o'
 Max lookbehind = 6  
456      foo      foo
457   0: foo   0: foo
458      catfoo      catfoo
# Line 498  No need char Line 499  No need char
499    
500  /(?s).*/I  /(?s).*/I
501  Capturing subpattern count = 0  Capturing subpattern count = 0
502    May match empty string
503  Options: anchored dotall  Options: anchored dotall
504  No first char  No first char
505  No need char  No need char
# Line 631  No match Line 633  No match
633    
634  /\Aabc/Im  /\Aabc/Im
635  Capturing subpattern count = 0  Capturing subpattern count = 0
636    Max lookbehind = 1
637  Options: anchored multiline  Options: anchored multiline
638  No first char  No first char
639  No need char  No need char
# Line 656  No need char Line 659  No need char
659    
660  /(?<=foo)[ab]/IS  /(?<=foo)[ab]/IS
661  Capturing subpattern count = 0  Capturing subpattern count = 0
662    Max lookbehind = 3
663  No options  No options
664  No first char  No first char
665  No need char  No need char
 Max lookbehind = 3  
666  Subject length lower bound = 1  Subject length lower bound = 1
667  Starting byte set: a b  Starting byte set: a b
668    
669  /(?<!foo)(alpha|omega)/IS  /(?<!foo)(alpha|omega)/IS
670  Capturing subpattern count = 1  Capturing subpattern count = 1
671    Max lookbehind = 3
672  No options  No options
673  No first char  No first char
674  Need char = 'a'  Need char = 'a'
 Max lookbehind = 3  
675  Subject length lower bound = 5  Subject length lower bound = 5
676  Starting byte set: a o  Starting byte set: a o
677    
# Line 682  Starting byte set: a b Line 685  Starting byte set: a b
685    
686  /(?<=foo\n)^bar/Im  /(?<=foo\n)^bar/Im
687  Capturing subpattern count = 0  Capturing subpattern count = 0
688    Max lookbehind = 4
689  Contains explicit CR or LF match  Contains explicit CR or LF match
690  Options: multiline  Options: multiline
691  No first char  No first char
692  Need char = 'r'  Need char = 'r'
 Max lookbehind = 4  
693      foo\nbarbar      foo\nbarbar
694   0: bar   0: bar
695      ***Failers      ***Failers
# Line 700  No match Line 703  No match
703    
704  /^(?<=foo\n)bar/Im  /^(?<=foo\n)bar/Im
705  Capturing subpattern count = 0  Capturing subpattern count = 0
706    Max lookbehind = 4
707  Contains explicit CR or LF match  Contains explicit CR or LF match
708  Options: multiline  Options: multiline
709  First char at start or follows newline  First char at start or follows newline
710  Need char = 'r'  Need char = 'r'
 Max lookbehind = 4  
711      foo\nbarbar      foo\nbarbar
712   0: bar   0: bar
713      ***Failers      ***Failers
# Line 743  Failed: lookbehind assertion is not fixe Line 746  Failed: lookbehind assertion is not fixe
746    
747  /(?<=bullock|donkey)-cart/I  /(?<=bullock|donkey)-cart/I
748  Capturing subpattern count = 0  Capturing subpattern count = 0
749    Max lookbehind = 7
750  No options  No options
751  First char = '-'  First char = '-'
752  Need char = 't'  Need char = 't'
 Max lookbehind = 7  
753      the bullock-cart      the bullock-cart
754   0: -cart   0: -cart
755      a donkey-cart race      a donkey-cart race
# Line 760  No match Line 763  No match
763    
764  /(?<=ab(?i)x|y|z)/I  /(?<=ab(?i)x|y|z)/I
765  Capturing subpattern count = 0  Capturing subpattern count = 0
766    Max lookbehind = 3
767    May match empty string
768  No options  No options
769  No first char  No first char
770  No need char  No need char
 Max lookbehind = 3  
771    
772  /(?>.*)(?<=(abcd)|(xyz))/I  /(?>.*)(?<=(abcd)|(xyz))/I
773  Capturing subpattern count = 2  Capturing subpattern count = 2
774    Max lookbehind = 4
775    May match empty string
776  No options  No options
777  First char at start or follows newline  No first char
778  No need char  No need char
 Max lookbehind = 4  
779      alphabetabcd      alphabetabcd
780   0: alphabetabcd   0: alphabetabcd
781   1: abcd   1: abcd
# Line 781  Max lookbehind = 4 Line 786  Max lookbehind = 4
786    
787  /(?<=ab(?i)x(?-i)y|(?i)z|b)ZZ/I  /(?<=ab(?i)x(?-i)y|(?i)z|b)ZZ/I
788  Capturing subpattern count = 0  Capturing subpattern count = 0
789    Max lookbehind = 4
790  No options  No options
791  First char = 'Z'  First char = 'Z'
792  Need char = 'Z'  Need char = 'Z'
 Max lookbehind = 4  
793      abxyZZ      abxyZZ
794   0: ZZ   0: ZZ
795      abXyZZ      abXyZZ
# Line 810  No match Line 815  No match
815    
816  /(?<!(foo)a)bar/I  /(?<!(foo)a)bar/I
817  Capturing subpattern count = 1  Capturing subpattern count = 1
818    Max lookbehind = 4
819  No options  No options
820  First char = 'b'  First char = 'b'
821  Need char = 'r'  Need char = 'r'
 Max lookbehind = 4  
822      bar      bar
823   0: bar   0: bar
824      foobbar      foobbar
# Line 823  No match Line 828  No match
828      fooabar      fooabar
829  No match  No match
830    
 /This one is here because Perl 5.005_02 doesn't fail it/I  
 Capturing subpattern count = 0  
 No options  
 First char = 'T'  
 Need char = 't'  
   
 /^(a)?(?(1)a|b)+$/I  
 Capturing subpattern count = 1  
 Options: anchored  
 No first char  
 No need char  
     *** Failers  
 No match  
     a  
 No match  
   
831  /This one is here because Perl behaves differently; see also the following/I  /This one is here because Perl behaves differently; see also the following/I
832  Capturing subpattern count = 0  Capturing subpattern count = 0
833  No options  No options
# Line 1212  No need char Line 1201  No need char
1201    
1202  /\Biss\B/I+  /\Biss\B/I+
1203  Capturing subpattern count = 0  Capturing subpattern count = 0
1204    Max lookbehind = 1
1205  No options  No options
1206  First char = 'i'  First char = 'i'
1207  Need char = 's'  Need char = 's'
 Max lookbehind = 1  
1208      Mississippi      Mississippi
1209   0: iss   0: iss
1210   0+ issippi   0+ issippi
# Line 1233  Need char = 's' Line 1222  Need char = 's'
1222    
1223  /\Biss\B/IG+  /\Biss\B/IG+
1224  Capturing subpattern count = 0  Capturing subpattern count = 0
1225    Max lookbehind = 1
1226  No options  No options
1227  First char = 'i'  First char = 'i'
1228  Need char = 's'  Need char = 's'
 Max lookbehind = 1  
1229      Mississippi      Mississippi
1230   0: iss   0: iss
1231   0+ issippi   0+ issippi
1232    
1233  /\Biss\B/Ig+  /\Biss\B/Ig+
1234  Capturing subpattern count = 0  Capturing subpattern count = 0
1235    Max lookbehind = 1
1236  No options  No options
1237  First char = 'i'  First char = 'i'
1238  Need char = 's'  Need char = 's'
 Max lookbehind = 1  
1239      Mississippi      Mississippi
1240   0: iss   0: iss
1241   0+ issippi   0+ issippi
# Line 1259  No match Line 1248  No match
1248    
1249  /(?<=[Ms])iss/Ig+  /(?<=[Ms])iss/Ig+
1250  Capturing subpattern count = 0  Capturing subpattern count = 0
1251    Max lookbehind = 1
1252  No options  No options
1253  First char = 'i'  First char = 'i'
1254  Need char = 's'  Need char = 's'
 Max lookbehind = 1  
1255      Mississippi      Mississippi
1256   0: iss   0: iss
1257   0+ issippi   0+ issippi
# Line 1271  Max lookbehind = 1 Line 1260  Max lookbehind = 1
1260    
1261  /(?<=[Ms])iss/IG+  /(?<=[Ms])iss/IG+
1262  Capturing subpattern count = 0  Capturing subpattern count = 0
1263    Max lookbehind = 1
1264  No options  No options
1265  First char = 'i'  First char = 'i'
1266  Need char = 's'  Need char = 's'
 Max lookbehind = 1  
1267      Mississippi      Mississippi
1268   0: iss   0: iss
1269   0+ issippi   0+ issippi
# Line 1392  Need char = 'c' Line 1381  Need char = 'c'
1381    
1382  /a*/I  /a*/I
1383  Capturing subpattern count = 0  Capturing subpattern count = 0
1384    May match empty string
1385  No options  No options
1386  No first char  No first char
1387  No need char  No need char
# Line 1410  Need char = 'a' Line 1400  Need char = 'a'
1400    
1401  /a{0,3}/I  /a{0,3}/I
1402  Capturing subpattern count = 0  Capturing subpattern count = 0
1403    May match empty string
1404  No options  No options
1405  No first char  No first char
1406  No need char  No need char
# Line 1452  Need char = 'r' Line 1443  Need char = 'r'
1443    
1444  /...(?<=abc)/I  /...(?<=abc)/I
1445  Capturing subpattern count = 0  Capturing subpattern count = 0
1446    Max lookbehind = 3
1447  No options  No options
1448  No first char  No first char
1449  No need char  No need char
 Max lookbehind = 3  
1450    
1451  /abc(?!pqr)/I  /abc(?!pqr)/I
1452  Capturing subpattern count = 0  Capturing subpattern count = 0
# Line 1609  Need char = 'e' Line 1600  Need char = 'e'
1600    
1601  /a?b?/I  /a?b?/I
1602  Capturing subpattern count = 0  Capturing subpattern count = 0
1603    May match empty string
1604  No options  No options
1605  No first char  No first char
1606  No need char  No need char
# Line 1627  No match Line 1619  No match
1619    
1620  /|-/I  /|-/I
1621  Capturing subpattern count = 0  Capturing subpattern count = 0
1622    May match empty string
1623  No options  No options
1624  No first char  No first char
1625  No need char  No need char
# Line 2640  Need char = '-' Line 2633  Need char = '-'
2633          End          End
2634  ------------------------------------------------------------------  ------------------------------------------------------------------
2635  Capturing subpattern count = 0  Capturing subpattern count = 0
2636    May match empty string
2637  Options: extended  Options: extended
2638  No first char  No first char
2639  No need char  No need char
# Line 2659  No need char Line 2653  No need char
2653  /[\s]/DZ  /[\s]/DZ
2654  ------------------------------------------------------------------  ------------------------------------------------------------------
2655          Bra          Bra
2656          [\x09\x0a\x0c\x0d ]          [\x09-\x0d ]
2657          Ket          Ket
2658          End          End
2659  ------------------------------------------------------------------  ------------------------------------------------------------------
# Line 2671  No need char Line 2665  No need char
2665  /[\S]/DZ  /[\S]/DZ
2666  ------------------------------------------------------------------  ------------------------------------------------------------------
2667          Bra          Bra
2668          [\x00-\x08\x0b\x0e-\x1f!-\xff] (neg)          [\x00-\x08\x0e-\x1f!-\xff] (neg)
2669          Ket          Ket
2670          End          End
2671  ------------------------------------------------------------------  ------------------------------------------------------------------
# Line 2782  Need char = '0' Line 2776  Need char = '0'
2776          End          End
2777  ------------------------------------------------------------------  ------------------------------------------------------------------
2778  Capturing subpattern count = 0  Capturing subpattern count = 0
2779    May match empty string
2780  No options  No options
2781  No first char  No first char
2782  No need char  No need char
# Line 2881  No match Line 2876  No match
2876          End          End
2877  ------------------------------------------------------------------  ------------------------------------------------------------------
2878  Capturing subpattern count = 0  Capturing subpattern count = 0
2879    May match empty string
2880  No options  No options
2881  No first char  No first char
2882  No need char  No need char
# Line 2902  No need char Line 2898  No need char
2898          Bra          Bra
2899          Once          Once
2900          x          x
2901          x{0,2}          x{0,2}+
2902          Ket          Ket
2903          Ket          Ket
2904          End          End
# Line 2923  No need char Line 2919  No need char
2919          End          End
2920  ------------------------------------------------------------------  ------------------------------------------------------------------
2921  Capturing subpattern count = 1  Capturing subpattern count = 1
2922    May match empty string
2923  No options  No options
2924  No first char  No first char
2925  No need char  No need char
2926    
2927  /^(\w++|\s++)*$/I  /^(\w++|\s++)*$/I
2928  Capturing subpattern count = 1  Capturing subpattern count = 1
2929    May match empty string
2930  Options: anchored  Options: anchored
2931  No first char  No first char
2932  No need char  No need char
# Line 3090  Need char = 'b' Line 3088  Need char = 'b'
3088          [bc]+          [bc]+
3089          Ket          Ket
3090          CBra 5          CBra 5
3091          \w*          \w*+
3092          Ket          Ket
3093          Ket          Ket
3094          Ket          Ket
# Line 3169  Failed: missing terminating ] for charac Line 3167  Failed: missing terminating ] for charac
3167  /[\s]/IDZ  /[\s]/IDZ
3168  ------------------------------------------------------------------  ------------------------------------------------------------------
3169          Bra          Bra
3170          [\x09\x0a\x0c\x0d ]          [\x09-\x0d ]
3171          Ket          Ket
3172          End          End
3173  ------------------------------------------------------------------  ------------------------------------------------------------------
# Line 3233  No match Line 3231  No match
3231          End          End
3232  ------------------------------------------------------------------  ------------------------------------------------------------------
3233  Capturing subpattern count = 0  Capturing subpattern count = 0
3234    Max lookbehind = 1
3235  No options  No options
3236  First char = '8'  First char = '8'
3237  Need char = 'X'  Need char = 'X'
 Max lookbehind = 1  
3238    
3239  |\$\<\.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  |\$\<\.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
3240  ------------------------------------------------------------------  ------------------------------------------------------------------
# Line 3247  Max lookbehind = 1 Line 3245  Max lookbehind = 1
3245          End          End
3246  ------------------------------------------------------------------  ------------------------------------------------------------------
3247  Capturing subpattern count = 0  Capturing subpattern count = 0
3248    Max lookbehind = 1
3249  No options  No options
3250  First char = '$'  First char = '$'
3251  Need char = 'X'  Need char = 'X'
 Max lookbehind = 1  
3252    
3253  /(.*)\d+\1/I  /(.*)\d+\1/I
3254  Capturing subpattern count = 1  Capturing subpattern count = 1
# Line 3304  Need char = 'b' Line 3302  Need char = 'b'
3302    
3303  /(?=a).*/I  /(?=a).*/I
3304  Capturing subpattern count = 0  Capturing subpattern count = 0
3305    May match empty string
3306  No options  No options
3307  First char = 'a'  First char = 'a'
3308  No need char  No need char
# Line 3322  Need char = 'z' (caseless) Line 3321  Need char = 'z' (caseless)
3321    
3322  /(?=a)(?=b)/I  /(?=a)(?=b)/I
3323  Capturing subpattern count = 0  Capturing subpattern count = 0
3324    May match empty string
3325  No options  No options
3326  First char = 'a'  First char = 'a'
3327  No need char  No need char
# Line 3388  Need char = 'a' Line 3388  Need char = 'a'
3388    
3389  /(a)*/I  /(a)*/I
3390  Capturing subpattern count = 1  Capturing subpattern count = 1
3391    May match empty string
3392  No options  No options
3393  No first char  No first char
3394  No need char  No need char
# Line 3616  No match Line 3617  No match
3617    
3618  /(?C0)(abc(?C1))*/I  /(?C0)(abc(?C1))*/I
3619  Capturing subpattern count = 1  Capturing subpattern count = 1
3620    May match empty string
3621  No options  No options
3622  No first char  No first char
3623  No need char  No need char
# Line 3649  No need char Line 3651  No need char
3651    
3652  /(\d{3}(?C))*/I  /(\d{3}(?C))*/I
3653  Capturing subpattern count = 1  Capturing subpattern count = 1
3654    May match empty string
3655  No options  No options
3656  No first char  No first char
3657  No need char  No need char
# Line 3763  Callout 2: last capture = -1 Line 3766  Callout 2: last capture = -1
3766    
3767  /(?<=(abc)(?C))xyz/I  /(?<=(abc)(?C))xyz/I
3768  Capturing subpattern count = 1  Capturing subpattern count = 1
3769    Max lookbehind = 3
3770  No options  No options
3771  First char = 'x'  First char = 'x'
3772  Need char = 'z'  Need char = 'z'
 Max lookbehind = 3  
3773     abcxyz\C+     abcxyz\C+
3774  Callout 0: last capture = 1  Callout 0: last capture = 1
3775   0: <unset>   0: <unset>
# Line 3785  Need char = 'b' Line 3788  Need char = 'b'
3788  --->abbbbbccc  --->abbbbbccc
3789    1 ^        ^    1 ^        ^
3790  Callout data = 1  Callout data = 1
   1 ^       ^  
 Callout data = 1  
   1 ^      ^  
 Callout data = 1  
   1 ^     ^  
 Callout data = 1  
   1 ^    ^  
 Callout data = 1  
   1 ^   ^  
 Callout data = 1  
   1 ^  ^  
 Callout data = 1  
   1 ^ ^  
 Callout data = 1  
3791  No match  No match
3792    
3793  /a(b+?)(c*?)(?C1)/I  /a(b+?)(c*?)(?C1)/I
# Line 3895  Failed: recursive call could loop indefi Line 3884  Failed: recursive call could loop indefi
3884    
3885  /^([^()]|\((?1)*\))*$/I  /^([^()]|\((?1)*\))*$/I
3886  Capturing subpattern count = 1  Capturing subpattern count = 1
3887    May match empty string
3888  Options: anchored  Options: anchored
3889  No first char  No first char
3890  No need char  No need char
# Line 4174  Named capturing subpatterns: Line 4164  Named capturing subpatterns:
4164    one     1    one     1
4165    three   3    three   3
4166    two     2    two     2
4167    May match empty string
4168  Options: anchored caseless  Options: anchored caseless
4169  No first char  No first char
4170  No need char  No need char
# Line 4273  Need char = 'z' Line 4264  Need char = 'z'
4264    
4265  /(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a/Is  /(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a/Is
4266  Capturing subpattern count = 31  Capturing subpattern count = 31
4267    May match empty string
4268  Options: anchored dotall  Options: anchored dotall
4269  No first char  No first char
4270  No need char  No need char
# Line 4280  No need char Line 4272  No need char
4272  /(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a\31/Is  /(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a\31/Is
4273  Capturing subpattern count = 31  Capturing subpattern count = 31
4274  Max back reference = 31  Max back reference = 31
4275    May match empty string
4276  Options: dotall  Options: dotall
4277  No first char  No first char
4278  No need char  No need char
# Line 4287  No need char Line 4280  No need char
4280  /(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a\32/Is  /(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a\32/Is
4281  Capturing subpattern count = 32  Capturing subpattern count = 32
4282  Max back reference = 32  Max back reference = 32
4283    May match empty string
4284  Options: dotall  Options: dotall
4285  No first char  No first char
4286  No need char  No need char
# Line 4363  Minimum match() recursion limit = 6 Line 4357  Minimum match() recursion limit = 6
4357   1: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa   1: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
4358    aaaaaaaaaaaaaz\M    aaaaaaaaaaaaaz\M
4359  Minimum match() limit = 32768  Minimum match() limit = 32768
4360  Minimum match() recursion limit = 42  Minimum match() recursion limit = 29
4361  No match  No match
4362    
4363  /(aaa(?C1)bbb|ab)/I  /(aaa(?C1)bbb|ab)/I
# Line 4438  Capturing subpattern count = 2 Line 4432  Capturing subpattern count = 2
4432  Named capturing subpatterns:  Named capturing subpatterns:
4433    Tes    1    Tes    1
4434    Test   2    Test   2
4435    May match empty string
4436  No options  No options
4437  No first char  No first char
4438  No need char  No need char
# Line 4456  Capturing subpattern count = 2 Line 4451  Capturing subpattern count = 2
4451  Named capturing subpatterns:  Named capturing subpatterns:
4452    Tes    2    Tes    2
4453    Test   1    Test   1
4454    May match empty string
4455  No options  No options
4456  No first char  No first char
4457  No need char  No need char
# Line 4533  Need char = ']' Line 4529  Need char = ']'
4529          End          End
4530  ------------------------------------------------------------------  ------------------------------------------------------------------
4531  Capturing subpattern count = 2  Capturing subpattern count = 2
4532    May match empty string
4533  No options  No options
4534  No first char  No first char
4535  No need char  No need char
# Line 4553  No need char Line 4550  No need char
4550          End          End
4551  ------------------------------------------------------------------  ------------------------------------------------------------------
4552  Capturing subpattern count = 2  Capturing subpattern count = 2
4553    May match empty string
4554  No options  No options
4555  No first char  No first char
4556  No need char  No need char
# Line 4584  No need char Line 4582  No need char
4582          End          End
4583  ------------------------------------------------------------------  ------------------------------------------------------------------
4584  Capturing subpattern count = 2  Capturing subpattern count = 2
4585    May match empty string
4586  No options  No options
4587  No first char  No first char
4588  No need char  No need char
# Line 5411  Need char = '3' Line 5410  Need char = '3'
5410    
5411  /\b.*/I  /\b.*/I
5412  Capturing subpattern count = 0  Capturing subpattern count = 0
5413    Max lookbehind = 1
5414    May match empty string
5415  No options  No options
5416  No first char  No first char
5417  No need char  No need char
 Max lookbehind = 1  
5418    ab cd\>1    ab cd\>1
5419   0:  cd   0:  cd
5420    
5421  /\b.*/Is  /\b.*/Is
5422  Capturing subpattern count = 0  Capturing subpattern count = 0
5423    Max lookbehind = 1
5424    May match empty string
5425  Options: dotall  Options: dotall
5426  No first char  No first char
5427  No need char  No need char
 Max lookbehind = 1  
5428    ab cd\>1    ab cd\>1
5429   0:  cd   0:  cd
5430    
5431  /(?!.bcd).*/I  /(?!.bcd).*/I
5432  Capturing subpattern count = 0  Capturing subpattern count = 0
5433    May match empty string
5434  No options  No options
5435  No first char  No first char
5436  No need char  No need char
# Line 6017  Matched, but too many substrings Line 6019  Matched, but too many substrings
6019    
6020  /[^()]*(?:\((?R)\)[^()]*)*/I  /[^()]*(?:\((?R)\)[^()]*)*/I
6021  Capturing subpattern count = 0  Capturing subpattern count = 0
6022    May match empty string
6023  No options  No options
6024  No first char  No first char
6025  No need char  No need char
# Line 6029  No need char Line 6032  No need char
6032    
6033  /[^()]*(?:\((?>(?R))\)[^()]*)*/I  /[^()]*(?:\((?>(?R))\)[^()]*)*/I
6034  Capturing subpattern count = 0  Capturing subpattern count = 0
6035    May match empty string
6036  No options  No options
6037  No first char  No first char
6038  No need char  No need char
# Line 6039  No need char Line 6043  No need char
6043    
6044  /[^()]*(?:\((?R)\))*[^()]*/I  /[^()]*(?:\((?R)\))*[^()]*/I
6045  Capturing subpattern count = 0  Capturing subpattern count = 0
6046    May match empty string
6047  No options  No options
6048  No first char  No first char
6049  No need char  No need char
# Line 6049  No need char Line 6054  No need char
6054    
6055  /(?:\((?R)\))*[^()]*/I  /(?:\((?R)\))*[^()]*/I
6056  Capturing subpattern count = 0  Capturing subpattern count = 0
6057    May match empty string
6058  No options  No options
6059  No first char  No first char
6060  No need char  No need char
# Line 6061  No need char Line 6067  No need char
6067    
6068  /(?:\((?R)\))|[^()]*/I  /(?:\((?R)\))|[^()]*/I
6069  Capturing subpattern count = 0  Capturing subpattern count = 0
6070    May match empty string
6071  No options  No options
6072  No first char  No first char
6073  No need char  No need char
# Line 6110  no parentheses with name "Z" Line 6117  no parentheses with name "Z"
6117   2: a1   2: a1
6118  copy substring Z failed -7  copy substring Z failed -7
6119    C a1 (2) A    C a1 (2) A
6120    
6121    /(?|(?<a>)(?<b>)(?<a>)|(?<a>)(?<b>)(?<a>))/IJ
6122    Capturing subpattern count = 3
6123    Named capturing subpatterns:
6124      a   1
6125      a   3
6126      b   2
6127    May match empty string
6128    Options: dupnames
6129    No first char
6130    No need char
6131    
6132  /^(?P<A>a)(?P<A>b)/IJ  /^(?P<A>a)(?P<A>b)/IJ
6133  Capturing subpattern count = 2  Capturing subpattern count = 2
# Line 6392  No options Line 6410  No options
6410  No first char  No first char
6411  Need char = ','  Need char = ','
6412  Subject length lower bound = 1  Subject length lower bound = 1
6413  Starting byte set: \x09 \x0a \x0c \x0d \x20 ,  Starting byte set: \x09 \x0a \x0b \x0c \x0d \x20 ,
6414      \x0b,\x0b      \x0b,\x0b
6415   0: ,   0: \x0b,\x0b
6416      \x0c,\x0d      \x0c,\x0d
6417   0: \x0c,\x0d   0: \x0c,\x0d
6418    
# Line 6518  Unknown newline type at: <bad> Line 6536  Unknown newline type at: <bad>
6536    
6537  /.*/I<lf>  /.*/I<lf>
6538  Capturing subpattern count = 0  Capturing subpattern count = 0
6539    May match empty string
6540  Options:  Options:
6541  Forced newline sequence: LF  Forced newline sequence: LF
6542  First char at start or follows newline  First char at start or follows newline
# Line 6559  Need char = 'f' Line 6578  Need char = 'f'
6578    
6579  +((?:\s|//.*\\n|/[*](?:\\n|.)*?[*]/)*)+I  +((?:\s|//.*\\n|/[*](?:\\n|.)*?[*]/)*)+I
6580  Capturing subpattern count = 1  Capturing subpattern count = 1
6581    May match empty string
6582  No options  No options
6583  No first char  No first char
6584  No need char  No need char
# Line 7482  Matched, but too many substrings Line 7502  Matched, but too many substrings
7502  /a*[^a]/BZ  /a*[^a]/BZ
7503  ------------------------------------------------------------------  ------------------------------------------------------------------
7504          Bra          Bra
7505          a*          a*+
7506          [^a]          [^a]
7507          Ket          Ket
7508          End          End
# Line 7665  No match Line 7685  No match
7685          ^          ^
7686          CBra 1          CBra 1
7687          Cond          Cond
7688        2 Cond nref        2 Cond ref
7689          y          y
7690          Ket          Ket
7691          [()]          [()]
# Line 7725  Named capturing subpatterns: Line 7745  Named capturing subpatterns:
7745    one     1    one     1
7746    three   3    three   3
7747    two     2    two     2
7748    May match empty string
7749  Options: anchored caseless  Options: anchored caseless
7750  No first char  No first char
7751  No need char  No need char
# Line 8561  No match Line 8582  No match
8582          \d          \d
8583          \v++          \v++
8584          \w          \w
8585          \v+          \v++
8586          \S          \S
8587          \v++          \v++
8588          \V          \V
# Line 8659  No match Line 8680  No match
8680   +6 ^      ^    (*FAIL)   +6 ^      ^    (*FAIL)
8681   +6 ^     ^     (*FAIL)   +6 ^     ^     (*FAIL)
8682   +6 ^    ^      (*FAIL)   +6 ^    ^      (*FAIL)
  +4 ^  ^        c+  
  +2 ^ ^         b?  
  +4 ^ ^         c+  
  +2 ^^          b?  
  +4 ^^          c+  
8683   +0  ^          a+   +0  ^          a+
8684   +2  ^ ^        b?   +2  ^ ^        b?
8685   +4  ^  ^       c+   +4  ^  ^       c+
8686   +6  ^     ^    (*FAIL)   +6  ^     ^    (*FAIL)
8687   +6  ^    ^     (*FAIL)   +6  ^    ^     (*FAIL)
8688   +6  ^   ^      (*FAIL)   +6  ^   ^      (*FAIL)
  +4  ^ ^        c+  
  +2  ^^         b?  
  +4  ^^         c+  
8689   +0   ^         a+   +0   ^         a+
8690   +2   ^^        b?   +2   ^^        b?
8691   +4   ^ ^       c+   +4   ^ ^       c+
8692   +6   ^    ^    (*FAIL)   +6   ^    ^    (*FAIL)
8693   +6   ^   ^     (*FAIL)   +6   ^   ^     (*FAIL)
8694   +6   ^  ^      (*FAIL)   +6   ^  ^      (*FAIL)
  +4   ^^        c+  
8695  No match  No match
8696    
8697  /a+b?(*PRUNE)c+(*FAIL)/C  /a+b?(*PRUNE)c+(*FAIL)/C
# Line 8803  No match Line 8815  No match
8815   1: \x0a   1: \x0a
8816    
8817  /a(*CR)b/  /a(*CR)b/
8818  Failed: (*VERB) not recognized at offset 5  Failed: (*VERB) not recognized or malformed at offset 5
8819    
8820  /(*CR)a.b/  /(*CR)a.b/
8821      a\nb      a\nb
# Line 9264  Starting byte set: x y z Line 9276  Starting byte set: x y z
9276    
9277  /(?(?=.*b)b|^)/CI  /(?(?=.*b)b|^)/CI
9278  Capturing subpattern count = 0  Capturing subpattern count = 0
9279    May match empty string
9280  Options:  Options:
9281  No first char  No first char
9282  No need char  No need char
# Line 9276  No need char Line 9289  No need char
9289   +7 ^ ^     b   +7 ^ ^     b
9290   +7 ^^      b   +7 ^^      b
9291   +7 ^       b   +7 ^       b
9292    +11 ^       ^
9293  +12 ^       )  +12 ^       )
9294  +13 ^  +13 ^
9295   0:   0:
# Line 9406  No match Line 9420  No match
9420   +3 ^ ^      (?(?=[a])[^"])   +3 ^ ^      (?(?=[a])[^"])
9421   +5 ^ ^      (?=[a])   +5 ^ ^      (?=[a])
9422   +8 ^ ^      [a]   +8 ^ ^      [a]
9423    +17 ^ ^      |
9424  +21 ^ ^      "  +21 ^ ^      "
9425  +18 ^ ^      b  +18 ^ ^      b
9426  +19 ^  ^     )  +19 ^  ^     )
9427   +3 ^  ^     (?(?=[a])[^"])   +3 ^  ^     (?(?=[a])[^"])
9428   +5 ^  ^     (?=[a])   +5 ^  ^     (?=[a])
9429   +8 ^  ^     [a]   +8 ^  ^     [a]
9430    +17 ^  ^     |
9431  +21 ^  ^     "  +21 ^  ^     "
9432  +22 ^   ^    $  +22 ^   ^    $
9433  +23 ^   ^  +23 ^   ^
# Line 9719  Partial match: abc12 Line 9735  Partial match: abc12
9735      xyzabc123pqr      xyzabc123pqr
9736   0: 123   0: 123
9737      xyzabc12\P      xyzabc12\P
9738  Partial match: abc12  Partial match at offset 6: abc12
9739      xyzabc12\P\P      xyzabc12\P\P
9740  Partial match: abc12  Partial match at offset 6: abc12
9741    
9742  /\babc\b/  /\babc\b/
9743      +++abc+++      +++abc+++
9744   0: abc   0: abc
9745      +++ab\P      +++ab\P
9746  Partial match: +ab  Partial match at offset 3: +ab
9747      +++ab\P\P      +++ab\P\P
9748  Partial match: +ab  Partial match at offset 3: +ab
9749    
9750  /(?&word)(?&element)(?(DEFINE)(?<element><[^m][^>]>[^<])(?<word>\w*+))/BZ  /(?&word)(?&element)(?(DEFINE)(?<element><[^m][^>]>[^<])(?<word>\w*+))/BZ
9751  ------------------------------------------------------------------  ------------------------------------------------------------------
# Line 10110  No set of starting bytes Line 10126  No set of starting bytes
10126  "(?>.*/)foo"SI  "(?>.*/)foo"SI
10127  Capturing subpattern count = 0  Capturing subpattern count = 0
10128  No options  No options
10129  First char at start or follows newline  No first char
10130  Need char = 'o'  Need char = 'o'
10131  Subject length lower bound = 4  Subject length lower bound = 4
10132  No set of starting bytes  No set of starting bytes
# Line 10172  No set of starting bytes Line 10188  No set of starting bytes
10188  Capturing subpattern count = 1  Capturing subpattern count = 1
10189  Named capturing subpatterns:  Named capturing subpatterns:
10190    a   1    a   1
   a   1  
10191  No options  No options
10192  No first char  No first char
10193  No need char  No need char
# Line 10245  No match Line 10260  No match
10260          Ket          Ket
10261          Ket          Ket
10262          Cond          Cond
10263        4 Cond nref          Cond ref <D>2
10264          X          X
10265          Alt          Alt
10266          Y          Y
# Line 10291  No match Line 10306  No match
10306          CBra 4          CBra 4
10307          d          d
10308          Cond          Cond
10309          Cond nrecurse 1          Cond recurse <A>2
10310          $          $
10311          Alt          Alt
10312          Recurse          Recurse
# Line 10353  Partial match: abca Line 10368  Partial match: abca
10368      xxxxabcde\P\P      xxxxabcde\P\P
10369  Partial match: abcde  Partial match: abcde
10370    
10371  /-- This is not in the Perl >= 5.10 test because Perl seems currently to be  /-- This is not in the Perl-compatible test because Perl seems currently to be
10372      broken and not behaving as specified in that it *does* bumpalong after      broken and not behaving as specified in that it *does* bumpalong after
10373      hitting (*COMMIT). --/      hitting (*COMMIT). --/
10374    
# Line 10549  No match Line 10564  No match
10564          End          End
10565  ------------------------------------------------------------------  ------------------------------------------------------------------
10566    
10567  / -- The first four of these are not in the Perl >= 5.10 test because Perl  / -- This one is here because Perl gives the match as "b" rather than "ab". I
      documents that the use of \K in assertions is "not well defined". The  
      last is here because Perl gives the match as "b" rather than "ab". I  
10568       believe this to be a Perl bug. --/       believe this to be a Perl bug. --/
10569    
 /(?=a\Kb)ab/  
     ab  
  0: b  
   
 /(?!a\Kb)ac/  
     ac  
  0: ac  
   
 /^abc(?<=b\Kc)d/  
     abcd  
  0: cd  
   
 /^abc(?<!b\Kq)d/  
     abcd  
  0: abcd  
   
10570  /(?>a\Kb)z|(ab)/  /(?>a\Kb)z|(ab)/
10571      ab      ab
10572   0: ab   0: ab
10573   1: ab   1: ab
10574    
 /----------------------/  
   
10575  /(?P<L1>(?P<L2>0|)|(?P>L2)(?P>L1))/  /(?P<L1>(?P<L2>0|)|(?P>L2)(?P>L1))/
10576  Failed: recursive call could loop indefinitely at offset 31  Failed: recursive call could loop indefinitely at offset 31
10577    
# Line 10596  Failed: an argument is not allowed for ( Line 10591  Failed: an argument is not allowed for (
10591      ACABX      ACABX
10592  No match  No match
10593    
10594  /--- These should be different, but in Perl 5.11 are not, which I think  /--- These should be different, but in Perl they are not, which I think
10595       is a bug in Perl. ---/       is a bug in Perl. ---/
10596    
10597  /A(*THEN)B|A(*THEN)C/K  /A(*THEN)B|A(*THEN)C/K
# Line 10607  No match Line 10602  No match
10602      AC      AC
10603  No match  No match
10604    
 /--- This should fail; the SKIP advances by one, but when we get to AC, the  
      PRUNE kills it. Perl behaves differently. ---/  
   
 /A(*PRUNE:A)A+(*SKIP:A)(B|Z) | AC/xK  
     AAAC  
 No match, mark = A  
   
10605  /--- Mark names can be duplicated. Perl doesn't give a mark for this one,  /--- Mark names can be duplicated. Perl doesn't give a mark for this one,
10606  though PCRE does. ---/  though PCRE does. ---/
10607    
# Line 10647  No match Line 10635  No match
10635      abcccd      abcccd
10636  No match  No match
10637    
10638  /--- Perl 5.11 gets some of these wrong ---/  /--- Perl gets some of these wrong ---/
10639    
10640  /(?>.(*ACCEPT))*?5/  /(?>.(*ACCEPT))*?5/
10641      abcde      abcde
# Line 10755  No match Line 10743  No match
10743  /\s*\R/BZ  /\s*\R/BZ
10744  ------------------------------------------------------------------  ------------------------------------------------------------------
10745          Bra          Bra
10746          \s*+          \s*
10747          \R          \R
10748          Ket          Ket
10749          End          End
10750  ------------------------------------------------------------------  ------------------------------------------------------------------
10751        \x20\x0a
10752     0:  \x0a
10753        \x20\x0d
10754     0:  \x0d
10755        \x20\x0d\x0a
10756     0:  \x0d\x0a
10757    
10758  /-- Perl treats this one differently, not failing the second string. I believe  /\S*\R/BZ
10759      that is a bug in Perl. --/  ------------------------------------------------------------------
10760            Bra
10761            \S*+
10762            \R
10763            Ket
10764            End
10765    ------------------------------------------------------------------
10766        a\x0a
10767     0: a\x0a
10768    
10769  /^((abc|abcx)(*THEN)y|abcd)/  /X\h*\R/BZ
10770      abcd  ------------------------------------------------------------------
10771   0: abcd          Bra
10772   1: abcd          X
10773      *** Failers          \h*+
10774  No match          \R
10775      abcxy          Ket
10776            End
10777    ------------------------------------------------------------------
10778        X\x20\x0a
10779     0: X \x0a
10780    
10781    /X\H*\R/BZ
10782    ------------------------------------------------------------------
10783            Bra
10784            X
10785            \H*
10786            \R
10787            Ket
10788            End
10789    ------------------------------------------------------------------
10790        X\x0d\x0a
10791     0: X\x0d\x0a
10792    
10793    /X\H+\R/BZ
10794    ------------------------------------------------------------------
10795            Bra
10796            X
10797            \H+
10798            \R
10799            Ket
10800            End
10801    ------------------------------------------------------------------
10802        X\x0d\x0a
10803     0: X\x0d\x0a
10804    
10805    /X\H++\R/BZ
10806    ------------------------------------------------------------------
10807            Bra
10808            X
10809            \H++
10810            \R
10811            Ket
10812            End
10813    ------------------------------------------------------------------
10814        X\x0d\x0a
10815  No match  No match
10816    
10817  /(?<=abc)def/  /(?<=abc)def/
10818      abc\P\P      abc\P\P
10819  Partial match: abc  Partial match at offset 3: abc
10820    
10821  /abc$/  /abc$/
10822      abc      abc
# Line 11022  No need char Line 11063  No need char
11063    
11064  /(^ab|^)+/I  /(^ab|^)+/I
11065  Capturing subpattern count = 1  Capturing subpattern count = 1
11066    May match empty string
11067  Options: anchored  Options: anchored
11068  No first char  No first char
11069  No need char  No need char
11070    
11071  /(^ab|^)++/I  /(^ab|^)++/I
11072  Capturing subpattern count = 1  Capturing subpattern count = 1
11073    May match empty string
11074  Options: anchored  Options: anchored
11075  No first char  No first char
11076  No need char  No need char
# Line 11046  No need char Line 11089  No need char
11089    
11090  /(?:^ab|^)+/I  /(?:^ab|^)+/I
11091  Capturing subpattern count = 0  Capturing subpattern count = 0
11092    May match empty string
11093  Options: anchored  Options: anchored
11094  No first char  No first char
11095  No need char  No need char
11096    
11097  /(?:^ab|^)++/I  /(?:^ab|^)++/I
11098  Capturing subpattern count = 0  Capturing subpattern count = 0
11099    May match empty string
11100  Options: anchored  Options: anchored
11101  No first char  No first char
11102  No need char  No need char
# Line 11070  Need char = 'b' Line 11115  Need char = 'b'
11115    
11116  /(.*ab|.*)+/I  /(.*ab|.*)+/I
11117  Capturing subpattern count = 1  Capturing subpattern count = 1
11118    May match empty string
11119  No options  No options
11120  First char at start or follows newline  First char at start or follows newline
11121  No need char  No need char
11122    
11123  /(.*ab|.*)++/I  /(.*ab|.*)++/I
11124  Capturing subpattern count = 1  Capturing subpattern count = 1
11125    May match empty string
11126  No options  No options
11127  First char at start or follows newline  First char at start or follows newline
11128  No need char  No need char
# Line 11094  Need char = 'b' Line 11141  Need char = 'b'
11141    
11142  /(?:.*ab|.*)+/I  /(?:.*ab|.*)+/I
11143  Capturing subpattern count = 0  Capturing subpattern count = 0
11144    May match empty string
11145  No options  No options
11146  First char at start or follows newline  First char at start or follows newline
11147  No need char  No need char
11148    
11149  /(?:.*ab|.*)++/I  /(?:.*ab|.*)++/I
11150  Capturing subpattern count = 0  Capturing subpattern count = 0
11151    May match empty string
11152  No options  No options
11153  First char at start or follows newline  First char at start or follows newline
11154  No need char  No need char
# Line 11254  No match Line 11303  No match
11303    
11304  /(a)b|ac/++SS  /(a)b|ac/++SS
11305      ac\O3      ac\O3
 Matched, but too many substrings  
11306   0: ac   0: ac
11307   0+   0+
11308    
# Line 11506  Matched, but too many substrings Line 11554  Matched, but too many substrings
11554          Assert not          Assert not
11555          a          a
11556          Ket          Ket
11557          \w+          \w++
11558          Ket          Ket
11559          End          End
11560  ------------------------------------------------------------------  ------------------------------------------------------------------
# Line 11614  No match Line 11662  No match
11662    
11663  /\btype\b\W*?\btext\b\W*?\bjavascript\b/IS  /\btype\b\W*?\btext\b\W*?\bjavascript\b/IS
11664  Capturing subpattern count = 0  Capturing subpattern count = 0
11665    Max lookbehind = 1
11666  No options  No options
11667  First char = 't'  First char = 't'
11668  Need char = 't'  Need char = 't'
 Max lookbehind = 1  
11669  Subject length lower bound = 18  Subject length lower bound = 18
11670  No set of starting bytes  No set of starting bytes
11671    
11672  /\btype\b\W*?\btext\b\W*?\bjavascript\b|\burl\b\W*?\bshell:|<input\b.*?\btype\b\W*?\bimage\b|\bonkeyup\b\W*?\=/IS  /\btype\b\W*?\btext\b\W*?\bjavascript\b|\burl\b\W*?\bshell:|<input\b.*?\btype\b\W*?\bimage\b|\bonkeyup\b\W*?\=/IS
11673  Capturing subpattern count = 0  Capturing subpattern count = 0
11674    Max lookbehind = 1
11675  No options  No options
11676  No first char  No first char
11677  No need char  No need char
 Max lookbehind = 1  
11678  Subject length lower bound = 8  Subject length lower bound = 8
11679  Starting byte set: < o t u  Starting byte set: < o t u
11680    
11681  /a(*SKIP)c|b(*ACCEPT)|/+SI  /a(*SKIP)c|b(*ACCEPT)|/+S!I
11682  Capturing subpattern count = 0  Capturing subpattern count = 0
11683    May match empty string
11684  No options  No options
11685  No first char  No first char
11686  No need char  No need char
11687  Study returned NULL  Subject length lower bound = -1
11688    No set of starting bytes
11689      a      a
11690   0:   0:
11691   0+   0+
# Line 11696  Minimum match() limit = 86 Line 11746  Minimum match() limit = 86
11746  Minimum match() recursion limit = 45  Minimum match() recursion limit = 45
11747   0: abbbbbbbbbbbbbbbbbbbbba   0: abbbbbbbbbbbbbbbbbbbbba
11748    
 /-- These tests are in agreement with development Perl 5.015, which has fixed  
     some things, but they don't all work with 5.012, so they aren't in the  
     Perl-compatible tests. Those after the first come from Perl's own test  
     files. --/  
   
 /^((yes|no)(*THEN)(*F))?/  
   yes  
 No match  
   
 /(A (.*)   C? (*THEN)  | A D) (*FAIL)/x  
 AbcdCBefgBhiBqz  
 No match  
   
 /(A (.*)   C? (*THEN)  | A D) z/x  
 AbcdCBefgBhiBqz  
 No match  
   
 /(A (.*)   C? (*THEN)  | A D) \s* (*FAIL)/x  
 AbcdCBefgBhiBqz  
 No match  
   
 /(A (.*)   C? (*THEN)  | A D) \s* z/x  
 AbcdCBefgBhiBqz  
 No match  
   
 /(A (.*)   (?:C|) (*THEN)  | A D) (*FAIL)/x  
 AbcdCBefgBhiBqz  
 No match  
   
 /(A (.*)   (?:C|) (*THEN)  | A D) z/x  
 AbcdCBefgBhiBqz  
 No match  
   
 /(A (.*)   C{0,6} (*THEN)  | A D) (*FAIL)/x  
 AbcdCBefgBhiBqz  
 No match  
   
 /(A (.*)   C{0,6} (*THEN)  | A D) z/x  
 AbcdCBefgBhiBqz  
 No match  
   
 /(A (.*)   (CE){0,6} (*THEN)  | A D) (*FAIL)/x  
 AbcdCEBefgBhiBqz  
 No match  
   
 /(A (.*)   (CE){0,6} (*THEN)  | A D) z/x  
 AbcdCEBefgBhiBqz  
 No match  
   
 /(A (.*)   (CE*){0,6} (*THEN)  | A D) (*FAIL)/x  
 AbcdCBefgBhiBqz  
 No match  
   
 /(A (.*)   (CE*){0,6} (*THEN)  | A D) z/x  
 AbcdCBefgBhiBqz  
 No match  
   
 /-----------------------------------------------/  
   
11749  /^(?>a+)(?>(z+))\w/BZ  /^(?>a+)(?>(z+))\w/BZ
11750  ------------------------------------------------------------------  ------------------------------------------------------------------
11751          Bra          Bra
11752          ^          ^
11753          Once_NC          Once_NC
11754          a+          a++
11755          Ket          Ket
11756          Once          Once
11757          CBra 1          CBra 1
11758          z+          z++
11759          Ket          Ket
11760          Ket          Ket
11761          \w          \w
# Line 11823  No match Line 11814  No match
11814    
11815  /^(?>a+)(?>b+)(?>c+)(?>d+)(?>e+)/  /^(?>a+)(?>b+)(?>c+)(?>d+)(?>e+)/
11816       \Maabbccddee       \Maabbccddee
11817  Minimum match() limit = 12  Minimum match() limit = 7
11818  Minimum match() recursion limit = 3  Minimum match() recursion limit = 2
11819   0: aabbccddee   0: aabbccddee
11820    
11821  /^(?>(a+))(?>(b+))(?>(c+))(?>(d+))(?>(e+))/  /^(?>(a+))(?>(b+))(?>(c+))(?>(d+))(?>(e+))/
11822       \Maabbccddee       \Maabbccddee
11823  Minimum match() limit = 22  Minimum match() limit = 17
11824  Minimum match() recursion limit = 21  Minimum match() recursion limit = 16
11825   0: aabbccddee   0: aabbccddee
11826   1: aa   1: aa
11827   2: bb   2: bb
# Line 11840  Minimum match() recursion limit = 21 Line 11831  Minimum match() recursion limit = 21
11831    
11832  /^(?>(a+))(?>b+)(?>(c+))(?>d+)(?>(e+))/  /^(?>(a+))(?>b+)(?>(c+))(?>d+)(?>(e+))/
11833       \Maabbccddee       \Maabbccddee
11834  Minimum match() limit = 18  Minimum match() limit = 13
11835  Minimum match() recursion limit = 13  Minimum match() recursion limit = 10
11836   0: aabbccddee   0: aabbccddee
11837   1: aa   1: aa
11838   2: cc   2: cc
# Line 12271  Partial match: \x0d\x0d Line 12262  Partial match: \x0d\x0d
12262      \r\r\r\P\P      \r\r\r\P\P
12263   0: \x0d\x0d   0: \x0d\x0d
12264    
12265  /-- This one is here because Perl does not match: it seems to allow the COMMIT  "AB(C(D))(E(F))?(?(?=\2)(?=\4))"
12266  to escape from the assertion. --/      ABCDGHI\O03
12267    Matched, but too many substrings
12268     0: ABCD
12269    
12270    /-- These are all run as real matches in test 1; here we are just checking the
12271    settings of the anchored and startline bits. --/
12272    
12273  /(?=a(*COMMIT)b|ac)ac|ac/  /(?>.*?a)(?<=ba)/I
12274      ac  Capturing subpattern count = 0
12275   0: ac  Max lookbehind = 2
12276    No options
12277    No first char
12278    Need char = 'a'
12279    
12280    /(?:.*?a)(?<=ba)/I
12281    Capturing subpattern count = 0
12282    Max lookbehind = 2
12283    No options
12284    First char at start or follows newline
12285    Need char = 'a'
12286    
12287    /.*?a(*PRUNE)b/I
12288    Capturing subpattern count = 0
12289    No options
12290    No first char
12291    Need char = 'b'
12292    
12293    /.*?a(*PRUNE)b/sI
12294    Capturing subpattern count = 0
12295    Options: dotall
12296    No first char
12297    Need char = 'b'
12298    
12299    /^a(*PRUNE)b/sI
12300    Capturing subpattern count = 0
12301    Options: anchored dotall
12302    No first char
12303    No need char
12304    
12305    /.*?a(*SKIP)b/I
12306    Capturing subpattern count = 0
12307    No options
12308    No first char
12309    Need char = 'b'
12310    
12311    /(?>.*?a)b/sI
12312    Capturing subpattern count = 0
12313    Options: dotall
12314    No first char
12315    Need char = 'b'
12316    
12317    /(?>.*?a)b/I
12318    Capturing subpattern count = 0
12319    No options
12320    No first char
12321    Need char = 'b'
12322    
12323    /(?>^a)b/sI
12324    Capturing subpattern count = 0
12325    Options: anchored dotall
12326    No first char
12327    No need char
12328    
12329    /(?>.*?)(?<=(abcd)|(wxyz))/I
12330    Capturing subpattern count = 2
12331    Max lookbehind = 4
12332    May match empty string
12333    No options
12334    No first char
12335    No need char
12336    
12337    /(?>.*)(?<=(abcd)|(wxyz))/I
12338    Capturing subpattern count = 2
12339    Max lookbehind = 4
12340    May match empty string
12341    No options
12342    No first char
12343    No need char
12344    
12345    "(?>.*)foo"I
12346    Capturing subpattern count = 0
12347    No options
12348    No first char
12349    Need char = 'o'
12350    
12351    "(?>.*?)foo"I
12352    Capturing subpattern count = 0
12353    No options
12354    No first char
12355    Need char = 'o'
12356    
12357    /(?>^abc)/mI
12358    Capturing subpattern count = 0
12359    Options: multiline
12360    First char at start or follows newline
12361    Need char = 'c'
12362    
12363    /(?>.*abc)/mI
12364    Capturing subpattern count = 0
12365    Options: multiline
12366    No first char
12367    Need char = 'c'
12368    
12369    /(?:.*abc)/mI
12370    Capturing subpattern count = 0
12371    Options: multiline
12372    First char at start or follows newline
12373    Need char = 'c'
12374    
12375    /-- Check PCRE_STUDY_EXTRA_NEEDED --/
12376    
12377    /.?/S-I
12378    Capturing subpattern count = 0
12379    May match empty string
12380    No options
12381    No first char
12382    No need char
12383    Study returned NULL
12384    
12385    /.?/S!I
12386    Capturing subpattern count = 0
12387    May match empty string
12388    No options
12389    No first char
12390    No need char
12391    Subject length lower bound = -1
12392    No set of starting bytes
12393    
12394    /(?:(a)+(?C1)bb|aa(?C2)b)/
12395        aab\C+
12396    Callout 1: last capture = 1
12397     0: <unset>
12398     1: a
12399    --->aab
12400        ^ ^     b
12401    Callout 1: last capture = 1
12402     0: <unset>
12403     1: a
12404    --->aab
12405        ^^      b
12406    Callout 2: last capture = -1
12407     0: <unset>
12408    --->aab
12409        ^ ^     b
12410     0: aab
12411    
12412    /(?:(a)++(?C1)bb|aa(?C2)b)/
12413        aab\C+
12414    Callout 1: last capture = 1
12415     0: <unset>
12416     1: a
12417    --->aab
12418        ^ ^     b
12419    Callout 2: last capture = -1
12420     0: <unset>
12421    --->aab
12422        ^ ^     b
12423     0: aab
12424    
12425    /(?:(?>(a))(?C1)bb|aa(?C2)b)/
12426        aab\C+
12427    Callout 1: last capture = 1
12428     0: <unset>
12429     1: a
12430    --->aab
12431        ^^      b
12432    Callout 2: last capture = -1
12433     0: <unset>
12434    --->aab
12435        ^ ^     b
12436     0: aab
12437    
12438    /(?:(?1)(?C1)x|ab(?C2))((a)){0}/
12439        aab\C+
12440    Callout 1: last capture = -1
12441     0: <unset>
12442    --->aab
12443        ^^      x
12444    Callout 1: last capture = -1
12445     0: <unset>
12446    --->aab
12447         ^^     x
12448    Callout 2: last capture = -1
12449     0: <unset>
12450    --->aab
12451         ^ ^    )
12452     0: ab
12453    
12454    /(?1)(?C1)((a)(?C2)){0}/
12455        aab\C+
12456    Callout 2: last capture = 2
12457     0: <unset>
12458     1: <unset>
12459     2: a
12460    --->aab
12461        ^^      )
12462    Callout 1: last capture = -1
12463     0: <unset>
12464    --->aab
12465        ^^      ((a)(?C2)){0}
12466     0: a
12467    
12468    /(?:(a)+(?C1)bb|aa(?C2)b)++/
12469        aab\C+
12470    Callout 1: last capture = 1
12471     0: <unset>
12472     1: a
12473    --->aab
12474        ^ ^     b
12475    Callout 1: last capture = 1
12476     0: <unset>
12477     1: a
12478    --->aab
12479        ^^      b
12480    Callout 2: last capture = -1
12481     0: <unset>
12482    --->aab
12483        ^ ^     b
12484     0: aab
12485        aab\C+\O2
12486    Callout 1: last capture = 1
12487     0: <unset>
12488    --->aab
12489        ^ ^     b
12490    Callout 1: last capture = 1
12491     0: <unset>
12492    --->aab
12493        ^^      b
12494    Callout 2: last capture = -1
12495     0: <unset>
12496    --->aab
12497        ^ ^     b
12498     0: aab
12499    
12500    /(ab)x|ab/
12501        ab\O3
12502     0: ab
12503        ab\O2
12504     0: ab
12505    
12506    /(ab)/
12507        ab\O3
12508    Matched, but too many substrings
12509     0: ab
12510        ab\O2
12511    Matched, but too many substrings
12512     0: ab
12513    
12514    /(?<=123)(*MARK:xx)abc/K
12515        xxxx123a\P\P
12516    Partial match at offset 7, mark=xx: 123a
12517        xxxx123a\P
12518    Partial match at offset 7, mark=xx: 123a
12519    
12520    /123\Kabc/
12521        xxxx123a\P\P
12522    Partial match: 123a
12523        xxxx123a\P
12524    Partial match: 123a
12525    
12526    /^(?(?=a)aa|bb)/C
12527        bb
12528    --->bb
12529     +0 ^      ^
12530     +1 ^      (?(?=a)aa|bb)
12531     +3 ^      (?=a)
12532     +6 ^      a
12533    +11 ^      b
12534    +12 ^^     b
12535    +13 ^ ^    )
12536    +14 ^ ^
12537     0: bb
12538    
12539    /(?C1)^(?C2)(?(?C99)(?=(?C3)a(?C4))(?C5)a(?C6)a(?C7)|(?C8)b(?C9)b(?C10))(?C11)/
12540        bb
12541    --->bb
12542      1 ^      ^
12543      2 ^      (?(?C99)(?=(?C3)a(?C4))(?C5)a(?C6)a(?C7)|(?C8)b(?C9)b(?C10))
12544     99 ^      (?=(?C3)a(?C4))
12545      3 ^      a
12546      8 ^      b
12547      9 ^^     b
12548     10 ^ ^    )
12549     11 ^ ^
12550     0: bb
12551    
12552    /-- Perl seems to have a bug with this one --/
12553    
12554    /aaaaa(*COMMIT)(*PRUNE)b|a+c/
12555        aaaaaac
12556     0: aaaac
12557    
12558    /-- Here are some that Perl treats differently because of the way it handles
12559    backtracking verbs. --/
12560    
12561     /(?!a(*COMMIT)b)ac|ad/
12562         ac
12563     0: ac
12564         ad
12565     0: ad
12566    
12567    /^(?!a(*THEN)b|ac)../
12568         ac
12569    No match
12570         ad
12571     0: ad
12572    
12573    /^(?=a(*THEN)b|ac)/
12574        ac
12575     0:
12576    
12577    /\A.*?(?:a|b(*THEN)c)/
12578        ba
12579     0: ba
12580    
12581    /\A.*?(?:a|b(*THEN)c)++/
12582        ba
12583     0: ba
12584    
12585    /\A.*?(?:a|b(*THEN)c|d)/
12586        ba
12587     0: ba
12588    
12589    /(?:(a(*MARK:X)a+(*SKIP:X)b)){0}(?:(?1)|aac)/
12590        aac
12591     0: aac
12592    
12593    /\A.*?(a|b(*THEN)c)/
12594        ba
12595     0: ba
12596     1: a
12597    
12598    /^(A(*THEN)B|A(*THEN)D)/
12599        AD
12600     0: AD
12601     1: AD
12602    
12603    /(?!b(*THEN)a)bn|bnn/
12604        bnn
12605     0: bn
12606    
12607    /(?(?=b(*SKIP)a)bn|bnn)/
12608        bnn
12609    No match
12610    
12611    /(?=b(*THEN)a|)bn|bnn/
12612        bnn
12613     0: bn
12614    
12615    /-------------------------/
12616    
12617    /(*LIMIT_MATCH=12bc)abc/
12618    Failed: (*VERB) not recognized or malformed at offset 7
12619    
12620    /(*LIMIT_MATCH=4294967290)abc/
12621    Failed: (*VERB) not recognized or malformed at offset 7
12622    
12623    /(*LIMIT_RECURSION=4294967280)abc/I
12624    Capturing subpattern count = 0
12625    Recursion limit = 4294967280
12626    No options
12627    First char = 'a'
12628    Need char = 'c'
12629    
12630    /(a+)*zz/
12631        aaaaaaaaaaaaaz
12632    No match
12633        aaaaaaaaaaaaaz\q3000
12634    Error -8 (match limit exceeded)
12635    
12636    /(a+)*zz/S-
12637        aaaaaaaaaaaaaz\Q10
12638    Error -21 (recursion limit exceeded)
12639    
12640    /(*LIMIT_MATCH=3000)(a+)*zz/I
12641    Capturing subpattern count = 1
12642    Match limit = 3000
12643    No options
12644    No first char
12645    Need char = 'z'
12646        aaaaaaaaaaaaaz
12647    Error -8 (match limit exceeded)
12648        aaaaaaaaaaaaaz\q60000
12649    Error -8 (match limit exceeded)
12650    
12651    /(*LIMIT_MATCH=60000)(*LIMIT_MATCH=3000)(a+)*zz/I
12652    Capturing subpattern count = 1
12653    Match limit = 3000
12654    No options
12655    No first char
12656    Need char = 'z'
12657        aaaaaaaaaaaaaz
12658    Error -8 (match limit exceeded)
12659    
12660    /(*LIMIT_MATCH=60000)(a+)*zz/I
12661    Capturing subpattern count = 1
12662    Match limit = 60000
12663    No options
12664    No first char
12665    Need char = 'z'
12666        aaaaaaaaaaaaaz
12667    No match
12668        aaaaaaaaaaaaaz\q3000
12669    Error -8 (match limit exceeded)
12670    
12671    /(*LIMIT_RECURSION=10)(a+)*zz/IS-
12672    Capturing subpattern count = 1
12673    Recursion limit = 10
12674    No options
12675    No first char
12676    Need char = 'z'
12677    Subject length lower bound = 2
12678    Starting byte set: a z
12679        aaaaaaaaaaaaaz
12680    Error -21 (recursion limit exceeded)
12681        aaaaaaaaaaaaaz\Q1000
12682    Error -21 (recursion limit exceeded)
12683    
12684    /(*LIMIT_RECURSION=10)(*LIMIT_RECURSION=1000)(a+)*zz/IS-
12685    Capturing subpattern count = 1
12686    Recursion limit = 10
12687    No options
12688    No first char
12689    Need char = 'z'
12690    Subject length lower bound = 2
12691    Starting byte set: a z
12692        aaaaaaaaaaaaaz
12693    Error -21 (recursion limit exceeded)
12694    
12695    /(*LIMIT_RECURSION=1000)(a+)*zz/IS-
12696    Capturing subpattern count = 1
12697    Recursion limit = 1000
12698    No options
12699    No first char
12700    Need char = 'z'
12701    Subject length lower bound = 2
12702    Starting byte set: a z
12703        aaaaaaaaaaaaaz
12704    No match
12705        aaaaaaaaaaaaaz\Q10
12706    Error -21 (recursion limit exceeded)
12707    
12708    /-- This test causes a segfault with Perl 5.18.0 --/
12709    
12710    /^(?=(a)){0}b(?1)/
12711        backgammon
12712     0: ba
12713    
12714    /(?|(?<n>f)|(?<n>b))/JI
12715    Capturing subpattern count = 1
12716    Named capturing subpatterns:
12717      n   1
12718    Options: dupnames
12719    No first char
12720    No need char
12721    
12722    /(?<a>abc)(?<a>z)\k<a>()/JDZS
12723    ------------------------------------------------------------------
12724            Bra
12725            CBra 1
12726            abc
12727            Ket
12728            CBra 2
12729            z
12730            Ket
12731            \k<a>2
12732            CBra 3
12733            Ket
12734            Ket
12735            End
12736    ------------------------------------------------------------------
12737    Capturing subpattern count = 3
12738    Max back reference = 2
12739    Named capturing subpatterns:
12740      a   1
12741      a   2
12742    Options: dupnames
12743    First char = 'a'
12744    Need char = 'z'
12745    Subject length lower bound = 5
12746    No set of starting bytes
12747    
12748    /a*[bcd]/BZ
12749    ------------------------------------------------------------------
12750            Bra
12751            a*+
12752            [b-d]
12753            Ket
12754            End
12755    ------------------------------------------------------------------
12756    
12757    /[bcd]*a/BZ
12758    ------------------------------------------------------------------
12759            Bra
12760            [b-d]*
12761            a
12762            Ket
12763            End
12764    ------------------------------------------------------------------
12765    
12766    /-- A complete set of tests for auto-possessification of character types --/
12767    
12768    /\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+\X \D+\Z \D+\z \D+$/BZx
12769    ------------------------------------------------------------------
12770            Bra
12771            \D+
12772            \D
12773            \D++
12774            \d
12775            \D+
12776            \S
12777            \D+
12778            \s
12779            \D+
12780            \W
12781            \D+
12782            \w
12783            \D+
12784            Any
12785            \D+
12786            AllAny
12787            \D+
12788            \R
12789            \D+
12790            \H
12791            \D+
12792            \h
12793            \D+
12794            \V
12795            \D+
12796            \v
12797            \D+
12798            extuni
12799            \D+
12800            \Z
12801            \D++
12802            \z
12803            \D+
12804            $
12805            Ket
12806            End
12807    ------------------------------------------------------------------
12808    
12809    /\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+\X \d+\Z \d+\z \d+$/BZx
12810    ------------------------------------------------------------------
12811            Bra
12812            \d++
12813            \D
12814            \d+
12815            \d
12816            \d+
12817            \S
12818            \d++
12819            \s
12820            \d++
12821            \W
12822            \d+
12823            \w
12824            \d+
12825            Any
12826            \d+
12827            AllAny
12828            \d++
12829            \R
12830            \d+
12831            \H
12832            \d++
12833            \h
12834            \d+
12835            \V
12836            \d++
12837            \v
12838            \d+
12839            extuni
12840            \d++
12841            \Z
12842            \d++
12843            \z
12844            \d++
12845            $
12846            Ket
12847            End
12848    ------------------------------------------------------------------
12849    
12850    /\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+\X \S+\Z \S+\z \S+$/BZx
12851    ------------------------------------------------------------------
12852            Bra
12853            \S+
12854            \D
12855            \S+
12856            \d
12857            \S+
12858            \S
12859            \S++
12860            \s
12861            \S+
12862            \W
12863            \S+
12864            \w
12865            \S+
12866            Any
12867            \S+
12868            AllAny
12869            \S++
12870            \R
12871            \S+
12872            \H
12873            \S++
12874            \h
12875            \S+
12876            \V
12877            \S++
12878            \v
12879            \S+
12880            extuni
12881            \S++
12882            \Z
12883            \S++
12884            \z
12885            \S++
12886            $
12887            Ket
12888            End
12889    ------------------------------------------------------------------
12890    
12891    /\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+\X \s+\Z \s+\z \s+$/BZx
12892    ------------------------------------------------------------------
12893            Bra
12894            \s+
12895            \D
12896            \s++
12897            \d
12898            \s++
12899            \S
12900            \s+
12901            \s
12902            \s+
12903            \W
12904            \s++
12905            \w
12906            \s+
12907            Any
12908            \s+
12909            AllAny
12910            \s+
12911            \R
12912            \s+
12913            \H
12914            \s+
12915            \h
12916            \s+
12917            \V
12918            \s+
12919            \v
12920            \s+
12921            extuni
12922            \s+
12923            \Z
12924            \s++
12925            \z
12926            \s+
12927            $
12928            Ket
12929            End
12930    ------------------------------------------------------------------
12931    
12932    /\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+\X \W+\Z \W+\z \W+$/BZx
12933    ------------------------------------------------------------------
12934            Bra
12935            \W+
12936            \D
12937            \W++
12938            \d
12939            \W+
12940            \S
12941            \W+
12942            \s
12943            \W+
12944            \W
12945            \W++
12946            \w
12947            \W+
12948            Any
12949            \W+
12950            AllAny
12951            \W+
12952            \R
12953            \W+
12954            \H
12955            \W+
12956            \h
12957            \W+
12958            \V
12959            \W+
12960            \v
12961            \W+
12962            extuni
12963            \W+
12964            \Z
12965            \W++
12966            \z
12967            \W+
12968            $
12969            Ket
12970            End
12971    ------------------------------------------------------------------
12972    
12973    /\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+\X \w+\Z \w+\z \w+$/BZx
12974    ------------------------------------------------------------------
12975            Bra
12976            \w+
12977            \D
12978            \w+
12979            \d
12980            \w+
12981            \S
12982            \w++
12983            \s
12984            \w++
12985            \W
12986            \w+
12987            \w
12988            \w+
12989            Any
12990            \w+
12991            AllAny
12992            \w++
12993            \R
12994            \w+
12995            \H
12996            \w++
12997            \h
12998            \w+
12999            \V
13000            \w++
13001            \v
13002            \w+
13003            extuni
13004            \w++
13005            \Z
13006            \w++
13007            \z
13008            \w++
13009            $
13010            Ket
13011            End
13012    ------------------------------------------------------------------
13013    
13014    /\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+\X \C+\Z \C+\z \C+$/BZx
13015    ------------------------------------------------------------------
13016            Bra
13017            AllAny+
13018            \D
13019            AllAny+
13020            \d
13021            AllAny+
13022            \S
13023            AllAny+
13024            \s
13025            AllAny+
13026            \W
13027            AllAny+
13028            \w
13029            AllAny+
13030            Any
13031            AllAny+
13032            AllAny
13033            AllAny+
13034            \R
13035            AllAny+
13036            \H
13037            AllAny+
13038            \h
13039            AllAny+
13040            \V
13041            AllAny+
13042            \v
13043            AllAny+
13044            extuni
13045            AllAny+
13046            \Z
13047            AllAny++
13048            \z
13049            AllAny+
13050            $
13051            Ket
13052            End
13053    ------------------------------------------------------------------
13054    
13055    /\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+\X \R+\Z \R+\z \R+$/BZx
13056    ------------------------------------------------------------------
13057            Bra
13058            \R+
13059            \D
13060            \R++
13061            \d
13062            \R+
13063            \S
13064            \R++
13065            \s
13066            \R+
13067            \W
13068            \R++
13069            \w
13070            \R++
13071            Any
13072            \R+
13073            AllAny
13074            \R+
13075            \R
13076            \R+
13077            \H
13078            \R++
13079            \h
13080            \R+
13081            \V
13082            \R+
13083            \v
13084            \R+
13085            extuni
13086            \R+
13087            \Z
13088            \R++
13089            \z
13090            \R+
13091            $
13092            Ket
13093            End
13094    ------------------------------------------------------------------
13095    
13096    /\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+\X \H+\Z \H+\z \H+$/BZx
13097    ------------------------------------------------------------------
13098            Bra
13099            \H+
13100            \D
13101            \H+
13102            \d
13103            \H+
13104            \S
13105            \H+
13106            \s
13107            \H+
13108            \W
13109            \H+
13110            \w
13111            \H+
13112            Any
13113            \H+
13114            AllAny
13115            \H+
13116            \R
13117            \H+
13118            \H
13119            \H++
13120            \h
13121            \H+
13122            \V
13123            \H+
13124            \v
13125            \H+
13126            extuni
13127            \H+
13128            \Z
13129            \H++
13130            \z
13131            \H+
13132            $
13133            Ket
13134            End
13135    ------------------------------------------------------------------
13136    
13137    /\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+\X \h+\Z \h+\z \h+$/BZx
13138    ------------------------------------------------------------------
13139            Bra
13140            \h+
13141            \D
13142            \h++
13143            \d
13144            \h++
13145            \S
13146            \h+
13147            \s
13148            \h+
13149            \W
13150            \h++
13151            \w
13152            \h+
13153            Any
13154            \h+
13155            AllAny
13156            \h++
13157            \R
13158            \h++
13159            \H
13160            \h+
13161            \h
13162            \h+
13163            \V
13164            \h++
13165            \v
13166            \h+
13167            extuni
13168            \h+
13169            \Z
13170            \h++
13171            \z
13172            \h+
13173            $
13174            Ket
13175            End
13176    ------------------------------------------------------------------
13177    
13178    /\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+\X \V+\Z \V+\z \V+$/BZx
13179    ------------------------------------------------------------------
13180            Bra
13181            \V+
13182            \D
13183            \V+
13184            \d
13185            \V+
13186            \S
13187            \V+
13188            \s
13189            \V+
13190            \W
13191            \V+
13192            \w
13193            \V+
13194            Any
13195            \V+
13196            AllAny
13197            \V++
13198            \R
13199            \V+
13200            \H
13201            \V+
13202            \h
13203            \V+
13204            \V
13205            \V++
13206            \v
13207            \V+
13208            extuni
13209            \V+
13210            \Z
13211            \V++
13212            \z
13213            \V+
13214            $
13215            Ket
13216            End
13217    ------------------------------------------------------------------
13218    
13219    /\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+\X \v+\Z \v+\z \v+$/BZx
13220    ------------------------------------------------------------------
13221            Bra
13222            \v+
13223            \D
13224            \v++
13225            \d
13226            \v++
13227            \S
13228            \v+
13229            \s
13230            \v+
13231            \W
13232            \v++
13233            \w
13234            \v+
13235            Any
13236            \v+
13237            AllAny
13238            \v+
13239            \R
13240            \v+
13241            \H
13242            \v++
13243            \h
13244            \v++
13245            \V
13246            \v+
13247            \v
13248            \v+
13249            extuni
13250            \v+
13251            \Z
13252            \v++
13253            \z
13254            \v+
13255            $
13256            Ket
13257            End
13258    ------------------------------------------------------------------
13259    
13260    /\X+\D \X+\d \X+\S \X+\s \X+\W \X+\w \X+. \X+\C \X+\R \X+\H \X+\h \X+\V \X+\v \X+\X \X+\Z \X+\z \X+$/BZx
13261    ------------------------------------------------------------------
13262            Bra
13263            extuni+
13264            \D
13265            extuni+
13266            \d
13267            extuni+
13268            \S
13269            extuni+
13270            \s
13271            extuni+
13272            \W
13273            extuni+
13274            \w
13275            extuni+
13276            Any
13277            extuni+
13278            AllAny
13279            extuni+
13280            \R
13281            extuni+
13282            \H
13283            extuni+
13284            \h
13285            extuni+
13286            \V
13287            extuni+
13288            \v
13289            extuni+
13290            extuni
13291            extuni+
13292            \Z
13293            extuni++
13294            \z
13295            extuni+
13296            $
13297            Ket
13298            End
13299    ------------------------------------------------------------------
13300    
13301    / 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+\X  a+\Z  a+\z  a+$/BZx
13302    ------------------------------------------------------------------
13303            Bra
13304            a+
13305            \D
13306            a++
13307            \d
13308            a+
13309            \S
13310            a++
13311            \s
13312            a++
13313            \W
13314            a+
13315            \w
13316            a+
13317            Any
13318            a+
13319            AllAny
13320            a++
13321            \R
13322            a+
13323            \H
13324            a++
13325            \h
13326            a+
13327            \V
13328            a++
13329            \v
13330            a+
13331            extuni
13332            a++
13333            \Z
13334            a++
13335            \z
13336            a++
13337            $
13338            Ket
13339            End
13340    ------------------------------------------------------------------
13341    
13342    /\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+\X \n+\Z \n+\z \n+$/BZx
13343    ------------------------------------------------------------------
13344            Bra
13345            \x0a+
13346            \D
13347            \x0a++
13348            \d
13349            \x0a++
13350            \S
13351            \x0a+
13352            \s
13353            \x0a+
13354            \W
13355            \x0a++
13356            \w
13357            \x0a+
13358            Any
13359            \x0a+
13360            AllAny
13361            \x0a+
13362            \R
13363            \x0a+
13364            \H
13365            \x0a++
13366            \h
13367            \x0a++
13368            \V
13369            \x0a+
13370            \v
13371            \x0a+
13372            extuni
13373            \x0a+
13374            \Z
13375            \x0a++
13376            \z
13377            \x0a+
13378            $
13379            Ket
13380            End
13381    ------------------------------------------------------------------
13382    
13383    / .+\D  .+\d  .+\S  .+\s  .+\W  .+\w  .+.  .+\C  .+\R  .+\H  .+\h  .+\V  .+\v  .+\X  .+\Z  .+\z  .+$/BZx
13384    ------------------------------------------------------------------
13385            Bra
13386            Any+
13387            \D
13388            Any+
13389            \d
13390            Any+
13391            \S
13392            Any+
13393            \s
13394            Any+
13395            \W
13396            Any+
13397            \w
13398            Any+
13399            Any
13400            Any+
13401            AllAny
13402            Any++
13403            \R
13404            Any+
13405            \H
13406            Any+
13407            \h
13408            Any+
13409            \V
13410            Any+
13411            \v
13412            Any+
13413            extuni
13414            Any+
13415            \Z
13416            Any++
13417            \z
13418            Any+
13419            $
13420            Ket
13421            End
13422    ------------------------------------------------------------------
13423    
13424    / .+\D  .+\d  .+\S  .+\s  .+\W  .+\w  .+.  .+\C  .+\R  .+\H  .+\h  .+\V  .+\v  .+\X  .+\Z  .+\z  .+$/BZxs
13425    ------------------------------------------------------------------
13426            Bra
13427            AllAny+
13428            \D
13429            AllAny+
13430            \d
13431            AllAny+
13432            \S
13433            AllAny+
13434            \s
13435            AllAny+
13436            \W
13437            AllAny+
13438            \w
13439            AllAny+
13440            AllAny
13441            AllAny+
13442            AllAny
13443            AllAny+
13444            \R
13445            AllAny+
13446            \H
13447            AllAny+
13448            \h
13449            AllAny+
13450            \V
13451            AllAny+
13452            \v
13453            AllAny+
13454            extuni
13455            AllAny+
13456            \Z
13457            AllAny++
13458            \z
13459            AllAny+
13460            $
13461            Ket
13462            End
13463    ------------------------------------------------------------------
13464    
13465    /\D+$  \d+$  \S+$  \s+$  \W+$  \w+$  \C+$  \R+$  \H+$  \h+$  \V+$  \v+$  \X+$   a+$  \n+$   .+$  .+$/BZxm
13466    ------------------------------------------------------------------
13467            Bra
13468            \D+
13469         /m $
13470            \d++
13471         /m $
13472            \S++
13473         /m $
13474            \s+
13475         /m $
13476            \W+
13477         /m $
13478            \w++
13479         /m $
13480            AllAny+
13481         /m $
13482            \R+
13483         /m $
13484            \H+
13485         /m $
13486            \h+
13487         /m $
13488            \V+
13489         /m $
13490            \v+
13491         /m $
13492            extuni+
13493         /m $
13494            a+
13495         /m $
13496            \x0a+
13497         /m $
13498            Any+
13499         /m $
13500            Any+
13501         /m $
13502            Ket
13503            End
13504    ------------------------------------------------------------------
13505    
13506    /(?=a+)a(a+)++a/BZ
13507    ------------------------------------------------------------------
13508            Bra
13509            Assert
13510            a++
13511            Ket
13512            a
13513            CBraPos 1
13514            a++
13515            KetRpos
13516            a
13517            Ket
13518            End
13519    ------------------------------------------------------------------
13520    
13521    /a+(bb|cc)a+(?:bb|cc)a+(?>bb|cc)a+(?:bb|cc)+a+(aa)a+(?:bb|aa)/BZ
13522    ------------------------------------------------------------------
13523            Bra
13524            a++
13525            CBra 1
13526            bb
13527            Alt
13528            cc
13529            Ket
13530            a++
13531            Bra
13532            bb
13533            Alt
13534            cc
13535            Ket
13536            a++
13537            Once_NC
13538            bb
13539            Alt
13540            cc
13541            Ket
13542            a+
13543            Bra
13544            bb
13545            Alt
13546            cc
13547            KetRmax
13548            a+
13549            CBra 2
13550            aa
13551            Ket
13552            a+
13553            Bra
13554            bb
13555            Alt
13556            aa
13557            Ket
13558            Ket
13559            End
13560    ------------------------------------------------------------------
13561    
13562    /a+(bb|cc)?#a+(?:bb|cc)??#a+(?:bb|cc)?+#a+(?:bb|cc)*#a+(bb|cc)?a#a+(?:aa)?/BZ
13563    ------------------------------------------------------------------
13564            Bra
13565            a++
13566            Brazero
13567            CBra 1
13568            bb
13569            Alt
13570            cc
13571            Ket
13572            #
13573            a++
13574            Braminzero
13575            Bra
13576            bb
13577            Alt
13578            cc
13579            Ket
13580            #
13581            a++
13582            Once
13583            Brazero
13584            Bra
13585            bb
13586            Alt
13587            cc
13588            Ket
13589            Ket
13590            #
13591            a+
13592            Brazero
13593            Bra
13594            bb
13595            Alt
13596            cc
13597            KetRmax
13598            #
13599            a+
13600            Brazero
13601            CBra 2
13602            bb
13603            Alt
13604            cc
13605            Ket
13606            a#
13607            a+
13608            Brazero
13609            Bra
13610            aa
13611            Ket
13612            Ket
13613            End
13614    ------------------------------------------------------------------
13615    
13616    /a+(?:bb)?a#a+(?:|||)#a+(?:|b)a#a+(?:|||)?a/BZ
13617    ------------------------------------------------------------------
13618            Bra
13619            a+
13620            Brazero
13621            Bra
13622            bb
13623            Ket
13624            a#
13625            a++
13626            Bra
13627            Alt
13628            Alt
13629            Alt
13630            Ket
13631            #
13632            a+
13633            Bra
13634            Alt
13635            b
13636            Ket
13637            a#
13638            a+
13639            Brazero
13640            Bra
13641            Alt
13642            Alt
13643            Alt
13644            Ket
13645            a
13646            Ket
13647            End
13648    ------------------------------------------------------------------
13649    
13650    /-- End of special auto-possessive tests --/
13651    
13652    /^A\o{1239}B/
13653    Failed: non-octal character in \o{} (closing brace missing?) at offset 8
13654    
13655    /^A\oB/
13656    Failed: missing opening brace after \o at offset 3
13657    
13658    /^A\x{zz}B/
13659    Failed: non-hex character in \x{} (closing brace missing?) at offset 5
13660    
13661    /^A\x{12Z/
13662    Failed: non-hex character in \x{} (closing brace missing?) at offset 7
13663    
13664    /^A\x{/
13665    Failed: non-hex character in \x{} (closing brace missing?) at offset 5
13666    
13667  /-- End of testinput2 --/  /-- End of testinput2 --/

Legend:
Removed from v.937  
changed lines
  Added in v.1374

  ViewVC Help
Powered by ViewVC 1.1.5