diff options
Diffstat (limited to 'srclib/pcre/testdata/testoutput2')
-rw-r--r-- | srclib/pcre/testdata/testoutput2 | 2072 |
1 files changed, 0 insertions, 2072 deletions
diff --git a/srclib/pcre/testdata/testoutput2 b/srclib/pcre/testdata/testoutput2 deleted file mode 100644 index ba8cf0ed28..0000000000 --- a/srclib/pcre/testdata/testoutput2 +++ /dev/null @@ -1,2072 +0,0 @@ -PCRE version 3.2 12-May-2000 - -/(a)b|/ -Capturing subpattern count = 1 -No options -No first char -No need char - -/abc/ -Capturing subpattern count = 0 -No options -First char = 'a' -Need char = 'c' - abc - 0: abc - defabc - 0: abc - \Aabc - 0: abc - *** Failers -No match - \Adefabc -No match - ABC -No match - -/^abc/ -Capturing subpattern count = 0 -Options: anchored -No first char -Need char = 'c' - abc - 0: abc - \Aabc - 0: abc - *** Failers -No match - defabc -No match - \Adefabc -No match - -/a+bc/ -Capturing subpattern count = 0 -No options -First char = 'a' -Need char = 'c' - -/a*bc/ -Capturing subpattern count = 0 -No options -No first char -Need char = 'c' - -/a{3}bc/ -Capturing subpattern count = 0 -No options -First char = 'a' -Need char = 'c' - -/(abc|a+z)/ -Capturing subpattern count = 1 -No options -First char = 'a' -No need char - -/^abc$/ -Capturing subpattern count = 0 -Options: anchored -No first char -Need char = 'c' - abc - 0: abc - *** Failers -No match - def\nabc -No match - -/ab\gdef/X -Failed: unrecognized character follows \ at offset 3 - -/(?X)ab\gdef/X -Failed: unrecognized character follows \ at offset 7 - -/x{5,4}/ -Failed: numbers out of order in {} quantifier at offset 5 - -/z{65536}/ -Failed: number too big in {} quantifier at offset 7 - -/[abcd/ -Failed: missing terminating ] for character class at offset 5 - -/[\B]/ -Failed: invalid escape sequence in character class at offset 2 - -/[a-\w]/ -Failed: invalid escape sequence in character class at offset 4 - -/[z-a]/ -Failed: range out of order in character class at offset 3 - -/^*/ -Failed: nothing to repeat at offset 1 - -/(abc/ -Failed: missing ) at offset 4 - -/(?# abc/ -Failed: missing ) after comment at offset 7 - -/(?z)abc/ -Failed: unrecognized character after (? at offset 2 - -/.*b/ -Capturing subpattern count = 0 -No options -First char at start or follows \n -Need char = 'b' - -/.*?b/ -Capturing subpattern count = 0 -No options -First char at start or follows \n -Need char = 'b' - -/cat|dog|elephant/ -Capturing subpattern count = 0 -No options -No first char -No need char - this sentence eventually mentions a cat - 0: cat - this sentences rambles on and on for a while and then reaches elephant - 0: elephant - -/cat|dog|elephant/S -Capturing subpattern count = 0 -No options -No first char -No need char -Starting character set: c d e - this sentence eventually mentions a cat - 0: cat - this sentences rambles on and on for a while and then reaches elephant - 0: elephant - -/cat|dog|elephant/iS -Capturing subpattern count = 0 -Options: caseless -No first char -No need char -Starting character set: C D E c d e - this sentence eventually mentions a CAT cat - 0: CAT - this sentences rambles on and on for a while to elephant ElePhant - 0: elephant - -/a|[bcd]/S -Capturing subpattern count = 0 -No options -No first char -No need char -Starting character set: a b c d - -/(a|[^\dZ])/S -Capturing subpattern count = 1 -No options -No first char -No need char -Starting character set: \x00 \x01 \x02 \x03 \x04 \x05 \x06 \x07 \x08 \x09 \x0a - \x0b \x0c \x0d \x0e \x0f \x10 \x11 \x12 \x13 \x14 \x15 \x16 \x17 \x18 \x19 - \x1a \x1b \x1c \x1d \x1e \x1f \x20 ! " # $ % & ' ( ) * + , - . / : ; < = > - ? @ 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 [ \ ] ^ _ ` 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 { | } ~ \x7f \x80 \x81 \x82 \x83 - \x84 \x85 \x86 \x87 \x88 \x89 \x8a \x8b \x8c \x8d \x8e \x8f \x90 \x91 \x92 - \x93 \x94 \x95 \x96 \x97 \x98 \x99 \x9a \x9b \x9c \x9d \x9e \x9f \xa0 \xa1 - \xa2 \xa3 \xa4 \xa5 \xa6 \xa7 \xa8 \xa9 \xaa \xab \xac \xad \xae \xaf \xb0 - \xb1 \xb2 \xb3 \xb4 \xb5 \xb6 \xb7 \xb8 \xb9 \xba \xbb \xbc \xbd \xbe \xbf - \xc0 \xc1 \xc2 \xc3 \xc4 \xc5 \xc6 \xc7 \xc8 \xc9 \xca \xcb \xcc \xcd \xce - \xcf \xd0 \xd1 \xd2 \xd3 \xd4 \xd5 \xd6 \xd7 \xd8 \xd9 \xda \xdb \xdc \xdd - \xde \xdf \xe0 \xe1 \xe2 \xe3 \xe4 \xe5 \xe6 \xe7 \xe8 \xe9 \xea \xeb \xec - \xed \xee \xef \xf0 \xf1 \xf2 \xf3 \xf4 \xf5 \xf6 \xf7 \xf8 \xf9 \xfa \xfb - \xfc \xfd \xfe \xff - -/(a|b)*[\s]/S -Capturing subpattern count = 1 -No options -No first char -No need char -Starting character set: \x09 \x0a \x0b \x0c \x0d \x20 a b - -/(ab\2)/ -Failed: back reference to non-existent subpattern at offset 6 - -/{4,5}abc/ -Failed: nothing to repeat at offset 4 - -/(a)(b)(c)\2/ -Capturing subpattern count = 3 -Max back reference = 2 -No options -First char = 'a' -Need char = 'c' - abcb - 0: abcb - 1: a - 2: b - 3: c - \O0abcb -Matched, but too many substrings - \O3abcb -Matched, but too many substrings - 0: abcb - \O6abcb -Matched, but too many substrings - 0: abcb - 1: a - \O9abcb -Matched, but too many substrings - 0: abcb - 1: a - 2: b - \O12abcb - 0: abcb - 1: a - 2: b - 3: c - -/(a)bc|(a)(b)\2/ -Capturing subpattern count = 3 -Max back reference = 2 -No options -First char = 'a' -No need char - abc - 0: abc - 1: a - \O0abc -Matched, but too many substrings - \O3abc -Matched, but too many substrings - 0: abc - \O6abc - 0: abc - 1: a - aba - 0: aba - 1: <unset> - 2: a - 3: b - \O0aba -Matched, but too many substrings - \O3aba -Matched, but too many substrings - 0: aba - \O6aba -Matched, but too many substrings - 0: aba - 1: <unset> - \O9aba -Matched, but too many substrings - 0: aba - 1: <unset> - 2: a - \O12aba - 0: aba - 1: <unset> - 2: a - 3: b - -/abc$/E -Capturing subpattern count = 0 -Options: dollar_endonly -First char = 'a' -Need char = 'c' - abc - 0: abc - *** Failers -No match - abc\n -No match - abc\ndef -No match - -/(a)(b)(c)(d)(e)\6/ -Failed: back reference to non-existent subpattern at offset 17 - -/the quick brown fox/ -Capturing subpattern count = 0 -No options -First char = 't' -Need char = 'x' - the quick brown fox - 0: the quick brown fox - this is a line with the quick brown fox - 0: the quick brown fox - -/the quick brown fox/A -Capturing subpattern count = 0 -Options: anchored -No first char -Need char = 'x' - the quick brown fox - 0: the quick brown fox - *** Failers -No match - this is a line with the quick brown fox -No match - -/ab(?z)cd/ -Failed: unrecognized character after (? at offset 4 - -/^abc|def/ -Capturing subpattern count = 0 -No options -No first char -No need char - abcdef - 0: abc - abcdef\B - 0: def - -/.*((abc)$|(def))/ -Capturing subpattern count = 3 -No options -First char at start or follows \n -No need char - defabc - 0: defabc - 1: abc - 2: abc - \Zdefabc - 0: def - 1: def - 2: <unset> - 3: def - -/abc/P - abc - 0: abc - *** Failers -No match: POSIX code 17: match failed - -/^abc|def/P - abcdef - 0: abc - abcdef\B - 0: def - -/.*((abc)$|(def))/P - defabc - 0: defabc - 1: abc - 2: abc - \Zdefabc - 0: def - 1: def - 3: def - -/the quick brown fox/P - the quick brown fox - 0: the quick brown fox - *** Failers -No match: POSIX code 17: match failed - The Quick Brown Fox -No match: POSIX code 17: match failed - -/the quick brown fox/Pi - the quick brown fox - 0: the quick brown fox - The Quick Brown Fox - 0: The Quick Brown Fox - -/abc.def/P - *** Failers -No match: POSIX code 17: match failed - abc\ndef -No match: POSIX code 17: match failed - -/abc$/P - abc - 0: abc - abc\n - 0: abc - -/(abc)\2/P -Failed: POSIX code 15: bad back reference at offset 7 - -/(abc\1)/P - abc -No match: POSIX code 17: match failed - -/)/ -Failed: unmatched parentheses at offset 0 - -/a[]b/ -Failed: missing terminating ] for character class at offset 4 - -/[^aeiou ]{3,}/ -Capturing subpattern count = 0 -No options -No first char -No need char - co-processors, and for - 0: -pr - -/<.*>/ -Capturing subpattern count = 0 -No options -First char = '<' -Need char = '>' - abc<def>ghi<klm>nop - 0: <def>ghi<klm> - -/<.*?>/ -Capturing subpattern count = 0 -No options -First char = '<' -Need char = '>' - abc<def>ghi<klm>nop - 0: <def> - -/<.*>/U -Capturing subpattern count = 0 -Options: ungreedy -First char = '<' -Need char = '>' - abc<def>ghi<klm>nop - 0: <def> - -/<.*>(?U)/ -Capturing subpattern count = 0 -Options: ungreedy -First char = '<' -Need char = '>' - abc<def>ghi<klm>nop - 0: <def> - -/<.*?>/U -Capturing subpattern count = 0 -Options: ungreedy -First char = '<' -Need char = '>' - abc<def>ghi<klm>nop - 0: <def>ghi<klm> - -/={3,}/U -Capturing subpattern count = 0 -Options: ungreedy -First char = '=' -Need char = '=' - abc========def - 0: === - -/(?U)={3,}?/ -Capturing subpattern count = 0 -Options: ungreedy -First char = '=' -Need char = '=' - abc========def - 0: ======== - -/(?<!bar|cattle)foo/ -Capturing subpattern count = 0 -No options -First char = 'f' -Need char = 'o' - foo - 0: foo - catfoo - 0: foo - *** Failers -No match - the barfoo -No match - and cattlefoo -No match - -/(?<=a+)b/ -Failed: lookbehind assertion is not fixed length at offset 6 - -/(?<=aaa|b{0,3})b/ -Failed: lookbehind assertion is not fixed length at offset 14 - -/(?<!(foo)a\1)bar/ -Failed: lookbehind assertion is not fixed length at offset 12 - -/(?i)abc/ -Capturing subpattern count = 0 -Options: caseless -First char = 'a' -Need char = 'c' - -/(a|(?m)a)/ -Capturing subpattern count = 1 -No options -First char = 'a' -No need char - -/(?i)^1234/ -Capturing subpattern count = 0 -Options: anchored caseless -No first char -Need char = '4' - -/(^b|(?i)^d)/ -Capturing subpattern count = 1 -Options: anchored -Case state changes -No first char -No need char - -/(?s).*/ -Capturing subpattern count = 0 -Options: anchored dotall -No first char -No need char - -/[abcd]/S -Capturing subpattern count = 0 -No options -No first char -No need char -Starting character set: a b c d - -/(?i)[abcd]/S -Capturing subpattern count = 0 -Options: caseless -No first char -No need char -Starting character set: A B C D a b c d - -/(?m)[xy]|(b|c)/S -Capturing subpattern count = 1 -Options: multiline -No first char -No need char -Starting character set: b c x y - -/(^a|^b)/m -Capturing subpattern count = 1 -Options: multiline -First char at start or follows \n -No need char - -/(?i)(^a|^b)/m -Capturing subpattern count = 1 -Options: caseless multiline -First char at start or follows \n -No need char - -/(a)(?(1)a|b|c)/ -Failed: conditional group contains more than two branches at offset 13 - -/(?(?=a)a|b|c)/ -Failed: conditional group contains more than two branches at offset 12 - -/(?(1a)/ -Failed: malformed number after (?( at offset 4 - -/(?(?i))/ -Failed: assertion expected after (?( at offset 3 - -/(?(abc))/ -Failed: assertion expected after (?( at offset 3 - -/(?(?<ab))/ -Failed: unrecognized character after (?< at offset 2 - -/((?s)blah)\s+\1/ -Capturing subpattern count = 1 -Max back reference = 1 -No options -First char = 'b' -Need char = 'h' - -/((?i)blah)\s+\1/ -Capturing subpattern count = 1 -Max back reference = 1 -No options -Case state changes -No first char -Need char = 'h' - -/((?i)b)/DS ------------------------------------------------------------------- - 0 16 Bra 0 - 3 8 Bra 1 - 6 01 Opt - 8 1 b - 11 8 Ket - 14 00 Opt - 16 16 Ket - 19 End ------------------------------------------------------------------- -Capturing subpattern count = 1 -No options -Case state changes -No first char -Need char = 'b' -Starting character set: B b - -/(a*b|(?i:c*(?-i)d))/S -Capturing subpattern count = 1 -No options -Case state changes -No first char -No need char -Starting character set: C a b c d - -/a$/ -Capturing subpattern count = 0 -No options -First char = 'a' -No need char - a - 0: a - a\n - 0: a - *** Failers -No match - \Za -No match - \Za\n -No match - -/a$/m -Capturing subpattern count = 0 -Options: multiline -First char = 'a' -No need char - a - 0: a - a\n - 0: a - \Za\n - 0: a - *** Failers -No match - \Za -No match - -/\Aabc/m -Capturing subpattern count = 0 -Options: anchored multiline -No first char -Need char = 'c' - -/^abc/m -Capturing subpattern count = 0 -Options: multiline -First char at start or follows \n -Need char = 'c' - -/^((a+)(?U)([ab]+)(?-U)([bc]+)(\w*))/ -Capturing subpattern count = 5 -Options: anchored -No first char -Need char = 'a' - aaaaabbbbbcccccdef - 0: aaaaabbbbbcccccdef - 1: aaaaabbbbbcccccdef - 2: aaaaa - 3: b - 4: bbbbccccc - 5: def - -/(?<=foo)[ab]/S -Capturing subpattern count = 0 -No options -No first char -No need char -Starting character set: a b - -/(?<!foo)(alpha|omega)/S -Capturing subpattern count = 1 -No options -No first char -Need char = 'a' -Starting character set: a o - -/(?!alphabet)[ab]/S -Capturing subpattern count = 0 -No options -No first char -No need char -Starting character set: a b - -/(?<=foo\n)^bar/m -Capturing subpattern count = 0 -Options: multiline -First char at start or follows \n -Need char = 'r' - -/(?>^abc)/m -Capturing subpattern count = 0 -Options: multiline -First char at start or follows \n -Need char = 'c' - abc - 0: abc - def\nabc - 0: abc - *** Failers -No match - defabc -No match - -/(?<=ab(c+)d)ef/ -Failed: lookbehind assertion is not fixed length at offset 11 - -/(?<=ab(?<=c+)d)ef/ -Failed: lookbehind assertion is not fixed length at offset 12 - -/(?<=ab(c|de)f)g/ -Failed: lookbehind assertion is not fixed length at offset 13 - -/The next three are in testinput2 because they have variable length branches/ -Capturing subpattern count = 0 -No options -First char = 'T' -Need char = 's' - -/(?<=bullock|donkey)-cart/ -Capturing subpattern count = 0 -No options -First char = '-' -Need char = 't' - the bullock-cart - 0: -cart - a donkey-cart race - 0: -cart - *** Failers -No match - cart -No match - horse-and-cart -No match - -/(?<=ab(?i)x|y|z)/ -Capturing subpattern count = 0 -No options -Case state changes -No first char -No need char - -/(?>.*)(?<=(abcd)|(xyz))/ -Capturing subpattern count = 2 -No options -First char at start or follows \n -No need char - alphabetabcd - 0: alphabetabcd - 1: abcd - endingxyz - 0: endingxyz - 1: <unset> - 2: xyz - -/(?<=ab(?i)x(?-i)y|(?i)z|b)ZZ/ -Capturing subpattern count = 0 -No options -Case state changes -First char = 'Z' -Need char = 'Z' - abxyZZ - 0: ZZ - abXyZZ - 0: ZZ - ZZZ - 0: ZZ - zZZ - 0: ZZ - bZZ - 0: ZZ - BZZ - 0: ZZ - *** Failers -No match - ZZ -No match - abXYZZ -No match - zzz -No match - bzz -No match - -/(?<!(foo)a)bar/ -Capturing subpattern count = 1 -No options -First char = 'b' -Need char = 'r' - bar - 0: bar - foobbar - 0: bar - *** Failers -No match - fooabar -No match - -/This one is here because Perl 5.005_02 doesn't fail it/ -Capturing subpattern count = 0 -No options -First char = 'T' -Need char = 't' - -/^(a)?(?(1)a|b)+$/ -Capturing subpattern count = 1 -Options: anchored -No first char -No need char - *** Failers -No match - a -No match - -/This one is here because I think Perl 5.005_02 gets the setting of $1 wrong/ -Capturing subpattern count = 0 -No options -First char = 'T' -Need char = 'g' - -/^(a\1?){4}$/ -Capturing subpattern count = 1 -Max back reference = 1 -Options: anchored -No first char -Need char = 'a' - aaaaaa - 0: aaaaaa - 1: aa - -/These are syntax tests from Perl 5.005/ -Capturing subpattern count = 0 -No options -First char = 'T' -Need char = '5' - -/a[b-a]/ -Failed: range out of order in character class at offset 4 - -/a[]b/ -Failed: missing terminating ] for character class at offset 4 - -/a[/ -Failed: missing terminating ] for character class at offset 2 - -/*a/ -Failed: nothing to repeat at offset 0 - -/(*)b/ -Failed: nothing to repeat at offset 1 - -/abc)/ -Failed: unmatched parentheses at offset 3 - -/(abc/ -Failed: missing ) at offset 4 - -/a**/ -Failed: nothing to repeat at offset 2 - -/)(/ -Failed: unmatched parentheses at offset 0 - -/\1/ -Failed: back reference to non-existent subpattern at offset 2 - -/\2/ -Failed: back reference to non-existent subpattern at offset 2 - -/(a)|\2/ -Failed: back reference to non-existent subpattern at offset 6 - -/a[b-a]/i -Failed: range out of order in character class at offset 4 - -/a[]b/i -Failed: missing terminating ] for character class at offset 4 - -/a[/i -Failed: missing terminating ] for character class at offset 2 - -/*a/i -Failed: nothing to repeat at offset 0 - -/(*)b/i -Failed: nothing to repeat at offset 1 - -/abc)/i -Failed: unmatched parentheses at offset 3 - -/(abc/i -Failed: missing ) at offset 4 - -/a**/i -Failed: nothing to repeat at offset 2 - -/)(/i -Failed: unmatched parentheses at offset 0 - -/:(?:/ -Failed: missing ) at offset 4 - -/(?<%)b/ -Failed: unrecognized character after (?< at offset 0 - -/a(?{)b/ -Failed: unrecognized character after (? at offset 3 - -/a(?{{})b/ -Failed: unrecognized character after (? at offset 3 - -/a(?{}})b/ -Failed: unrecognized character after (? at offset 3 - -/a(?{"{"})b/ -Failed: unrecognized character after (? at offset 3 - -/a(?{"{"}})b/ -Failed: unrecognized character after (? at offset 3 - -/(?(1?)a|b)/ -Failed: malformed number after (?( at offset 4 - -/(?(1)a|b|c)/ -Failed: conditional group contains more than two branches at offset 10 - -/[a[:xyz:/ -Failed: missing terminating ] for character class at offset 8 - -/(?<=x+)y/ -Failed: lookbehind assertion is not fixed length at offset 6 - -/a{37,17}/ -Failed: numbers out of order in {} quantifier at offset 7 - -/abc/\ -Failed: \ at end of pattern at offset 4 - -/abc/\P -Failed: POSIX code 9: bad escape sequence at offset 4 - -/abc/\i -Failed: \ at end of pattern at offset 4 - -/(a)bc(d)/ -Capturing subpattern count = 2 -No options -First char = 'a' -Need char = 'd' - abcd - 0: abcd - 1: a - 2: d - abcd\C2 - 0: abcd - 1: a - 2: d - 2C d (1) - abcd\C5 - 0: abcd - 1: a - 2: d -copy substring 5 failed -7 - -/(.{20})/ -Capturing subpattern count = 1 -No options -No first char -No need char - abcdefghijklmnopqrstuvwxyz - 0: abcdefghijklmnopqrst - 1: abcdefghijklmnopqrst - abcdefghijklmnopqrstuvwxyz\C1 - 0: abcdefghijklmnopqrst - 1: abcdefghijklmnopqrst -copy substring 1 failed -6 - abcdefghijklmnopqrstuvwxyz\G1 - 0: abcdefghijklmnopqrst - 1: abcdefghijklmnopqrst - 1G abcdefghijklmnopqrst (20) - -/(.{15})/ -Capturing subpattern count = 1 -No options -No first char -No need char - abcdefghijklmnopqrstuvwxyz - 0: abcdefghijklmno - 1: abcdefghijklmno - abcdefghijklmnopqrstuvwxyz\C1\G1 - 0: abcdefghijklmno - 1: abcdefghijklmno - 1C abcdefghijklmno (15) - 1G abcdefghijklmno (15) - -/(.{16})/ -Capturing subpattern count = 1 -No options -No first char -No need char - abcdefghijklmnopqrstuvwxyz - 0: abcdefghijklmnop - 1: abcdefghijklmnop - abcdefghijklmnopqrstuvwxyz\C1\G1\L - 0: abcdefghijklmnop - 1: abcdefghijklmnop -copy substring 1 failed -6 - 1G abcdefghijklmnop (16) - 0L abcdefghijklmnop - 1L abcdefghijklmnop - -/^(a|(bc))de(f)/ -Capturing subpattern count = 3 -Options: anchored -No first char -Need char = 'f' - adef\G1\G2\G3\G4\L - 0: adef - 1: a - 2: <unset> - 3: f - 1G a (1) - 2G (0) - 3G f (1) -get substring 4 failed -7 - 0L adef - 1L a - 2L - 3L f - bcdef\G1\G2\G3\G4\L - 0: bcdef - 1: bc - 2: bc - 3: f - 1G bc (2) - 2G bc (2) - 3G f (1) -get substring 4 failed -7 - 0L bcdef - 1L bc - 2L bc - 3L f - adefghijk\C0 - 0: adef - 1: a - 2: <unset> - 3: f - 0C adef (4) - -/^abc\00def/ -Capturing subpattern count = 0 -Options: anchored -No first char -Need char = 'f' - abc\00def\L\C0 - 0: abc\x00def - 0C abc (7) - 0L abc - -/word ((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ -)((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ -)?)?)?)?)?)?)?)?)?otherword/M -Memory allocation (code space): 428 -Capturing subpattern count = 8 -No options -First char = 'w' -Need char = 'd' - -/.*X/D ------------------------------------------------------------------- - 0 8 Bra 0 - 3 Any* - 5 1 X - 8 8 Ket - 11 End ------------------------------------------------------------------- -Capturing subpattern count = 0 -No options -First char at start or follows \n -Need char = 'X' - -/.*X/Ds ------------------------------------------------------------------- - 0 8 Bra 0 - 3 Any* - 5 1 X - 8 8 Ket - 11 End ------------------------------------------------------------------- -Capturing subpattern count = 0 -Options: anchored dotall -No first char -Need char = 'X' - -/(.*X|^B)/D ------------------------------------------------------------------- - 0 21 Bra 0 - 3 8 Bra 1 - 6 Any* - 8 1 X - 11 7 Alt - 14 ^ - 15 1 B - 18 15 Ket - 21 21 Ket - 24 End ------------------------------------------------------------------- -Capturing subpattern count = 1 -No options -First char at start or follows \n -No need char - -/(.*X|^B)/Ds ------------------------------------------------------------------- - 0 21 Bra 0 - 3 8 Bra 1 - 6 Any* - 8 1 X - 11 7 Alt - 14 ^ - 15 1 B - 18 15 Ket - 21 21 Ket - 24 End ------------------------------------------------------------------- -Capturing subpattern count = 1 -Options: anchored dotall -No first char -No need char - -/(?s)(.*X|^B)/D ------------------------------------------------------------------- - 0 21 Bra 0 - 3 8 Bra 1 - 6 Any* - 8 1 X - 11 7 Alt - 14 ^ - 15 1 B - 18 15 Ket - 21 21 Ket - 24 End ------------------------------------------------------------------- -Capturing subpattern count = 1 -Options: anchored dotall -No first char -No need char - -/(?s:.*X|^B)/D ------------------------------------------------------------------- - 0 27 Bra 0 - 3 10 Bra 0 - 6 04 Opt - 8 Any* - 10 1 X - 13 9 Alt - 16 04 Opt - 18 ^ - 19 1 B - 22 19 Ket - 25 00 Opt - 27 27 Ket - 30 End ------------------------------------------------------------------- -Capturing subpattern count = 0 -No options -First char at start or follows \n -No need char - -/\Biss\B/+ -Capturing subpattern count = 0 -No options -First char = 'i' -Need char = 's' - Mississippi - 0: iss - 0+ issippi - -/\Biss\B/+P - Mississippi - 0: iss - 0+ issippi - -/iss/G+ -Capturing subpattern count = 0 -No options -First char = 'i' -Need char = 's' - Mississippi - 0: iss - 0+ issippi - 0: iss - 0+ ippi - -/\Biss\B/G+ -Capturing subpattern count = 0 -No options -First char = 'i' -Need char = 's' - Mississippi - 0: iss - 0+ issippi - -/\Biss\B/g+ -Capturing subpattern count = 0 -No options -First char = 'i' -Need char = 's' - Mississippi - 0: iss - 0+ issippi - 0: iss - 0+ ippi - *** Failers -No match - Mississippi\A -No match - -/(?<=[Ms])iss/g+ -Capturing subpattern count = 0 -No options -First char = 'i' -Need char = 's' - Mississippi - 0: iss - 0+ issippi - 0: iss - 0+ ippi - -/(?<=[Ms])iss/G+ -Capturing subpattern count = 0 -No options -First char = 'i' -Need char = 's' - Mississippi - 0: iss - 0+ issippi - -/^iss/g+ -Capturing subpattern count = 0 -Options: anchored -No first char -Need char = 's' - ississippi - 0: iss - 0+ issippi - -/.*iss/g+ -Capturing subpattern count = 0 -No options -First char at start or follows \n -Need char = 's' - abciss\nxyzisspqr - 0: abciss - 0+ \x0axyzisspqr - 0: xyziss - 0+ pqr - -/.i./+g -Capturing subpattern count = 0 -No options -No first char -Need char = 'i' - Mississippi - 0: Mis - 0+ sissippi - 0: sis - 0+ sippi - 0: sip - 0+ pi - Mississippi\A - 0: Mis - 0+ sissippi - 0: sis - 0+ sippi - 0: sip - 0+ pi - Missouri river - 0: Mis - 0+ souri river - 0: ri - 0+ river - 0: riv - 0+ er - Missouri river\A - 0: Mis - 0+ souri river - -/^.is/+g -Capturing subpattern count = 0 -Options: anchored -No first char -Need char = 's' - Mississippi - 0: Mis - 0+ sissippi - -/^ab\n/g+ -Capturing subpattern count = 0 -Options: anchored -No first char -Need char = 10 - ab\nab\ncd - 0: ab\x0a - 0+ ab\x0acd - -/^ab\n/mg+ -Capturing subpattern count = 0 -Options: multiline -First char at start or follows \n -Need char = 10 - ab\nab\ncd - 0: ab\x0a - 0+ ab\x0acd - 0: ab\x0a - 0+ cd - -/abc/ -Capturing subpattern count = 0 -No options -First char = 'a' -Need char = 'c' - -/abc|bac/ -Capturing subpattern count = 0 -No options -No first char -Need char = 'c' - -/(abc|bac)/ -Capturing subpattern count = 1 -No options -No first char -Need char = 'c' - -/(abc|(c|dc))/ -Capturing subpattern count = 2 -No options -No first char -Need char = 'c' - -/(abc|(d|de)c)/ -Capturing subpattern count = 2 -No options -No first char -Need char = 'c' - -/a*/ -Capturing subpattern count = 0 -No options -No first char -No need char - -/a+/ -Capturing subpattern count = 0 -No options -First char = 'a' -No need char - -/(baa|a+)/ -Capturing subpattern count = 1 -No options -No first char -Need char = 'a' - -/a{0,3}/ -Capturing subpattern count = 0 -No options -No first char -No need char - -/baa{3,}/ -Capturing subpattern count = 0 -No options -First char = 'b' -Need char = 'a' - -/"([^\\"]+|\\.)*"/ -Capturing subpattern count = 1 -No options -First char = '"' -Need char = '"' - -/(abc|ab[cd])/ -Capturing subpattern count = 1 -No options -First char = 'a' -No need char - -/(a|.)/ -Capturing subpattern count = 1 -No options -No first char -No need char - -/a|ba|\w/ -Capturing subpattern count = 0 -No options -No first char -No need char - -/abc(?=pqr)/ -Capturing subpattern count = 0 -No options -First char = 'a' -Need char = 'r' - -/...(?<=abc)/ -Capturing subpattern count = 0 -No options -No first char -No need char - -/abc(?!pqr)/ -Capturing subpattern count = 0 -No options -First char = 'a' -Need char = 'c' - -/ab./ -Capturing subpattern count = 0 -No options -First char = 'a' -Need char = 'b' - -/ab[xyz]/ -Capturing subpattern count = 0 -No options -First char = 'a' -Need char = 'b' - -/abc*/ -Capturing subpattern count = 0 -No options -First char = 'a' -Need char = 'b' - -/ab.c*/ -Capturing subpattern count = 0 -No options -First char = 'a' -Need char = 'b' - -/a.c*/ -Capturing subpattern count = 0 -No options -First char = 'a' -No need char - -/.c*/ -Capturing subpattern count = 0 -No options -No first char -No need char - -/ac*/ -Capturing subpattern count = 0 -No options -First char = 'a' -No need char - -/(a.c*|b.c*)/ -Capturing subpattern count = 1 -No options -No first char -No need char - -/a.c*|aba/ -Capturing subpattern count = 0 -No options -First char = 'a' -No need char - -/.+a/ -Capturing subpattern count = 0 -No options -No first char -Need char = 'a' - -/(?=abcda)a.*/ -Capturing subpattern count = 0 -No options -First char = 'a' -No need char - -/(?=a)a.*/ -Capturing subpattern count = 0 -No options -First char = 'a' -No need char - -/a(b)*/ -Capturing subpattern count = 1 -No options -First char = 'a' -No need char - -/a\d*/ -Capturing subpattern count = 0 -No options -First char = 'a' -No need char - -/ab\d*/ -Capturing subpattern count = 0 -No options -First char = 'a' -Need char = 'b' - -/a(\d)*/ -Capturing subpattern count = 1 -No options -First char = 'a' -No need char - -/abcde{0,0}/ -Capturing subpattern count = 0 -No options -First char = 'a' -Need char = 'd' - -/ab\d+/ -Capturing subpattern count = 0 -No options -First char = 'a' -Need char = 'b' - -/a(?(1)b)/ -Capturing subpattern count = 0 -No options -First char = 'a' -No need char - -/a(?(1)bag|big)/ -Capturing subpattern count = 0 -No options -First char = 'a' -Need char = 'g' - -/a(?(1)bag|big)*/ -Capturing subpattern count = 0 -No options -First char = 'a' -No need char - -/a(?(1)bag|big)+/ -Capturing subpattern count = 0 -No options -First char = 'a' -Need char = 'g' - -/a(?(1)b..|b..)/ -Capturing subpattern count = 0 -No options -First char = 'a' -Need char = 'b' - -/ab\d{0}e/ -Capturing subpattern count = 0 -No options -First char = 'a' -Need char = 'e' - -/a?b?/ -Capturing subpattern count = 0 -No options -No first char -No need char - a - 0: a - b - 0: b - ab - 0: ab - \ - 0: - *** Failers - 0: - \N -No match - -/|-/ -Capturing subpattern count = 0 -No options -No first char -No need char - abcd - 0: - -abc - 0: - \Nab-c - 0: - - *** Failers - 0: - \Nabc -No match - -/a*(b+)(z)(z)/P - aaaabbbbzzzz - 0: aaaabbbbzz - 1: bbbb - 2: z - 3: z - aaaabbbbzzzz\O0 - aaaabbbbzzzz\O1 - 0: aaaabbbbzz - aaaabbbbzzzz\O2 - 0: aaaabbbbzz - 1: bbbb - aaaabbbbzzzz\O3 - 0: aaaabbbbzz - 1: bbbb - 2: z - aaaabbbbzzzz\O4 - 0: aaaabbbbzz - 1: bbbb - 2: z - 3: z - aaaabbbbzzzz\O5 - 0: aaaabbbbzz - 1: bbbb - 2: z - 3: z - -/^.?abcd/S -Capturing subpattern count = 0 -Options: anchored -No first char -Need char = 'd' -Study returned NULL - -/\( # ( at start - (?: # Non-capturing bracket - (?>[^()]+) # Either a sequence of non-brackets (no backtracking) - | # Or - (?R) # Recurse - i.e. nested bracketed string - )* # Zero or more contents - \) # Closing ) - /x -Capturing subpattern count = 0 -Options: extended -First char = '(' -Need char = ')' - (abcd) - 0: (abcd) - (abcd)xyz - 0: (abcd) - xyz(abcd) - 0: (abcd) - (ab(xy)cd)pqr - 0: (ab(xy)cd) - (ab(xycd)pqr - 0: (xycd) - () abc () - 0: () - 12(abcde(fsh)xyz(foo(bar))lmno)89 - 0: (abcde(fsh)xyz(foo(bar))lmno) - *** Failers -No match - abcd -No match - abcd) -No match - (abcd -No match - -/\( ( (?>[^()]+) | (?R) )* \) /xg -Capturing subpattern count = 1 -Options: extended -First char = '(' -Need char = ')' - (ab(xy)cd)pqr - 0: (ab(xy)cd) - 1: cd - 1(abcd)(x(y)z)pqr - 0: (abcd) - 1: abcd - 0: (x(y)z) - 1: z - -/\( (?: (?>[^()]+) | (?R) ) \) /x -Capturing subpattern count = 0 -Options: extended -First char = '(' -Need char = ')' - (abcd) - 0: (abcd) - (ab(xy)cd) - 0: (xy) - (a(b(c)d)e) - 0: (c) - ((ab)) - 0: ((ab)) - *** Failers -No match - () -No match - -/\( (?: (?>[^()]+) | (?R) )? \) /x -Capturing subpattern count = 0 -Options: extended -First char = '(' -Need char = ')' - () - 0: () - 12(abcde(fsh)xyz(foo(bar))lmno)89 - 0: (fsh) - -/\( ( (?>[^()]+) | (?R) )* \) /x -Capturing subpattern count = 1 -Options: extended -First char = '(' -Need char = ')' - (ab(xy)cd) - 0: (ab(xy)cd) - 1: cd - -/\( ( ( (?>[^()]+) | (?R) )* ) \) /x -Capturing subpattern count = 2 -Options: extended -First char = '(' -Need char = ')' - (ab(xy)cd) - 0: (ab(xy)cd) - 1: ab(xy)cd - 2: cd - -/\( (123)? ( ( (?>[^()]+) | (?R) )* ) \) /x -Capturing subpattern count = 3 -Options: extended -First char = '(' -Need char = ')' - (ab(xy)cd) - 0: (ab(xy)cd) - 1: <unset> - 2: ab(xy)cd - 3: cd - (123ab(xy)cd) - 0: (123ab(xy)cd) - 1: 123 - 2: ab(xy)cd - 3: cd - -/\( ( (123)? ( (?>[^()]+) | (?R) )* ) \) /x -Capturing subpattern count = 3 -Options: extended -First char = '(' -Need char = ')' - (ab(xy)cd) - 0: (ab(xy)cd) - 1: ab(xy)cd - 2: <unset> - 3: cd - (123ab(xy)cd) - 0: (123ab(xy)cd) - 1: 123ab(xy)cd - 2: 123 - 3: cd - -/\( (((((((((( ( (?>[^()]+) | (?R) )* )))))))))) \) /x -Capturing subpattern count = 11 -Options: extended -First char = '(' -Need char = ')' - (ab(xy)cd) - 0: (ab(xy)cd) - 1: ab(xy)cd - 2: ab(xy)cd - 3: ab(xy)cd - 4: ab(xy)cd - 5: ab(xy)cd - 6: ab(xy)cd - 7: ab(xy)cd - 8: ab(xy)cd - 9: ab(xy)cd -10: ab(xy)cd -11: cd - -/\( ( ( (?>[^()<>]+) | ((?>[^()]+)) | (?R) )* ) \) /x -Capturing subpattern count = 3 -Options: extended -First char = '(' -Need char = ')' - (abcd(xyz<p>qrs)123) - 0: (abcd(xyz<p>qrs)123) - 1: abcd(xyz<p>qrs)123 - 2: 123 - 3: <p>qrs - -/\( ( ( (?>[^()]+) | ((?R)) )* ) \) /x -Capturing subpattern count = 3 -Options: extended -First char = '(' -Need char = ')' - (ab(cd)ef) - 0: (ab(cd)ef) - 1: ab(cd)ef - 2: ef - 3: (cd) - (ab(cd(ef)gh)ij) - 0: (ab(cd(ef)gh)ij) - 1: ab(cd(ef)gh)ij - 2: ij - 3: (cd(ef)gh) - -/^[[:alnum:]]/D ------------------------------------------------------------------- - 0 37 Bra 0 - 3 ^ - 4 [0-9A-Za-z] - 37 37 Ket - 40 End ------------------------------------------------------------------- -Capturing subpattern count = 0 -Options: anchored -No first char -No need char - -/^[[:alpha:]]/D ------------------------------------------------------------------- - 0 37 Bra 0 - 3 ^ - 4 [A-Za-z] - 37 37 Ket - 40 End ------------------------------------------------------------------- -Capturing subpattern count = 0 -Options: anchored -No first char -No need char - -/^[[:ascii:]]/D ------------------------------------------------------------------- - 0 37 Bra 0 - 3 ^ - 4 [\x00-\x7f] - 37 37 Ket - 40 End ------------------------------------------------------------------- -Capturing subpattern count = 0 -Options: anchored -No first char -No need char - -/^[[:cntrl:]]/D ------------------------------------------------------------------- - 0 37 Bra 0 - 3 ^ - 4 [\x00-\x1f\x7f] - 37 37 Ket - 40 End ------------------------------------------------------------------- -Capturing subpattern count = 0 -Options: anchored -No first char -No need char - -/^[[:digit:]]/D ------------------------------------------------------------------- - 0 37 Bra 0 - 3 ^ - 4 [0-9] - 37 37 Ket - 40 End ------------------------------------------------------------------- -Capturing subpattern count = 0 -Options: anchored -No first char -No need char - -/^[[:graph:]]/D ------------------------------------------------------------------- - 0 37 Bra 0 - 3 ^ - 4 [!-~] - 37 37 Ket - 40 End ------------------------------------------------------------------- -Capturing subpattern count = 0 -Options: anchored -No first char -No need char - -/^[[:lower:]]/D ------------------------------------------------------------------- - 0 37 Bra 0 - 3 ^ - 4 [a-z] - 37 37 Ket - 40 End ------------------------------------------------------------------- -Capturing subpattern count = 0 -Options: anchored -No first char -No need char - -/^[[:print:]]/D ------------------------------------------------------------------- - 0 37 Bra 0 - 3 ^ - 4 [ -~] - 37 37 Ket - 40 End ------------------------------------------------------------------- -Capturing subpattern count = 0 -Options: anchored -No first char -No need char - -/^[[:punct:]]/D ------------------------------------------------------------------- - 0 37 Bra 0 - 3 ^ - 4 [!-/:-@[-`{-~] - 37 37 Ket - 40 End ------------------------------------------------------------------- -Capturing subpattern count = 0 -Options: anchored -No first char -No need char - -/^[[:space:]]/D ------------------------------------------------------------------- - 0 37 Bra 0 - 3 ^ - 4 [\x09-\x0d ] - 37 37 Ket - 40 End ------------------------------------------------------------------- -Capturing subpattern count = 0 -Options: anchored -No first char -No need char - -/^[[:upper:]]/D ------------------------------------------------------------------- - 0 37 Bra 0 - 3 ^ - 4 [A-Z] - 37 37 Ket - 40 End ------------------------------------------------------------------- -Capturing subpattern count = 0 -Options: anchored -No first char -No need char - -/^[[:xdigit:]]/D ------------------------------------------------------------------- - 0 37 Bra 0 - 3 ^ - 4 [0-9A-Fa-f] - 37 37 Ket - 40 End ------------------------------------------------------------------- -Capturing subpattern count = 0 -Options: anchored -No first char -No need char - -/^[[:word:]]/D ------------------------------------------------------------------- - 0 37 Bra 0 - 3 ^ - 4 [0-9A-Z_a-z] - 37 37 Ket - 40 End ------------------------------------------------------------------- -Capturing subpattern count = 0 -Options: anchored -No first char -No need char - -/^[[:^cntrl:]]/D ------------------------------------------------------------------- - 0 37 Bra 0 - 3 ^ - 4 [ -~\x80-\xff] - 37 37 Ket - 40 End ------------------------------------------------------------------- -Capturing subpattern count = 0 -Options: anchored -No first char -No need char - -/^[12[:^digit:]]/D ------------------------------------------------------------------- - 0 37 Bra 0 - 3 ^ - 4 [\x00-/1-2:-\xff] - 37 37 Ket - 40 End ------------------------------------------------------------------- -Capturing subpattern count = 0 -Options: anchored -No first char -No need char - -/[01[:alpha:]%]/D ------------------------------------------------------------------- - 0 36 Bra 0 - 3 [%0-1A-Za-z] - 36 36 Ket - 39 End ------------------------------------------------------------------- -Capturing subpattern count = 0 -No options -No first char -No need char - -/[[.ch.]]/ -Failed: POSIX collating elements are not supported at offset 1 - -/[[=ch=]]/ -Failed: POSIX collating elements are not supported at offset 1 - -/[[:rhubarb:]]/ -Failed: unknown POSIX class name at offset 3 - -/[[:upper:]]/i -Capturing subpattern count = 0 -Options: caseless -No first char -No need char - A - 0: A - a - 0: a - -/[[:lower:]]/i -Capturing subpattern count = 0 -Options: caseless -No first char -No need char - A - 0: A - a - 0: a - -/((?-i)[[:lower:]])[[:lower:]]/i -Capturing subpattern count = 1 -Options: caseless -Case state changes -No first char -No need char - ab - 0: ab - 1: a - aB - 0: aB - 1: a - *** Failers - 0: ai - 1: a - Ab -No match - AB -No match - -/ End of test input / -Capturing subpattern count = 0 -No options -First char = ' ' -Need char = ' ' - |