/[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 75 by nigel, Sat Feb 24 21:40:37 2007 UTC revision 91 by nigel, Sat Feb 24 21:41:34 2007 UTC
# Line 1  Line 1 
 PCRE version 5.0 13-Sep-2004  
   
1  /(a)b|/  /(a)b|/
2  Capturing subpattern count = 1  Capturing subpattern count = 1
3  No options  No options
# Line 117  Failed: unrecognized character after (? Line 115  Failed: unrecognized character after (?
115  Capturing subpattern count = 0  Capturing subpattern count = 0
116  Partial matching not supported  Partial matching not supported
117  No options  No options
118  First char at start or follows \n  First char at start or follows newline
119  Need char = 'b'  Need char = 'b'
120    
121  /.*?b/  /.*?b/
122  Capturing subpattern count = 0  Capturing subpattern count = 0
123  Partial matching not supported  Partial matching not supported
124  No options  No options
125  First char at start or follows \n  First char at start or follows newline
126  Need char = 'b'  Need char = 'b'
127    
128  /cat|dog|elephant/  /cat|dog|elephant/
# Line 328  No need char Line 326  No need char
326  Capturing subpattern count = 3  Capturing subpattern count = 3
327  Partial matching not supported  Partial matching not supported
328  No options  No options
329  First char at start or follows \n  First char at start or follows newline
330  No need char  No need char
331      defabc      defabc
332   0: defabc   0: defabc
# Line 519  No need char Line 517  No need char
517  /(^b|(?i)^d)/  /(^b|(?i)^d)/
518  Capturing subpattern count = 1  Capturing subpattern count = 1
519  Options: anchored  Options: anchored
 Case state changes  
520  No first char  No first char
521  No need char  No need char
522    
# Line 554  Starting byte set: b c x y Line 551  Starting byte set: b c x y
551  /(^a|^b)/m  /(^a|^b)/m
552  Capturing subpattern count = 1  Capturing subpattern count = 1
553  Options: multiline  Options: multiline
554  First char at start or follows \n  First char at start or follows newline
555  No need char  No need char
556    
557  /(?i)(^a|^b)/m  /(?i)(^a|^b)/m
558  Capturing subpattern count = 1  Capturing subpattern count = 1
559  Options: caseless multiline  Options: caseless multiline
560  First char at start or follows \n  First char at start or follows newline
561  No need char  No need char
562    
563  /(a)(?(1)a|b|c)/  /(a)(?(1)a|b|c)/
# Line 570  Failed: conditional group contains more Line 567  Failed: conditional group contains more
567  Failed: conditional group contains more than two branches at offset 12  Failed: conditional group contains more than two branches at offset 12
568    
569  /(?(1a)/  /(?(1a)/
570  Failed: malformed number after (?( at offset 4  Failed: reference to non-existent subpattern at offset 6
571    
572  /(?(?i))/  /(?(?i))/
573  Failed: assertion expected after (?( at offset 3  Failed: assertion expected after (?( at offset 3
574    
575  /(?(abc))/  /(?(abc))/
576  Failed: assertion expected after (?( at offset 3  Failed: reference to non-existent subpattern at offset 7
577    
578  /(?(?<ab))/  /(?(?<ab))/
579  Failed: unrecognized character after (?< at offset 5  Failed: unrecognized character after (?< at offset 5
# Line 594  Capturing subpattern count = 1 Line 591  Capturing subpattern count = 1
591  Max back reference = 1  Max back reference = 1
592  Partial matching not supported  Partial matching not supported
593  No options  No options
 Case state changes  
594  First char = 'b' (caseless)  First char = 'b' (caseless)
595  Need char = 'h' (caseless)  Need char = 'h' (caseless)
596    
# Line 611  Need char = 'h' (caseless) Line 607  Need char = 'h' (caseless)
607  ------------------------------------------------------------------  ------------------------------------------------------------------
608  Capturing subpattern count = 1  Capturing subpattern count = 1
609  No options  No options
 Case state changes  
610  First char = 'b' (caseless)  First char = 'b' (caseless)
611  No need char  No need char
612  Study returned NULL  Study returned NULL
# Line 620  Study returned NULL Line 615  Study returned NULL
615  Capturing subpattern count = 1  Capturing subpattern count = 1
616  Partial matching not supported  Partial matching not supported
617  No options  No options
 Case state changes  
618  No first char  No first char
619  No need char  No need char
620  Starting byte set: C a b c d  Starting byte set: C a b c d
# Line 666  No need char Line 660  No need char
660  /^abc/m  /^abc/m
661  Capturing subpattern count = 0  Capturing subpattern count = 0
662  Options: multiline  Options: multiline
663  First char at start or follows \n  First char at start or follows newline
664  Need char = 'c'  Need char = 'c'
665    
666  /^((a+)(?U)([ab]+)(?-U)([bc]+)(\w*))/  /^((a+)(?U)([ab]+)(?-U)([bc]+)(\w*))/
# Line 723  No match Line 717  No match
717  /^(?<=foo\n)bar/m  /^(?<=foo\n)bar/m
718  Capturing subpattern count = 0  Capturing subpattern count = 0
719  Options: multiline  Options: multiline
720  First char at start or follows \n  First char at start or follows newline
721  Need char = 'r'  Need char = 'r'
722      foo\nbarbar      foo\nbarbar
723   0: bar   0: bar
# Line 739  No match Line 733  No match
733  /(?>^abc)/m  /(?>^abc)/m
734  Capturing subpattern count = 0  Capturing subpattern count = 0
735  Options: multiline  Options: multiline
736  First char at start or follows \n  First char at start or follows newline
737  Need char = 'c'  Need char = 'c'
738      abc      abc
739   0: abc   0: abc
# Line 784  No match Line 778  No match
778  /(?<=ab(?i)x|y|z)/  /(?<=ab(?i)x|y|z)/
779  Capturing subpattern count = 0  Capturing subpattern count = 0
780  No options  No options
 Case state changes  
781  No first char  No first char
782  No need char  No need char
783    
# Line 792  No need char Line 785  No need char
785  Capturing subpattern count = 2  Capturing subpattern count = 2
786  Partial matching not supported  Partial matching not supported
787  No options  No options
788  First char at start or follows \n  First char at start or follows newline
789  No need char  No need char
790      alphabetabcd      alphabetabcd
791   0: alphabetabcd   0: alphabetabcd
# Line 805  No need char Line 798  No need char
798  /(?<=ab(?i)x(?-i)y|(?i)z|b)ZZ/  /(?<=ab(?i)x(?-i)y|(?i)z|b)ZZ/
799  Capturing subpattern count = 0  Capturing subpattern count = 0
800  No options  No options
 Case state changes  
801  First char = 'Z'  First char = 'Z'
802  Need char = 'Z'  Need char = 'Z'
803      abxyZZ      abxyZZ
# Line 968  Failed: unrecognized character after (? Line 960  Failed: unrecognized character after (?
960  Failed: unrecognized character after (? at offset 3  Failed: unrecognized character after (? at offset 3
961    
962  /(?(1?)a|b)/  /(?(1?)a|b)/
963  Failed: malformed number after (?( at offset 4  Failed: malformed number or name after (?( at offset 4
964    
965  /(?(1)a|b|c)/  /(?(1)a|b|c)/
966  Failed: conditional group contains more than two branches at offset 10  Failed: conditional group contains more than two branches at offset 10
# Line 1023  No need char Line 1015  No need char
1015      abcdefghijklmnopqrstuvwxyz\C1      abcdefghijklmnopqrstuvwxyz\C1
1016   0: abcdefghijklmnopqrst   0: abcdefghijklmnopqrst
1017   1: abcdefghijklmnopqrst   1: abcdefghijklmnopqrst
1018  copy substring 1 failed -6   1C abcdefghijklmnopqrst (20)
1019      abcdefghijklmnopqrstuvwxyz\G1      abcdefghijklmnopqrstuvwxyz\G1
1020   0: abcdefghijklmnopqrst   0: abcdefghijklmnopqrst
1021   1: abcdefghijklmnopqrst   1: abcdefghijklmnopqrst
# Line 1056  No need char Line 1048  No need char
1048      abcdefghijklmnopqrstuvwxyz\C1\G1\L      abcdefghijklmnopqrstuvwxyz\C1\G1\L
1049   0: abcdefghijklmnop   0: abcdefghijklmnop
1050   1: abcdefghijklmnop   1: abcdefghijklmnop
1051  copy substring 1 failed -6   1C abcdefghijklmnop (16)
1052   1G abcdefghijklmnop (16)   1G abcdefghijklmnop (16)
1053   0L abcdefghijklmnop   0L abcdefghijklmnop
1054   1L abcdefghijklmnop   1L abcdefghijklmnop
# Line 1130  Need char = 'd' Line 1122  Need char = 'd'
1122  Capturing subpattern count = 0  Capturing subpattern count = 0
1123  Partial matching not supported  Partial matching not supported
1124  No options  No options
1125  First char at start or follows \n  First char at start or follows newline
1126  Need char = 'X'  Need char = 'X'
1127    
1128  /.*X/Ds  /.*X/Ds
# Line 1163  Need char = 'X' Line 1155  Need char = 'X'
1155  Capturing subpattern count = 1  Capturing subpattern count = 1
1156  Partial matching not supported  Partial matching not supported
1157  No options  No options
1158  First char at start or follows \n  First char at start or follows newline
1159  No need char  No need char
1160    
1161  /(.*X|^B)/Ds  /(.*X|^B)/Ds
# Line 1223  No need char Line 1215  No need char
1215  Capturing subpattern count = 0  Capturing subpattern count = 0
1216  Partial matching not supported  Partial matching not supported
1217  No options  No options
1218  First char at start or follows \n  First char at start or follows newline
1219  No need char  No need char
1220    
1221  /\Biss\B/+  /\Biss\B/+
# Line 1308  No need char Line 1300  No need char
1300  Capturing subpattern count = 0  Capturing subpattern count = 0
1301  Partial matching not supported  Partial matching not supported
1302  No options  No options
1303  First char at start or follows \n  First char at start or follows newline
1304  Need char = 's'  Need char = 's'
1305      abciss\nxyzisspqr      abciss\nxyzisspqr
1306   0: abciss   0: abciss
# Line 1367  No need char Line 1359  No need char
1359  /^ab\n/mg+  /^ab\n/mg+
1360  Capturing subpattern count = 0  Capturing subpattern count = 0
1361  Options: multiline  Options: multiline
1362  First char at start or follows \n  First char at start or follows newline
1363  Need char = 10  Need char = 10
1364      ab\nab\ncd      ab\nab\ncd
1365   0: ab\x0a   0: ab\x0a
# Line 1945  Options: anchored Line 1937  Options: anchored
1937  No first char  No first char
1938  No need char  No need char
1939    
1940    /[_[:alpha:]]/IS
1941    Capturing subpattern count = 0
1942    No options
1943    No first char
1944    No need char
1945    Starting byte set: A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
1946      _ a b c d e f g h i j k l m n o p q r s t u v w x y z
1947    
1948  /^[[:ascii:]]/D  /^[[:ascii:]]/D
1949  ------------------------------------------------------------------  ------------------------------------------------------------------
1950    0  37 Bra 0    0  37 Bra 0
# Line 1984  Options: anchored Line 1984  Options: anchored
1984  No first char  No first char
1985  No need char  No need char
1986    
1987    /^[[:^blank:]]/D
1988    ------------------------------------------------------------------
1989      0  37 Bra 0
1990      3     ^
1991      4     [\x00-\x08\x0a-\x1f!-\xff]
1992     37  37 Ket
1993     40     End
1994    ------------------------------------------------------------------
1995    Capturing subpattern count = 0
1996    Options: anchored
1997    No first char
1998    No need char
1999    
2000    /[\n\x0b\x0c\x0d[:blank:]]/IS
2001    Capturing subpattern count = 0
2002    No options
2003    No first char
2004    No need char
2005    Starting byte set: \x09 \x0a \x0b \x0c \x0d \x20
2006    
2007  /^[[:cntrl:]]/D  /^[[:cntrl:]]/D
2008  ------------------------------------------------------------------  ------------------------------------------------------------------
2009    0  37 Bra 0    0  37 Bra 0
# Line 2197  No need char Line 2217  No need char
2217  /((?-i)[[:lower:]])[[:lower:]]/i  /((?-i)[[:lower:]])[[:lower:]]/i
2218  Capturing subpattern count = 1  Capturing subpattern count = 1
2219  Options: caseless  Options: caseless
 Case state changes  
2220  No first char  No first char
2221  No need char  No need char
2222      ab      ab
# Line 2214  No match Line 2233  No match
2233      AB      AB
2234  No match  No match
2235    
2236  /[\200-\410]/  /[\200-\110]/
2237  Failed: range out of order in character class at offset 9  Failed: range out of order in character class at offset 9
2238    
2239  /^(?(0)f|b)oo/  /^(?(0)f|b)oo/
2240  Failed: invalid condition (?(0) at offset 5  Failed: invalid condition (?(0) at offset 6
2241    
2242  /This one's here because of the large output vector needed/  /This one's here because of the large output vector needed/
2243  Capturing subpattern count = 0  Capturing subpattern count = 0
# Line 2735  No need char Line 2754  No need char
2754  ------------------------------------------------------------------  ------------------------------------------------------------------
2755  Capturing subpattern count = 0  Capturing subpattern count = 0
2756  No options  No options
 Case state changes  
2757  First char = 'a'  First char = 'a'
2758  Need char = 'b' (caseless)  Need char = 'b' (caseless)
2759      ab      ab
# Line 2761  No match Line 2779  No match
2779  ------------------------------------------------------------------  ------------------------------------------------------------------
2780  Capturing subpattern count = 1  Capturing subpattern count = 1
2781  No options  No options
 Case state changes  
2782  First char = 'a'  First char = 'a'
2783  Need char = 'b' (caseless)  Need char = 'b' (caseless)
2784      ab      ab
# Line 3344  No need char Line 3361  No need char
3361  Capturing subpattern count = 1  Capturing subpattern count = 1
3362  Partial matching not supported  Partial matching not supported
3363  No options  No options
3364  First char at start or follows \n  First char at start or follows newline
3365  No need char  No need char
3366    
3367  /(.*)\d+\1/Is  /(.*)\d+\1/Is
# Line 3367  Capturing subpattern count = 2 Line 3384  Capturing subpattern count = 2
3384  Max back reference = 2  Max back reference = 2
3385  Partial matching not supported  Partial matching not supported
3386  No options  No options
3387  First char at start or follows \n  First char at start or follows newline
3388  Need char = 'z'  Need char = 'z'
3389    
3390  /((.*))\d+\1/I  /((.*))\d+\1/I
# Line 3404  Need char = 'z' (caseless) Line 3421  Need char = 'z' (caseless)
3421  /(?=abc)(?i).xyz/I  /(?=abc)(?i).xyz/I
3422  Capturing subpattern count = 0  Capturing subpattern count = 0
3423  No options  No options
 Case state changes  
3424  First char = 'a'  First char = 'a'
3425  Need char = 'z' (caseless)  Need char = 'z' (caseless)
3426    
# Line 3527  Need char = 'b' Line 3543  Need char = 'b'
3543  /^a/mI  /^a/mI
3544  Capturing subpattern count = 0  Capturing subpattern count = 0
3545  Options: multiline  Options: multiline
3546  First char at start or follows \n  First char at start or follows newline
3547  Need char = 'a'  Need char = 'a'
3548    abcde    abcde
3549   0: a   0: a
# Line 3554  Starting byte set: A B a b Line 3570  Starting byte set: A B a b
3570  /[ab](?i)cd/IS  /[ab](?i)cd/IS
3571  Capturing subpattern count = 0  Capturing subpattern count = 0
3572  No options  No options
 Case state changes  
3573  No first char  No first char
3574  Need char = 'd' (caseless)  Need char = 'd' (caseless)
3575  Starting byte set: a b  Starting byte set: a b
# Line 3841  Callout 0: last capture = 1 Line 3856  Callout 0: last capture = 1
3856   0: xyz   0: xyz
3857   1: abc   1: abc
3858    
3859    /a(b+)(c*)(?C1)/
3860    Capturing subpattern count = 2
3861    Partial matching not supported
3862    No options
3863    First char = 'a'
3864    Need char = 'b'
3865        abbbbbccc\C*1
3866    --->abbbbbccc
3867      1 ^        ^
3868    Callout data = 1
3869      1 ^       ^
3870    Callout data = 1
3871      1 ^      ^
3872    Callout data = 1
3873      1 ^     ^
3874    Callout data = 1
3875      1 ^    ^
3876    Callout data = 1
3877      1 ^   ^
3878    Callout data = 1
3879      1 ^  ^
3880    Callout data = 1
3881      1 ^ ^
3882    Callout data = 1
3883    No match
3884    
3885    /a(b+?)(c*?)(?C1)/
3886    Capturing subpattern count = 2
3887    Partial matching not supported
3888    No options
3889    First char = 'a'
3890    Need char = 'b'
3891        abbbbbccc\C*1
3892    --->abbbbbccc
3893      1 ^ ^
3894    Callout data = 1
3895      1 ^  ^
3896    Callout data = 1
3897      1 ^   ^
3898    Callout data = 1
3899      1 ^    ^
3900    Callout data = 1
3901      1 ^     ^
3902    Callout data = 1
3903      1 ^      ^
3904    Callout data = 1
3905      1 ^       ^
3906    Callout data = 1
3907      1 ^        ^
3908    Callout data = 1
3909    No match
3910    
3911  /(?C)abc/  /(?C)abc/
3912  Capturing subpattern count = 0  Capturing subpattern count = 0
3913  No options  No options
# Line 3943  Need char = '<' Line 4010  Need char = '<'
4010    
4011  /(a(?1)b)/D  /(a(?1)b)/D
4012  ------------------------------------------------------------------  ------------------------------------------------------------------
4013    0  16 Bra 0    0  22 Bra 0
4014    3  10 Bra 1    3  16 Bra 1
4015    6     a    6     a
4016    8   3 Recurse    8   6 Once
4017   11     b   11   3 Recurse
4018   13  10 Ket   14   6 Ket
4019   16  16 Ket   17     b
4020   19     End   19  16 Ket
4021     22  22 Ket
4022     25     End
4023  ------------------------------------------------------------------  ------------------------------------------------------------------
4024  Capturing subpattern count = 1  Capturing subpattern count = 1
4025  No options  No options
# Line 3962  Need char = 'b' Line 4031  Need char = 'b'
4031    0  22 Bra 0    0  22 Bra 0
4032    3  16 Bra 1    3  16 Bra 1
4033    6     a    6     a
4034    8   6 Bra 0    8   6 Once
4035   11   3 Recurse   11   3 Recurse
4036   14   6 KetRmax   14   6 KetRmax
4037   17     b   17     b
# Line 4194  Need char = 'a' Line 4263  Need char = 'a'
4263    
4264  /(?P<a>a)...(?P=a)bbb(?P>a)d/D  /(?P<a>a)...(?P=a)bbb(?P>a)d/D
4265  ------------------------------------------------------------------  ------------------------------------------------------------------
4266    0  28 Bra 0    0  34 Bra 0
4267    3   5 Bra 1    3   5 Bra 1
4268    6     a    6     a
4269    8   5 Ket    8   5 Ket
# Line 4203  Need char = 'a' Line 4272  Need char = 'a'
4272   13     Any   13     Any
4273   14     \1   14     \1
4274   17     bbb   17     bbb
4275   23   3 Recurse   23   6 Once
4276   26     d   26   3 Recurse
4277   28  28 Ket   29   6 Ket
4278   31     End   32     d
4279     34  34 Ket
4280     37     End
4281  ------------------------------------------------------------------  ------------------------------------------------------------------
4282  Capturing subpattern count = 1  Capturing subpattern count = 1
4283  Max back reference = 1  Max back reference = 1
# Line 4366  No need char Line 4437  No need char
4437   24     End   24     End
4438  ------------------------------------------------------------------  ------------------------------------------------------------------
4439  Capturing subpattern count = 0  Capturing subpattern count = 0
4440  Options:  Options: no_auto_capture
4441  First char = 'a'  First char = 'a'
4442  Need char = 'c'  Need char = 'c'
4443    abc    abc
# Line 4387  Need char = 'c' Line 4458  Need char = 'c'
4458  Capturing subpattern count = 1  Capturing subpattern count = 1
4459  Named capturing subpatterns:  Named capturing subpatterns:
4460    one   1    one   1
4461  Options:  Options: no_auto_capture
4462  First char = 'a'  First char = 'a'
4463  Need char = 'c'  Need char = 'c'
4464    abc    abc
# Line 4409  Need char = 'c' Line 4480  Need char = 'c'
4480  Capturing subpattern count = 1  Capturing subpattern count = 1
4481  Named capturing subpatterns:  Named capturing subpatterns:
4482    named   1    named   1
4483  Options:  Options: no_auto_capture
4484  First char = 'a'  First char = 'a'
4485  Need char = 'c'  Need char = 'c'
4486    
# Line 4420  No options Line 4491  No options
4491  No first char  No first char
4492  Need char = 'z'  Need char = 'z'
4493    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaazzbbbbbb\M    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaazzbbbbbb\M
4494  Minimum match limit = 8  Minimum match() limit = 8
4495    Minimum match() recursion limit = 6
4496   0: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaazz   0: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaazz
4497   1: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa   1: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
4498    aaaaaaaaaaaaaz\M    aaaaaaaaaaaaaz\M
4499  Minimum match limit = 32768  Minimum match() limit = 32768
4500    Minimum match() recursion limit = 42
4501  No match  No match
4502    
4503  /(aaa(?C1)bbb|ab)/  /(aaa(?C1)bbb|ab)/
# Line 4471  Need char = 'h' Line 4544  Need char = 'h'
4544   1: cd   1: cd
4545   2: gh   2: gh
4546   1C cd (2)   1C cd (2)
4547   2G gh (2)    G gh (2) two
4548      abcdefgh\Cone\Ctwo      abcdefgh\Cone\Ctwo
4549   0: abcdefgh   0: abcdefgh
4550   1: cd   1: cd
4551   2: gh   2: gh
4552   1C cd (2)    C cd (2) one
4553   2C gh (2)    C gh (2) two
4554      abcdefgh\Cthree      abcdefgh\Cthree
4555  no parentheses with name "three"  no parentheses with name "three"
4556   0: abcdefgh   0: abcdefgh
4557   1: cd   1: cd
4558   2: gh   2: gh
4559    copy substring three failed -7
4560    
4561  /(?P<Tes>)(?P<Test>)/D  /(?P<Tes>)(?P<Test>)/D
4562  ------------------------------------------------------------------  ------------------------------------------------------------------
# Line 4532  Need char = 'a' Line 4606  Need char = 'a'
4606   0: zzaa   0: zzaa
4607   1: zz   1: zz
4608   2: aa   2: aa
4609   1C zz (2)    C zz (2) Z
4610      zzaa\CA      zzaa\CA
4611   0: zzaa   0: zzaa
4612   1: zz   1: zz
4613   2: aa   2: aa
4614   2C aa (2)    C aa (2) A
4615    
4616  /(?P<x>eks)(?P<x>eccs)/  /(?P<x>eks)(?P<x>eccs)/
4617  Failed: two named groups have the same name at offset 16  Failed: two named subpatterns have the same name at offset 16
4618    
4619  /(?P<abc>abc(?P<def>def)(?P<abc>xyz))/  /(?P<abc>abc(?P<def>def)(?P<abc>xyz))/
4620  Failed: two named groups have the same name at offset 31  Failed: two named subpatterns have the same name at offset 31
4621    
4622  "\[((?P<elem>\d+)(,(?P>elem))*)\]"  "\[((?P<elem>\d+)(,(?P>elem))*)\]"
4623  Capturing subpattern count = 3  Capturing subpattern count = 3
# Line 4581  Need char = ']' Line 4655  Need char = ']'
4655    
4656  /(a(b(?2)c))?/D  /(a(b(?2)c))?/D
4657  ------------------------------------------------------------------  ------------------------------------------------------------------
4658    0  25 Bra 0    0  31 Bra 0
4659    3     Brazero    3     Brazero
4660    4  18 Bra 1    4  24 Bra 1
4661    7     a    7     a
4662    9  10 Bra 2    9  16 Bra 2
4663   12     b   12     b
4664   14   9 Recurse   14   6 Once
4665   17     c   17   9 Recurse
4666   19  10 Ket   20   6 Ket
4667   22  18 Ket   23     c
4668   25  25 Ket   25  16 Ket
4669   28     End   28  24 Ket
4670     31  31 Ket
4671     34     End
4672  ------------------------------------------------------------------  ------------------------------------------------------------------
4673  Capturing subpattern count = 2  Capturing subpattern count = 2
4674  No options  No options
# Line 4601  No need char Line 4677  No need char
4677    
4678  /(a(b(?2)c))*/D  /(a(b(?2)c))*/D
4679  ------------------------------------------------------------------  ------------------------------------------------------------------
4680    0  25 Bra 0    0  31 Bra 0
4681    3     Brazero    3     Brazero
4682    4  18 Bra 1    4  24 Bra 1
4683    7     a    7     a
4684    9  10 Bra 2    9  16 Bra 2
4685   12     b   12     b
4686   14   9 Recurse   14   6 Once
4687   17     c   17   9 Recurse
4688   19  10 Ket   20   6 Ket
4689   22  18 KetRmax   23     c
4690   25  25 Ket   25  16 Ket
4691   28     End   28  24 KetRmax
4692     31  31 Ket
4693     34     End
4694  ------------------------------------------------------------------  ------------------------------------------------------------------
4695  Capturing subpattern count = 2  Capturing subpattern count = 2
4696  No options  No options
# Line 4621  No need char Line 4699  No need char
4699    
4700  /(a(b(?2)c)){0,2}/D  /(a(b(?2)c)){0,2}/D
4701  ------------------------------------------------------------------  ------------------------------------------------------------------
4702    0  53 Bra 0    0  65 Bra 0
4703    3     Brazero    3     Brazero
4704    4  46 Bra 0    4  58 Bra 0
4705    7  18 Bra 1    7  24 Bra 1
4706   10     a   10     a
4707   12  10 Bra 2   12  16 Bra 2
4708   15     b   15     b
4709   17  12 Recurse   17   6 Once
4710   20     c   20  12 Recurse
4711   22  10 Ket   23   6 Ket
4712   25  18 Ket   26     c
4713   28     Brazero   28  16 Ket
4714   29  18 Bra 1   31  24 Ket
4715   32     a   34     Brazero
4716   34  10 Bra 2   35  24 Bra 1
4717   37     b   38     a
4718   39  12 Recurse   40  16 Bra 2
4719   42     c   43     b
4720   44  10 Ket   45   6 Once
4721   47  18 Ket   48  12 Recurse
4722   50  46 Ket   51   6 Ket
4723   53  53 Ket   54     c
4724   56     End   56  16 Ket
4725     59  24 Ket
4726     62  58 Ket
4727     65  65 Ket
4728     68     End
4729  ------------------------------------------------------------------  ------------------------------------------------------------------
4730  Capturing subpattern count = 2  Capturing subpattern count = 2
4731  No options  No options
# Line 5600  Options: anchored Line 5682  Options: anchored
5682  No first char  No first char
5683  No need char  No need char
5684    
5685    /line\nbreak/
5686    Capturing subpattern count = 0
5687    No options
5688    First char = 'l'
5689    Need char = 'k'
5690        this is a line\nbreak
5691     0: line\x0abreak
5692        line one\nthis is a line\nbreak in the second line
5693     0: line\x0abreak
5694    
5695    /line\nbreak/f
5696    Capturing subpattern count = 0
5697    Options: firstline
5698    First char = 'l'
5699    Need char = 'k'
5700        this is a line\nbreak
5701     0: line\x0abreak
5702        ** Failers
5703    No match
5704        line one\nthis is a line\nbreak in the second line
5705    No match
5706    
5707    /line\nbreak/mf
5708    Capturing subpattern count = 0
5709    Options: multiline firstline
5710    First char = 'l'
5711    Need char = 'k'
5712        this is a line\nbreak
5713     0: line\x0abreak
5714        ** Failers
5715    No match
5716        line one\nthis is a line\nbreak in the second line
5717    No match
5718    
5719    /ab.cd/P
5720        ab-cd
5721     0: ab-cd
5722        ab=cd
5723     0: ab=cd
5724        ** Failers
5725    No match: POSIX code 17: match failed
5726        ab\ncd
5727    No match: POSIX code 17: match failed
5728    
5729    /ab.cd/Ps
5730        ab-cd
5731     0: ab-cd
5732        ab=cd
5733     0: ab=cd
5734        ab\ncd
5735     0: ab\x0acd
5736    
5737    /(?i)(?-i)AbCd/
5738    Capturing subpattern count = 0
5739    No options
5740    First char = 'A'
5741    Need char = 'd'
5742        AbCd
5743     0: AbCd
5744        ** Failers
5745    No match
5746        abcd
5747    No match
5748    
5749    /a{11111111111111111111}/
5750    Failed: number too big in {} quantifier at offset 22
5751    
5752    /(){64294967295}/
5753    Failed: number too big in {} quantifier at offset 14
5754    
5755    /(){2,4294967295}/
5756    Failed: number too big in {} quantifier at offset 15
5757    
5758    "(?i:a)(?i:b)(?i:c)(?i:d)(?i:e)(?i:f)(?i:g)(?i:h)(?i:i)(?i:j)(k)(?i:l)A\1B"
5759    Capturing subpattern count = 1
5760    Max back reference = 1
5761    No options
5762    First char = 'a' (caseless)
5763    Need char = 'B'
5764        abcdefghijklAkB
5765     0: abcdefghijklAkB
5766     1: k
5767    
5768    "(?P<n0>a)(?P<n1>b)(?P<n2>c)(?P<n3>d)(?P<n4>e)(?P<n5>f)(?P<n6>g)(?P<n7>h)(?P<n8>i)(?P<n9>j)(?P<n10>k)(?P<n11>l)A\11B"
5769    Capturing subpattern count = 12
5770    Max back reference = 11
5771    Named capturing subpatterns:
5772      n0    1
5773      n1    2
5774      n10  11
5775      n11  12
5776      n2    3
5777      n3    4
5778      n4    5
5779      n5    6
5780      n6    7
5781      n7    8
5782      n8    9
5783      n9   10
5784    No options
5785    First char = 'a'
5786    Need char = 'B'
5787        abcdefghijklAkB
5788     0: abcdefghijklAkB
5789     1: a
5790     2: b
5791     3: c
5792     4: d
5793     5: e
5794     6: f
5795     7: g
5796     8: h
5797     9: i
5798    10: j
5799    11: k
5800    12: l
5801    
5802    "(a)(b)(c)(d)(e)(f)(g)(h)(i)(j)(k)(l)A\11B"
5803    Capturing subpattern count = 12
5804    Max back reference = 11
5805    No options
5806    First char = 'a'
5807    Need char = 'B'
5808        abcdefghijklAkB
5809     0: abcdefghijklAkB
5810     1: a
5811     2: b
5812     3: c
5813     4: d
5814     5: e
5815     6: f
5816     7: g
5817     8: h
5818     9: i
5819    10: j
5820    11: k
5821    12: l
5822    
5823    "(?P<name0>a)(?P<name1>a)(?P<name2>a)(?P<name3>a)(?P<name4>a)(?P<name5>a)(?P<name6>a)(?P<name7>a)(?P<name8>a)(?P<name9>a)(?P<name10>a)(?P<name11>a)(?P<name12>a)(?P<name13>a)(?P<name14>a)(?P<name15>a)(?P<name16>a)(?P<name17>a)(?P<name18>a)(?P<name19>a)(?P<name20>a)(?P<name21>a)(?P<name22>a)(?P<name23>a)(?P<name24>a)(?P<name25>a)(?P<name26>a)(?P<name27>a)(?P<name28>a)(?P<name29>a)(?P<name30>a)(?P<name31>a)(?P<name32>a)(?P<name33>a)(?P<name34>a)(?P<name35>a)(?P<name36>a)(?P<name37>a)(?P<name38>a)(?P<name39>a)(?P<name40>a)(?P<name41>a)(?P<name42>a)(?P<name43>a)(?P<name44>a)(?P<name45>a)(?P<name46>a)(?P<name47>a)(?P<name48>a)(?P<name49>a)(?P<name50>a)(?P<name51>a)(?P<name52>a)(?P<name53>a)(?P<name54>a)(?P<name55>a)(?P<name56>a)(?P<name57>a)(?P<name58>a)(?P<name59>a)(?P<name60>a)(?P<name61>a)(?P<name62>a)(?P<name63>a)(?P<name64>a)(?P<name65>a)(?P<name66>a)(?P<name67>a)(?P<name68>a)(?P<name69>a)(?P<name70>a)(?P<name71>a)(?P<name72>a)(?P<name73>a)(?P<name74>a)(?P<name75>a)(?P<name76>a)(?P<name77>a)(?P<name78>a)(?P<name79>a)(?P<name80>a)(?P<name81>a)(?P<name82>a)(?P<name83>a)(?P<name84>a)(?P<name85>a)(?P<name86>a)(?P<name87>a)(?P<name88>a)(?P<name89>a)(?P<name90>a)(?P<name91>a)(?P<name92>a)(?P<name93>a)(?P<name94>a)(?P<name95>a)(?P<name96>a)(?P<name97>a)(?P<name98>a)(?P<name99>a)(?P<name100>a)"
5824    Capturing subpattern count = 101
5825    Named capturing subpatterns:
5826      name0     1
5827      name1     2
5828      name10   11
5829      name100 101
5830      name11   12
5831      name12   13
5832      name13   14
5833      name14   15
5834      name15   16
5835      name16   17
5836      name17   18
5837      name18   19
5838      name19   20
5839      name2     3
5840      name20   21
5841      name21   22
5842      name22   23
5843      name23   24
5844      name24   25
5845      name25   26
5846      name26   27
5847      name27   28
5848      name28   29
5849      name29   30
5850      name3     4
5851      name30   31
5852      name31   32
5853      name32   33
5854      name33   34
5855      name34   35
5856      name35   36
5857      name36   37
5858      name37   38
5859      name38   39
5860      name39   40
5861      name4     5
5862      name40   41
5863      name41   42
5864      name42   43
5865      name43   44
5866      name44   45
5867      name45   46
5868      name46   47
5869      name47   48
5870      name48   49
5871      name49   50
5872      name5     6
5873      name50   51
5874      name51   52
5875      name52   53
5876      name53   54
5877      name54   55
5878      name55   56
5879      name56   57
5880      name57   58
5881      name58   59
5882      name59   60
5883      name6     7
5884      name60   61
5885      name61   62
5886      name62   63
5887      name63   64
5888      name64   65
5889      name65   66
5890      name66   67
5891      name67   68
5892      name68   69
5893      name69   70
5894      name7     8
5895      name70   71
5896      name71   72
5897      name72   73
5898      name73   74
5899      name74   75
5900      name75   76
5901      name76   77
5902      name77   78
5903      name78   79
5904      name79   80
5905      name8     9
5906      name80   81
5907      name81   82
5908      name82   83
5909      name83   84
5910      name84   85
5911      name85   86
5912      name86   87
5913      name87   88
5914      name88   89
5915      name89   90
5916      name9    10
5917      name90   91
5918      name91   92
5919      name92   93
5920      name93   94
5921      name94   95
5922      name95   96
5923      name96   97
5924      name97   98
5925      name98   99
5926      name99  100
5927    No options
5928    First char = 'a'
5929    Need char = 'a'
5930        aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
5931    Matched, but too many substrings
5932     0: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
5933     1: a
5934     2: a
5935     3: a
5936     4: a
5937     5: a
5938     6: a
5939     7: a
5940     8: a
5941     9: a
5942    10: a
5943    11: a
5944    12: a
5945    13: a
5946    14: a
5947    
5948    "(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)"
5949    Capturing subpattern count = 101
5950    No options
5951    First char = 'a'
5952    Need char = 'a'
5953        aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
5954    Matched, but too many substrings
5955     0: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
5956     1: a
5957     2: a
5958     3: a
5959     4: a
5960     5: a
5961     6: a
5962     7: a
5963     8: a
5964     9: a
5965    10: a
5966    11: a
5967    12: a
5968    13: a
5969    14: a
5970    
5971    /[^()]*(?:\((?R)\)[^()]*)*/
5972    Capturing subpattern count = 0
5973    Partial matching not supported
5974    No options
5975    No first char
5976    No need char
5977        (this(and)that
5978     0:
5979        (this(and)that)
5980     0: (this(and)that)
5981        (this(and)that)stuff
5982     0: (this(and)that)stuff
5983    
5984    /[^()]*(?:\((?>(?R))\)[^()]*)*/
5985    Capturing subpattern count = 0
5986    Partial matching not supported
5987    No options
5988    No first char
5989    No need char
5990        (this(and)that
5991     0:
5992        (this(and)that)
5993     0: (this(and)that)
5994    
5995    /[^()]*(?:\((?R)\))*[^()]*/
5996    Capturing subpattern count = 0
5997    Partial matching not supported
5998    No options
5999    No first char
6000    No need char
6001        (this(and)that
6002     0:
6003        (this(and)that)
6004     0: (this(and)that)
6005    
6006    /(?:\((?R)\))*[^()]*/
6007    Capturing subpattern count = 0
6008    Partial matching not supported
6009    No options
6010    No first char
6011    No need char
6012        (this(and)that
6013     0:
6014        (this(and)that)
6015     0:
6016        ((this))
6017     0: ((this))
6018    
6019    /(?:\((?R)\))|[^()]*/
6020    Capturing subpattern count = 0
6021    Partial matching not supported
6022    No options
6023    No first char
6024    No need char
6025        (this(and)that
6026     0:
6027        (this(and)that)
6028     0:
6029        (this)
6030     0: (this)
6031        ((this))
6032     0: ((this))
6033    
6034    /a(b)c/PN
6035        abc
6036    Matched with REG_NOSUB
6037    
6038    /a(?P<name>b)c/PN
6039        abc
6040    Matched with REG_NOSUB
6041    
6042    /\x{100}/
6043    Failed: character value in \x{...} sequence is too large at offset 6
6044    
6045    /\x{0000ff}/
6046    Capturing subpattern count = 0
6047    No options
6048    First char = 255
6049    No need char
6050    
6051    /^((?P<A>a1)|(?P<A>a2)b)/
6052    Failed: two named subpatterns have the same name at offset 18
6053    
6054    /^((?P<A>a1)|(?P<A>a2)b)/J
6055    Capturing subpattern count = 3
6056    Named capturing subpatterns:
6057      A   2
6058      A   3
6059    Options: anchored dupnames
6060    No first char
6061    No need char
6062        a1b\CA
6063     0: a1
6064     1: a1
6065     2: a1
6066      C a1 (2) A
6067        a2b\CA
6068     0: a2b
6069     1: a2b
6070     2: <unset>
6071     3: a2
6072      C a2 (2) A
6073        ** Failers
6074    No match
6075        a1b\CZ\CA
6076    no parentheses with name "Z"
6077     0: a1
6078     1: a1
6079     2: a1
6080    copy substring Z failed -7
6081      C a1 (2) A
6082    
6083    /^(?P<A>a)(?P<A>b)/J
6084    Capturing subpattern count = 2
6085    Named capturing subpatterns:
6086      A   1
6087      A   2
6088    Options: anchored dupnames
6089    No first char
6090    No need char
6091        ab\CA
6092     0: ab
6093     1: a
6094     2: b
6095      C a (1) A
6096    
6097    /^(?P<A>a)(?P<A>b)|cd/J
6098    Capturing subpattern count = 2
6099    Named capturing subpatterns:
6100      A   1
6101      A   2
6102    Options: dupnames
6103    No first char
6104    No need char
6105        ab\CA
6106     0: ab
6107     1: a
6108     2: b
6109      C a (1) A
6110        cd\CA
6111     0: cd
6112    copy substring A failed -7
6113    
6114    /^(?P<A>a)(?P<A>b)|cd(?P<A>ef)(?P<A>gh)/J
6115    Capturing subpattern count = 4
6116    Named capturing subpatterns:
6117      A   1
6118      A   2
6119      A   3
6120      A   4
6121    Options: dupnames
6122    No first char
6123    No need char
6124        cdefgh\CA
6125     0: cdefgh
6126     1: <unset>
6127     2: <unset>
6128     3: ef
6129     4: gh
6130      C ef (2) A
6131    
6132    /^((?P<A>a1)|(?P<A>a2)b)/J
6133    Capturing subpattern count = 3
6134    Named capturing subpatterns:
6135      A   2
6136      A   3
6137    Options: anchored dupnames
6138    No first char
6139    No need char
6140        a1b\GA
6141     0: a1
6142     1: a1
6143     2: a1
6144      G a1 (2) A
6145        a2b\GA
6146     0: a2b
6147     1: a2b
6148     2: <unset>
6149     3: a2
6150      G a2 (2) A
6151        ** Failers
6152    No match
6153        a1b\GZ\GA
6154    no parentheses with name "Z"
6155     0: a1
6156     1: a1
6157     2: a1
6158    copy substring Z failed -7
6159      G a1 (2) A
6160    
6161    /^(?P<A>a)(?P<A>b)/J
6162    Capturing subpattern count = 2
6163    Named capturing subpatterns:
6164      A   1
6165      A   2
6166    Options: anchored dupnames
6167    No first char
6168    No need char
6169        ab\GA
6170     0: ab
6171     1: a
6172     2: b
6173      G a (1) A
6174    
6175    /^(?P<A>a)(?P<A>b)|cd/J
6176    Capturing subpattern count = 2
6177    Named capturing subpatterns:
6178      A   1
6179      A   2
6180    Options: dupnames
6181    No first char
6182    No need char
6183        ab\GA
6184     0: ab
6185     1: a
6186     2: b
6187      G a (1) A
6188        cd\GA
6189     0: cd
6190    copy substring A failed -7
6191    
6192    /^(?P<A>a)(?P<A>b)|cd(?P<A>ef)(?P<A>gh)/J
6193    Capturing subpattern count = 4
6194    Named capturing subpatterns:
6195      A   1
6196      A   2
6197      A   3
6198      A   4
6199    Options: dupnames
6200    No first char
6201    No need char
6202        cdefgh\GA
6203     0: cdefgh
6204     1: <unset>
6205     2: <unset>
6206     3: ef
6207     4: gh
6208      G ef (2) A
6209    
6210    /(?J)^((?P<A>a1)|(?P<A>a2)b)/
6211    Capturing subpattern count = 3
6212    Named capturing subpatterns:
6213      A   2
6214      A   3
6215    Options: anchored dupnames
6216    No first char
6217    No need char
6218        a1b\CA
6219     0: a1
6220     1: a1
6221     2: a1
6222      C a1 (2) A
6223        a2b\CA
6224     0: a2b
6225     1: a2b
6226     2: <unset>
6227     3: a2
6228      C a2 (2) A
6229    
6230    /^(?P<A>a) (?J:(?P<B>b)(?P<B>c)) (?P<A>d)/
6231    Failed: two named subpatterns have the same name at offset 38
6232    
6233    / In this next test, J is not set at the outer level; consequently it isn't
6234    set in the pattern's options; consequently pcre_get_named_substring() produces
6235    a random value. /x
6236    Capturing subpattern count = 1
6237    Options: extended
6238    First char = 'I'
6239    Need char = 'e'
6240    
6241    /^(?P<A>a) (?J:(?P<B>b)(?P<B>c)) (?P<C>d)/
6242    Capturing subpattern count = 4
6243    Named capturing subpatterns:
6244      A   1
6245      B   2
6246      B   3
6247      C   4
6248    Options: anchored
6249    No first char
6250    No need char
6251        a bc d\CA\CB\CC
6252     0: a bc d
6253     1: a
6254     2: b
6255     3: c
6256     4: d
6257      C a (1) A
6258      C b (1) B
6259      C d (1) C
6260    
6261    /^(?P<A>a)?(?(A)a|b)/
6262    Capturing subpattern count = 1
6263    Named capturing subpatterns:
6264      A   1
6265    Options: anchored
6266    No first char
6267    No need char
6268        aabc
6269     0: aa
6270     1: a
6271        bc
6272     0: b
6273        ** Failers
6274    No match
6275        abc
6276    No match
6277    
6278    /(?:(?(ZZ)a|b)(?P<ZZ>X))+/
6279    Capturing subpattern count = 1
6280    Named capturing subpatterns:
6281      ZZ   1
6282    No options
6283    No first char
6284    Need char = 'X'
6285        bXaX
6286     0: bXaX
6287     1: X
6288    
6289    /(?:(?(2y)a|b)(X))+/
6290    Failed: reference to non-existent subpattern at offset 9
6291    
6292    /(?:(?(ZA)a|b)(?P<ZZ>X))+/
6293    Failed: reference to non-existent subpattern at offset 9
6294    
6295    /(?:(?(ZZ)a|b)(?(ZZ)a|b)(?P<ZZ>X))+/
6296    Capturing subpattern count = 1
6297    Named capturing subpatterns:
6298      ZZ   1
6299    No options
6300    No first char
6301    Need char = 'X'
6302        bbXaaX
6303     0: bbXaaX
6304     1: X
6305    
6306    /(?:(?(ZZ)a|\(b\))\\(?P<ZZ>X))+/
6307    Capturing subpattern count = 1
6308    Named capturing subpatterns:
6309      ZZ   1
6310    No options
6311    No first char
6312    Need char = 'X'
6313        (b)\\Xa\\X
6314     0: (b)\Xa\X
6315     1: X
6316    
6317    /(?P<ABC/
6318    Failed: syntax error after (?P at offset 7
6319    
6320    /(?:(?(A)(?P=A)a|b)(?P<A>X|Y))+/
6321    Capturing subpattern count = 1
6322    Max back reference = 1
6323    Named capturing subpatterns:
6324      A   1
6325    No options
6326    No first char
6327    No need char
6328        bXXaYYaY
6329     0: bXXaYYaY
6330     1: Y
6331        bXYaXXaX
6332     0: bX
6333     1: X
6334    
6335    /()()()()()()()()()(?:(?(A)(?P=A)a|b)(?P<A>X|Y))+/
6336    Capturing subpattern count = 10
6337    Max back reference = 10
6338    Named capturing subpatterns:
6339      A  10
6340    No options
6341    No first char
6342    No need char
6343        bXXaYYaY
6344     0: bXXaYYaY
6345     1:
6346     2:
6347     3:
6348     4:
6349     5:
6350     6:
6351     7:
6352     8:
6353     9:
6354    10: Y
6355    
6356    /\777/
6357    Failed: octal value is greater than \377 (not in UTF-8 mode) at offset 3
6358    
6359    /\s*,\s*/S
6360    Capturing subpattern count = 0
6361    Partial matching not supported
6362    No options
6363    No first char
6364    Need char = ','
6365    Starting byte set: \x09 \x0a \x0c \x0d \x20 ,
6366        \x0b,\x0b
6367     0: ,
6368        \x0c,\x0d
6369     0: \x0c,\x0d
6370    
6371    /^abc/m
6372    Capturing subpattern count = 0
6373    Options: multiline
6374    First char at start or follows newline
6375    Need char = 'c'
6376        xyz\nabc
6377     0: abc
6378        xyz\nabc\<lf>
6379     0: abc
6380        xyz\r\nabc\<lf>
6381     0: abc
6382        xyz\rabc\<cr>
6383     0: abc
6384        xyz\r\nabc\<crlf>
6385     0: abc
6386        ** Failers
6387    No match
6388        xyz\nabc\<cr>
6389    No match
6390        xyz\r\nabc\<cr>
6391    No match
6392        xyz\nabc\<crlf>
6393    No match
6394        xyz\rabc\<crlf>
6395    No match
6396        xyz\rabc\<lf>
6397    No match
6398    
6399    /abc$/m
6400    Capturing subpattern count = 0
6401    Options: multiline
6402    First char = 'a'
6403    Need char = 'c'
6404        xyzabc
6405     0: abc
6406        xyzabc\n
6407     0: abc
6408        xyzabc\npqr
6409     0: abc
6410        xyzabc\r\<cr>
6411     0: abc
6412        xyzabc\rpqr\<cr>
6413     0: abc
6414        xyzabc\r\n\<crlf>
6415     0: abc
6416        xyzabc\r\npqr\<crlf>
6417     0: abc
6418        ** Failers
6419    No match
6420        xyzabc\r
6421    No match
6422        xyzabc\rpqr
6423    No match
6424        xyzabc\r\n
6425    No match
6426        xyzabc\r\npqr
6427    No match
6428    
6429    /^abc/m<cr>
6430    Capturing subpattern count = 0
6431    Options: multiline
6432    Forced newline sequence: CR
6433    First char at start or follows newline
6434    Need char = 'c'
6435        xyz\rabcdef
6436     0: abc
6437        xyz\nabcdef\<lf>
6438     0: abc
6439        ** Failers
6440    No match
6441        xyz\nabcdef
6442    No match
6443    
6444    /^abc/m<lf>
6445    Capturing subpattern count = 0
6446    Options: multiline
6447    Forced newline sequence: LF
6448    First char at start or follows newline
6449    Need char = 'c'
6450        xyz\nabcdef
6451     0: abc
6452        xyz\rabcdef\<cr>
6453     0: abc
6454        ** Failers
6455    No match
6456        xyz\rabcdef
6457    No match
6458    
6459    /^abc/m<crlf>
6460    Capturing subpattern count = 0
6461    Options: multiline
6462    Forced newline sequence: CRLF
6463    First char at start or follows newline
6464    Need char = 'c'
6465        xyz\r\nabcdef
6466     0: abc
6467        xyz\rabcdef\<cr>
6468     0: abc
6469        ** Failers
6470    No match
6471        xyz\rabcdef
6472    No match
6473    
6474    /^abc/m<bad>
6475    Unknown newline type at: <bad>
6476    
6477    
6478    /abc/
6479    Capturing subpattern count = 0
6480    No options
6481    First char = 'a'
6482    Need char = 'c'
6483        xyz\rabc\<bad>
6484    Unknown newline type at: <bad>
6485        abc
6486     0: abc
6487    
6488    /.*/
6489    Capturing subpattern count = 0
6490    Partial matching not supported
6491    No options
6492    First char at start or follows newline
6493    No need char
6494        abc\ndef
6495     0: abc
6496        abc\rdef
6497     0: abc\x0ddef
6498        abc\r\ndef
6499     0: abc\x0d
6500        \<cr>abc\ndef
6501     0: abc\x0adef
6502        \<cr>abc\rdef
6503     0: abc
6504        \<cr>abc\r\ndef
6505     0: abc
6506        \<crlf>abc\ndef
6507     0: abc\x0adef
6508        \<crlf>abc\rdef
6509     0: abc\x0ddef
6510        \<crlf>abc\r\ndef
6511     0: abc
6512    
6513    /\w+(.)(.)?def/s
6514    Capturing subpattern count = 2
6515    Partial matching not supported
6516    Options: dotall
6517    No first char
6518    Need char = 'f'
6519        abc\ndef
6520     0: abc\x0adef
6521     1: \x0a
6522        abc\rdef
6523     0: abc\x0ddef
6524     1: \x0d
6525        abc\r\ndef
6526     0: abc\x0d\x0adef
6527     1: \x0d
6528     2: \x0a
6529    
6530    +((?:\s|//.*\\n|/[*](?:\\n|.)*?[*]/)*)+
6531    Capturing subpattern count = 1
6532    Partial matching not supported
6533    No options
6534    No first char
6535    No need char
6536       /* this is a C style comment */\M
6537    Minimum match() limit = 120
6538    Minimum match() recursion limit = 6
6539     0: /* this is a C style comment */
6540     1: /* this is a C style comment */
6541    
6542    /(?P<B>25[0-5]|2[0-4]\d|[01]?\d?\d)(?:\.(?P>B)){3}/
6543    Capturing subpattern count = 1
6544    Named capturing subpatterns:
6545      B   1
6546    No options
6547    No first char
6548    Need char = '.'
6549    
6550  / End of testinput2 /  / End of testinput2 /
6551  Capturing subpattern count = 0  Capturing subpattern count = 0
6552  No options  No options

Legend:
Removed from v.75  
changed lines
  Added in v.91

  ViewVC Help
Powered by ViewVC 1.1.5