summaryrefslogtreecommitdiff
path: root/src/third_party/pcre-8.30/testdata/testinput2
diff options
context:
space:
mode:
Diffstat (limited to 'src/third_party/pcre-8.30/testdata/testinput2')
-rw-r--r--src/third_party/pcre-8.30/testdata/testinput23604
1 files changed, 0 insertions, 3604 deletions
diff --git a/src/third_party/pcre-8.30/testdata/testinput2 b/src/third_party/pcre-8.30/testdata/testinput2
deleted file mode 100644
index bdae8895d5b..00000000000
--- a/src/third_party/pcre-8.30/testdata/testinput2
+++ /dev/null
@@ -1,3604 +0,0 @@
-/-- This set of tests is not Perl-compatible. It checks on special features
- of PCRE's API, error diagnostics, and the compiled code of some patterns.
- It also checks the non-Perl syntax the PCRE supports (Python, .NET,
- Oniguruma). Finally, there are some tests where PCRE and Perl differ,
- either because PCRE can't be compatible, or there is a possible Perl
- bug.
-
- NOTE: This is a non-UTF set of tests. When UTF support is needed, use
- test 5, and if Unicode Property Support is needed, use test 7. --/
-
-/(a)b|/I
-
-/abc/I
- abc
- defabc
- \Aabc
- *** Failers
- \Adefabc
- ABC
-
-/^abc/I
- abc
- \Aabc
- *** Failers
- defabc
- \Adefabc
-
-/a+bc/I
-
-/a*bc/I
-
-/a{3}bc/I
-
-/(abc|a+z)/I
-
-/^abc$/I
- abc
- *** Failers
- def\nabc
-
-/ab\idef/X
-
-/(?X)ab\idef/X
-
-/x{5,4}/
-
-/z{65536}/
-
-/[abcd/
-
-/(?X)[\B]/
-
-/(?X)[\R]/
-
-/(?X)[\X]/
-
-/[\B]/BZ
-
-/[\R]/BZ
-
-/[\X]/BZ
-
-/[z-a]/
-
-/^*/
-
-/(abc/
-
-/(?# abc/
-
-/(?z)abc/
-
-/.*b/I
-
-/.*?b/I
-
-/cat|dog|elephant/I
- this sentence eventually mentions a cat
- this sentences rambles on and on for a while and then reaches elephant
-
-/cat|dog|elephant/IS
- this sentence eventually mentions a cat
- this sentences rambles on and on for a while and then reaches elephant
-
-/cat|dog|elephant/IiS
- this sentence eventually mentions a CAT cat
- this sentences rambles on and on for a while to elephant ElePhant
-
-/a|[bcd]/IS
-
-/(a|[^\dZ])/IS
-
-/(a|b)*[\s]/IS
-
-/(ab\2)/
-
-/{4,5}abc/
-
-/(a)(b)(c)\2/I
- abcb
- \O0abcb
- \O3abcb
- \O6abcb
- \O9abcb
- \O12abcb
-
-/(a)bc|(a)(b)\2/I
- abc
- \O0abc
- \O3abc
- \O6abc
- aba
- \O0aba
- \O3aba
- \O6aba
- \O9aba
- \O12aba
-
-/abc$/IE
- abc
- *** Failers
- abc\n
- abc\ndef
-
-/(a)(b)(c)(d)(e)\6/
-
-/the quick brown fox/I
- the quick brown fox
- this is a line with the quick brown fox
-
-/the quick brown fox/IA
- the quick brown fox
- *** Failers
- this is a line with the quick brown fox
-
-/ab(?z)cd/
-
-/^abc|def/I
- abcdef
- abcdef\B
-
-/.*((abc)$|(def))/I
- defabc
- \Zdefabc
-
-/)/
-
-/a[]b/
-
-/[^aeiou ]{3,}/I
- co-processors, and for
-
-/<.*>/I
- abc<def>ghi<klm>nop
-
-/<.*?>/I
- abc<def>ghi<klm>nop
-
-/<.*>/IU
- abc<def>ghi<klm>nop
-
-/(?U)<.*>/I
- abc<def>ghi<klm>nop
-
-/<.*?>/IU
- abc<def>ghi<klm>nop
-
-/={3,}/IU
- abc========def
-
-/(?U)={3,}?/I
- abc========def
-
-/(?<!bar|cattle)foo/I
- foo
- catfoo
- *** Failers
- the barfoo
- and cattlefoo
-
-/(?<=a+)b/
-
-/(?<=aaa|b{0,3})b/
-
-/(?<!(foo)a\1)bar/
-
-/(?i)abc/I
-
-/(a|(?m)a)/I
-
-/(?i)^1234/I
-
-/(^b|(?i)^d)/I
-
-/(?s).*/I
-
-/[abcd]/IS
-
-/(?i)[abcd]/IS
-
-/(?m)[xy]|(b|c)/IS
-
-/(^a|^b)/Im
-
-/(?i)(^a|^b)/Im
-
-/(a)(?(1)a|b|c)/
-
-/(?(?=a)a|b|c)/
-
-/(?(1a)/
-
-/(?(1a))/
-
-/(?(?i))/
-
-/(?(abc))/
-
-/(?(?<ab))/
-
-/((?s)blah)\s+\1/I
-
-/((?i)blah)\s+\1/I
-
-/((?i)b)/IDZS
-
-/(a*b|(?i:c*(?-i)d))/IS
-
-/a$/I
- a
- a\n
- *** Failers
- \Za
- \Za\n
-
-/a$/Im
- a
- a\n
- \Za\n
- *** Failers
- \Za
-
-/\Aabc/Im
-
-/^abc/Im
-
-/^((a+)(?U)([ab]+)(?-U)([bc]+)(\w*))/I
- aaaaabbbbbcccccdef
-
-/(?<=foo)[ab]/IS
-
-/(?<!foo)(alpha|omega)/IS
-
-/(?!alphabet)[ab]/IS
-
-/(?<=foo\n)^bar/Im
- foo\nbarbar
- ***Failers
- rhubarb
- barbell
- abc\nbarton
-
-/^(?<=foo\n)bar/Im
- foo\nbarbar
- ***Failers
- rhubarb
- barbell
- abc\nbarton
-
-/(?>^abc)/Im
- abc
- def\nabc
- *** Failers
- defabc
-
-/(?<=ab(c+)d)ef/
-
-/(?<=ab(?<=c+)d)ef/
-
-/(?<=ab(c|de)f)g/
-
-/The next three are in testinput2 because they have variable length branches/
-
-/(?<=bullock|donkey)-cart/I
- the bullock-cart
- a donkey-cart race
- *** Failers
- cart
- horse-and-cart
-
-/(?<=ab(?i)x|y|z)/I
-
-/(?>.*)(?<=(abcd)|(xyz))/I
- alphabetabcd
- endingxyz
-
-/(?<=ab(?i)x(?-i)y|(?i)z|b)ZZ/I
- abxyZZ
- abXyZZ
- ZZZ
- zZZ
- bZZ
- BZZ
- *** Failers
- ZZ
- abXYZZ
- zzz
- bzz
-
-/(?<!(foo)a)bar/I
- bar
- foobbar
- *** Failers
- fooabar
-
-/This one is here because Perl 5.005_02 doesn't fail it/I
-
-/^(a)?(?(1)a|b)+$/I
- *** Failers
- a
-
-/This one is here because Perl behaves differently; see also the following/I
-
-/^(a\1?){4}$/I
- aaaa
- aaaaaa
-
-/Perl does not fail these two for the final subjects. Neither did PCRE until/
-/release 8.01. The problem is in backtracking into a subpattern that contains/
-/a recursive reference to itself. PCRE has now made these into atomic patterns./
-
-/^(xa|=?\1a){2}$/
- xa=xaa
- ** Failers
- xa=xaaa
-
-/^(xa|=?\1a)+$/
- xa=xaa
- ** Failers
- xa=xaaa
-
-/These are syntax tests from Perl 5.005/I
-
-/a[b-a]/
-
-/a[]b/
-
-/a[/
-
-/*a/
-
-/(*)b/
-
-/abc)/
-
-/(abc/
-
-/a**/
-
-/)(/
-
-/\1/
-
-/\2/
-
-/(a)|\2/
-
-/a[b-a]/Ii
-
-/a[]b/Ii
-
-/a[/Ii
-
-/*a/Ii
-
-/(*)b/Ii
-
-/abc)/Ii
-
-/(abc/Ii
-
-/a**/Ii
-
-/)(/Ii
-
-/:(?:/
-
-/(?<%)b/
-
-/a(?{)b/
-
-/a(?{{})b/
-
-/a(?{}})b/
-
-/a(?{"{"})b/
-
-/a(?{"{"}})b/
-
-/(?(1?)a|b)/
-
-/[a[:xyz:/
-
-/(?<=x+)y/
-
-/a{37,17}/
-
-/abc/\
-
-/abc/\i
-
-/(a)bc(d)/I
- abcd
- abcd\C2
- abcd\C5
-
-/(.{20})/I
- abcdefghijklmnopqrstuvwxyz
- abcdefghijklmnopqrstuvwxyz\C1
- abcdefghijklmnopqrstuvwxyz\G1
-
-/(.{15})/I
- abcdefghijklmnopqrstuvwxyz
- abcdefghijklmnopqrstuvwxyz\C1\G1
-
-/(.{16})/I
- abcdefghijklmnopqrstuvwxyz
- abcdefghijklmnopqrstuvwxyz\C1\G1\L
-
-/^(a|(bc))de(f)/I
- adef\G1\G2\G3\G4\L
- bcdef\G1\G2\G3\G4\L
- adefghijk\C0
-
-/^abc\00def/I
- abc\00def\L\C0
-
-/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/I
-
-/.*X/IDZ
-
-/.*X/IDZs
-
-/(.*X|^B)/IDZ
-
-/(.*X|^B)/IDZs
-
-/(?s)(.*X|^B)/IDZ
-
-/(?s:.*X|^B)/IDZ
-
-/\Biss\B/I+
- Mississippi
-
-/iss/IG+
- Mississippi
-
-/\Biss\B/IG+
- Mississippi
-
-/\Biss\B/Ig+
- Mississippi
- *** Failers
- Mississippi\A
-
-/(?<=[Ms])iss/Ig+
- Mississippi
-
-/(?<=[Ms])iss/IG+
- Mississippi
-
-/^iss/Ig+
- ississippi
-
-/.*iss/Ig+
- abciss\nxyzisspqr
-
-/.i./I+g
- Mississippi
- Mississippi\A
- Missouri river
- Missouri river\A
-
-/^.is/I+g
- Mississippi
-
-/^ab\n/Ig+
- ab\nab\ncd
-
-/^ab\n/Img+
- ab\nab\ncd
-
-/abc/I
-
-/abc|bac/I
-
-/(abc|bac)/I
-
-/(abc|(c|dc))/I
-
-/(abc|(d|de)c)/I
-
-/a*/I
-
-/a+/I
-
-/(baa|a+)/I
-
-/a{0,3}/I
-
-/baa{3,}/I
-
-/"([^\\"]+|\\.)*"/I
-
-/(abc|ab[cd])/I
-
-/(a|.)/I
-
-/a|ba|\w/I
-
-/abc(?=pqr)/I
-
-/...(?<=abc)/I
-
-/abc(?!pqr)/I
-
-/ab./I
-
-/ab[xyz]/I
-
-/abc*/I
-
-/ab.c*/I
-
-/a.c*/I
-
-/.c*/I
-
-/ac*/I
-
-/(a.c*|b.c*)/I
-
-/a.c*|aba/I
-
-/.+a/I
-
-/(?=abcda)a.*/I
-
-/(?=a)a.*/I
-
-/a(b)*/I
-
-/a\d*/I
-
-/ab\d*/I
-
-/a(\d)*/I
-
-/abcde{0,0}/I
-
-/ab\d+/I
-
-/a(?(1)b)(.)/I
-
-/a(?(1)bag|big)(.)/I
-
-/a(?(1)bag|big)*(.)/I
-
-/a(?(1)bag|big)+(.)/I
-
-/a(?(1)b..|b..)(.)/I
-
-/ab\d{0}e/I
-
-/a?b?/I
- a
- b
- ab
- \
- *** Failers
- \N
-
-/|-/I
- abcd
- -abc
- \Nab-c
- *** Failers
- \Nabc
-
-/^.?abcd/IS
-
-/\( # ( 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 )
- /Ix
- (abcd)
- (abcd)xyz
- xyz(abcd)
- (ab(xy)cd)pqr
- (ab(xycd)pqr
- () abc ()
- 12(abcde(fsh)xyz(foo(bar))lmno)89
- *** Failers
- abcd
- abcd)
- (abcd
-
-/\( ( (?>[^()]+) | (?R) )* \) /Ixg
- (ab(xy)cd)pqr
- 1(abcd)(x(y)z)pqr
-
-/\( (?: (?>[^()]+) | (?R) ) \) /Ix
- (abcd)
- (ab(xy)cd)
- (a(b(c)d)e)
- ((ab))
- *** Failers
- ()
-
-/\( (?: (?>[^()]+) | (?R) )? \) /Ix
- ()
- 12(abcde(fsh)xyz(foo(bar))lmno)89
-
-/\( ( (?>[^()]+) | (?R) )* \) /Ix
- (ab(xy)cd)
-
-/\( ( ( (?>[^()]+) | (?R) )* ) \) /Ix
- (ab(xy)cd)
-
-/\( (123)? ( ( (?>[^()]+) | (?R) )* ) \) /Ix
- (ab(xy)cd)
- (123ab(xy)cd)
-
-/\( ( (123)? ( (?>[^()]+) | (?R) )* ) \) /Ix
- (ab(xy)cd)
- (123ab(xy)cd)
-
-/\( (((((((((( ( (?>[^()]+) | (?R) )* )))))))))) \) /Ix
- (ab(xy)cd)
-
-/\( ( ( (?>[^()<>]+) | ((?>[^()]+)) | (?R) )* ) \) /Ix
- (abcd(xyz<p>qrs)123)
-
-/\( ( ( (?>[^()]+) | ((?R)) )* ) \) /Ix
- (ab(cd)ef)
- (ab(cd(ef)gh)ij)
-
-/^[[:alnum:]]/DZ
-
-/^[[:^alnum:]]/DZ
-
-/^[[:alpha:]]/DZ
-
-/^[[:^alpha:]]/DZ
-
-/[_[:alpha:]]/IS
-
-/^[[:ascii:]]/DZ
-
-/^[[:^ascii:]]/DZ
-
-/^[[:blank:]]/DZ
-
-/^[[:^blank:]]/DZ
-
-/[\n\x0b\x0c\x0d[:blank:]]/IS
-
-/^[[:cntrl:]]/DZ
-
-/^[[:digit:]]/DZ
-
-/^[[:graph:]]/DZ
-
-/^[[:lower:]]/DZ
-
-/^[[:print:]]/DZ
-
-/^[[:punct:]]/DZ
-
-/^[[:space:]]/DZ
-
-/^[[:upper:]]/DZ
-
-/^[[:xdigit:]]/DZ
-
-/^[[:word:]]/DZ
-
-/^[[:^cntrl:]]/DZ
-
-/^[12[:^digit:]]/DZ
-
-/^[[:^blank:]]/DZ
-
-/[01[:alpha:]%]/DZ
-
-/[[.ch.]]/I
-
-/[[=ch=]]/I
-
-/[[:rhubarb:]]/I
-
-/[[:upper:]]/Ii
- A
- a
-
-/[[:lower:]]/Ii
- A
- a
-
-/((?-i)[[:lower:]])[[:lower:]]/Ii
- ab
- aB
- *** Failers
- Ab
- AB
-
-/[\200-\110]/I
-
-/^(?(0)f|b)oo/I
-
-/This one's here because of the large output vector needed/I
-
-/(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\d+(?:\s|$))(\w+)\s+(\270)/I
- \O900 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 ABC ABC
-
-/This one's here because Perl does this differently and PCRE can't at present/I
-
-/(main(O)?)+/I
- mainmain
- mainOmain
-
-/These are all cases where Perl does it differently (nested captures)/I
-
-/^(a(b)?)+$/I
- aba
-
-/^(aa(bb)?)+$/I
- aabbaa
-
-/^(aa|aa(bb))+$/I
- aabbaa
-
-/^(aa(bb)??)+$/I
- aabbaa
-
-/^(?:aa(bb)?)+$/I
- aabbaa
-
-/^(aa(b(b))?)+$/I
- aabbaa
-
-/^(?:aa(b(b))?)+$/I
- aabbaa
-
-/^(?:aa(b(?:b))?)+$/I
- aabbaa
-
-/^(?:aa(bb(?:b))?)+$/I
- aabbbaa
-
-/^(?:aa(b(?:bb))?)+$/I
- aabbbaa
-
-/^(?:aa(?:b(b))?)+$/I
- aabbaa
-
-/^(?:aa(?:b(bb))?)+$/I
- aabbbaa
-
-/^(aa(b(bb))?)+$/I
- aabbbaa
-
-/^(aa(bb(bb))?)+$/I
- aabbbbaa
-
-/--------------------------------------------------------------------/I
-
-/#/IxDZ
-
-/a#/IxDZ
-
-/[\s]/DZ
-
-/[\S]/DZ
-
-/a(?i)b/DZ
- ab
- aB
- *** Failers
- AB
-
-/(a(?i)b)/DZ
- ab
- aB
- *** Failers
- AB
-
-/ (?i)abc/IxDZ
-
-/#this is a comment
- (?i)abc/IxDZ
-
-/123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890/DZ
-
-/\Q123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890/DZ
-
-/\Q\E/DZ
- \
-
-/\Q\Ex/DZ
-
-/ \Q\E/DZ
-
-/a\Q\E/DZ
- abc
- bca
- bac
-
-/a\Q\Eb/DZ
- abc
-
-/\Q\Eabc/DZ
-
-/x*+\w/DZ
- *** Failers
- xxxxx
-
-/x?+/DZ
-
-/x++/DZ
-
-/x{1,3}+/DZ
-
-/(x)*+/DZ
-
-/^(\w++|\s++)*$/I
- now is the time for all good men to come to the aid of the party
- *** Failers
- this is not a line with only words and spaces!
-
-/(\d++)(\w)/I
- 12345a
- *** Failers
- 12345+
-
-/a++b/I
- aaab
-
-/(a++b)/I
- aaab
-
-/(a++)b/I
- aaab
-
-/([^()]++|\([^()]*\))+/I
- ((abc(ade)ufh()()x
-
-/\(([^()]++|\([^()]+\))+\)/I
- (abc)
- (abc(def)xyz)
- *** Failers
- ((()aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-
-/(abc){1,3}+/DZ
-
-/a+?+/I
-
-/a{2,3}?+b/I
-
-/(?U)a+?+/I
-
-/a{2,3}?+b/IU
-
-/x(?U)a++b/DZ
- xaaaab
-
-/(?U)xa++b/DZ
- xaaaab
-
-/^((a+)(?U)([ab]+)(?-U)([bc]+)(\w*))/DZ
-
-/^x(?U)a+b/DZ
-
-/^x(?U)(a+)b/DZ
-
-/[.x.]/I
-
-/[=x=]/I
-
-/[:x:]/I
-
-/\l/I
-
-/\L/I
-
-/\N{name}/I
-
-/\u/I
-
-/\U/I
-
-/[/I
-
-/[a-/I
-
-/[[:space:]/I
-
-/[\s]/IDZ
-
-/[[:space:]]/IDZ
-
-/[[:space:]abcde]/IDZ
-
-/< (?: (?(R) \d++ | [^<>]*+) | (?R)) * >/Ix
- <>
- <abcd>
- <abc <123> hij>
- <abc <def> hij>
- <abc<>def>
- <abc<>
- *** Failers
- <abc
-
-|8J\$WE\<\.rX\+ix\[d1b\!H\#\?vV0vrK\:ZH1\=2M\>iV\;\?aPhFB\<\*vW\@QW\@sO9\}cfZA\-i\'w\%hKd6gt1UJP\,15_\#QY\$M\^Mss_U\/\]\&LK9\[5vQub\^w\[KDD\<EjmhUZ\?\.akp2dF\>qmj\;2\}YWFdYx\.Ap\]hjCPTP\(n28k\+3\;o\&WXqs\/gOXdr\$\:r\'do0\;b4c\(f_Gr\=\"\\4\)\[01T7ajQJvL\$W\~mL_sS\/4h\:x\*\[ZN\=KLs\&L5zX\/\/\>it\,o\:aU\(\;Z\>pW\&T7oP\'2K\^E\:x9\'c\[\%z\-\,64JQ5AeH_G\#KijUKghQw\^\\vea3a\?kka_G\$8\#\`\*kynsxzBLru\'\]k_\[7FrVx\}\^\=\$blx\>s\-N\%j\;D\*aZDnsw\:YKZ\%Q\.Kne9\#hP\?\+b3\(SOvL\,\^\;\&u5\@\?5C5Bhb\=m\-vEh_L15Jl\]U\)0RP6\{q\%L\^_z5E\'Dw6X\b|IDZ
-
-|\$\<\.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
-
-/(.*)\d+\1/I
-
-/(.*)\d+/I
-
-/(.*)\d+\1/Is
-
-/(.*)\d+/Is
-
-/(.*(xyz))\d+\2/I
-
-/((.*))\d+\1/I
- abc123bc
-
-/a[b]/I
-
-/(?=a).*/I
-
-/(?=abc).xyz/IiI
-
-/(?=abc)(?i).xyz/I
-
-/(?=a)(?=b)/I
-
-/(?=.)a/I
-
-/((?=abcda)a)/I
-
-/((?=abcda)ab)/I
-
-/()a/I
-
-/(?(1)ab|ac)(.)/I
-
-/(?(1)abz|acz)(.)/I
-
-/(?(1)abz)(.)/I
-
-/(?(1)abz)(1)23/I
-
-/(a)+/I
-
-/(a){2,3}/I
-
-/(a)*/I
-
-/[a]/I
-
-/[ab]/I
-
-/[ab]/IS
-
-/[^a]/I
-
-/\d456/I
-
-/\d456/IS
-
-/a^b/I
-
-/^a/Im
- abcde
- xy\nabc
- *** Failers
- xyabc
-
-/c|abc/I
-
-/(?i)[ab]/IS
-
-/[ab](?i)cd/IS
-
-/abc(?C)def/I
- abcdef
- 1234abcdef
- *** Failers
- abcxyz
- abcxyzf
-
-/abc(?C)de(?C1)f/I
- 123abcdef
-
-/(?C1)\dabc(?C2)def/IS
- 1234abcdef
- *** Failers
- abcdef
-
-/(?C1)\dabc(?C2)def/ISS
- 1234abcdef
- *** Failers
- abcdef
-
-/(?C255)ab/I
-
-/(?C256)ab/I
-
-/(?Cab)xx/I
-
-/(?C12vr)x/I
-
-/abc(?C)def/I
- *** Failers
- \x83\x0\x61bcdef
-
-/(abc)(?C)de(?C1)f/I
- 123abcdef
- 123abcdef\C+
- 123abcdef\C-
- *** Failers
- 123abcdef\C!1
-
-/(?C0)(abc(?C1))*/I
- abcabcabc
- abcabc\C!1!3
- *** Failers
- abcabcabc\C!1!3
-
-/(\d{3}(?C))*/I
- 123\C+
- 123456\C+
- 123456789\C+
-
-/((xyz)(?C)p|(?C1)xyzabc)/I
- xyzabc\C+
-
-/(X)((xyz)(?C)p|(?C1)xyzabc)/I
- Xxyzabc\C+
-
-/(?=(abc))(?C)abcdef/I
- abcdef\C+
-
-/(?!(abc)(?C1)d)(?C2)abcxyz/I
- abcxyz\C+
-
-/(?<=(abc)(?C))xyz/I
- abcxyz\C+
-
-/a(b+)(c*)(?C1)/I
- abbbbbccc\C*1
-
-/a(b+?)(c*?)(?C1)/I
- abbbbbccc\C*1
-
-/(?C)abc/I
-
-/(?C)^abc/I
-
-/(?C)a|b/IS
-
-/(?R)/I
-
-/(a|(?R))/I
-
-/(ab|(bc|(de|(?R))))/I
-
-/x(ab|(bc|(de|(?R))))/I
- xab
- xbc
- xde
- xxab
- xxxab
- *** Failers
- xyab
-
-/(ab|(bc|(de|(?1))))/I
-
-/x(ab|(bc|(de|(?1)x)x)x)/I
-
-/^([^()]|\((?1)*\))*$/I
- abc
- a(b)c
- a(b(c))d
- *** Failers)
- a(b(c)d
-
-/^>abc>([^()]|\((?1)*\))*<xyz<$/I
- >abc>123<xyz<
- >abc>1(2)3<xyz<
- >abc>(1(2)3)<xyz<
-
-/(a(?1)b)/DZ
-
-/(a(?1)+b)/DZ
-
-/^(\d+|\((?1)([+*-])(?1)\)|-(?1))$/I
- 12
- (((2+2)*-3)-7)
- -12
- *** Failers
- ((2+2)*-3)-7)
-
-/^(x(y|(?1){2})z)/I
- xyz
- xxyzxyzz
- *** Failers
- xxyzz
- xxyzxyzxyzz
-
-/((< (?: (?(R) \d++ | [^<>]*+) | (?2)) * >))/Ix
- <>
- <abcd>
- <abc <123> hij>
- <abc <def> hij>
- <abc<>def>
- <abc<>
- *** Failers
- <abc
-
-/(?1)/I
-
-/((?2)(abc)/I
-
-/^(abc)def(?1)/I
- abcdefabc
-
-/^(a|b|c)=(?1)+/I
- a=a
- a=b
- a=bc
-
-/^(a|b|c)=((?1))+/I
- a=a
- a=b
- a=bc
-
-/a(?P<name1>b|c)d(?P<longername2>e)/DZ
- abde
- acde
-
-/(?:a(?P<c>c(?P<d>d)))(?P<a>a)/DZ
-
-/(?P<a>a)...(?P=a)bbb(?P>a)d/DZ
-
-/^\W*(?:(?P<one>(?P<two>.)\W*(?P>one)\W*(?P=two)|)|(?P<three>(?P<four>.)\W*(?P>three)\W*(?P=four)|\W*.\W*))\W*$/Ii
- 1221
- Satan, oscillate my metallic sonatas!
- A man, a plan, a canal: Panama!
- Able was I ere I saw Elba.
- *** Failers
- The quick brown fox
-
-/((?(R)a|b))\1(?1)?/I
- bb
- bbaa
-
-/(.*)a/Is
-
-/(.*)a\1/Is
-
-/(.*)a(b)\2/Is
-
-/((.*)a|(.*)b)z/Is
-
-/((.*)a|(.*)b)z\1/Is
-
-/((.*)a|(.*)b)z\2/Is
-
-/((.*)a|(.*)b)z\3/Is
-
-/((.*)a|^(.*)b)z\3/Is
-
-/(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a/Is
-
-/(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a\31/Is
-
-/(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a\32/Is
-
-/(a)(bc)/INDZ
- abc
-
-/(?P<one>a)(bc)/INDZ
- abc
-
-/(a)(?P<named>bc)/INDZ
-
-/(a+)*zz/I
- aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaazzbbbbbb\M
- aaaaaaaaaaaaaz\M
-
-/(aaa(?C1)bbb|ab)/I
- aaabbb
- aaabbb\C*0
- aaabbb\C*1
- aaabbb\C*-1
-
-/ab(?P<one>cd)ef(?P<two>gh)/I
- abcdefgh
- abcdefgh\C1\Gtwo
- abcdefgh\Cone\Ctwo
- abcdefgh\Cthree
-
-/(?P<Tes>)(?P<Test>)/DZ
-
-/(?P<Test>)(?P<Tes>)/DZ
-
-/(?P<Z>zz)(?P<A>aa)/I
- zzaa\CZ
- zzaa\CA
-
-/(?P<x>eks)(?P<x>eccs)/I
-
-/(?P<abc>abc(?P<def>def)(?P<abc>xyz))/I
-
-"\[((?P<elem>\d+)(,(?P>elem))*)\]"I
- [10,20,30,5,5,4,4,2,43,23,4234]
- *** Failers
- []
-
-"\[((?P<elem>\d+)(,(?P>elem))*)?\]"I
- [10,20,30,5,5,4,4,2,43,23,4234]
- []
-
-/(a(b(?2)c))?/DZ
-
-/(a(b(?2)c))*/DZ
-
-/(a(b(?2)c)){0,2}/DZ
-
-/[ab]{1}+/DZ
-
-/((w\/|-|with)*(free|immediate)*.*?shipping\s*[!.-]*)/Ii
- Baby Bjorn Active Carrier - With free SHIPPING!!
-
-/((w\/|-|with)*(free|immediate)*.*?shipping\s*[!.-]*)/IiS
- Baby Bjorn Active Carrier - With free SHIPPING!!
-
-/a*.*b/ISDZ
-
-/(a|b)*.?c/ISDZ
-
-/abc(?C255)de(?C)f/DZ
-
-/abcde/ICDZ
- abcde
- abcdfe
-
-/a*b/ICDZS
- ab
- aaaab
- aaaacb
-
-/a*b/ICDZSS
- ab
- aaaab
- aaaacb
-
-/a+b/ICDZ
- ab
- aaaab
- aaaacb
-
-/(abc|def)x/ICDZS
- abcx
- defx
- ** Failers
- abcdefzx
-
-/(abc|def)x/ICDZSS
- abcx
- defx
- ** Failers
- abcdefzx
-
-/(ab|cd){3,4}/IC
- ababab
- abcdabcd
- abcdcdcdcdcd
-
-/([ab]{,4}c|xy)/ICDZS
- Note: that { does NOT introduce a quantifier
-
-/([ab]{,4}c|xy)/ICDZSS
- Note: that { does NOT introduce a quantifier
-
-/([ab]{1,4}c|xy){4,5}?123/ICDZ
- aacaacaacaacaac123
-
-/\b.*/I
- ab cd\>1
-
-/\b.*/Is
- ab cd\>1
-
-/(?!.bcd).*/I
- Xbcd12345
-
-/abcde/I
- ab\P
- abc\P
- abcd\P
- abcde\P
- the quick brown abc\P
- ** Failers\P
- the quick brown abxyz fox\P
-
-"^(0?[1-9]|[12][0-9]|3[01])/(0?[1-9]|1[012])/(20)?\d\d$"I
- 13/05/04\P
- 13/5/2004\P
- 02/05/09\P
- 1\P
- 1/2\P
- 1/2/0\P
- 1/2/04\P
- 0\P
- 02/\P
- 02/0\P
- 02/1\P
- ** Failers\P
- \P
- 123\P
- 33/4/04\P
- 3/13/04\P
- 0/1/2003\P
- 0/\P
- 02/0/\P
- 02/13\P
-
-/0{0,2}ABC/I
-
-/\d{3,}ABC/I
-
-/\d*ABC/I
-
-/[abc]+DE/I
-
-/[abc]?123/I
- 123\P
- a\P
- b\P
- c\P
- c12\P
- c123\P
-
-/^(?:\d){3,5}X/I
- 1\P
- 123\P
- 123X
- 1234\P
- 1234X
- 12345\P
- 12345X
- *** Failers
- 1X
- 123456\P
-
-/abc/IS>testsavedregex
-<testsavedregex
- abc
- ** Failers
- bca
-
-/abc/ISS>testsavedregex
-<testsavedregex
- abc
- ** Failers
- bca
-
-/abc/IFS>testsavedregex
-<testsavedregex
- abc
- ** Failers
- bca
-
-/abc/IFSS>testsavedregex
-<testsavedregex
- abc
- ** Failers
- bca
-
-/(a|b)/IS>testsavedregex
-<testsavedregex
- abc
- ** Failers
- def
-
-/(a|b)/ISS>testsavedregex
-<testsavedregex
- abc
- ** Failers
- def
-
-/(a|b)/ISF>testsavedregex
-<testsavedregex
- abc
- ** Failers
- def
-
-/(a|b)/ISSF>testsavedregex
-<testsavedregex
- abc
- ** Failers
- def
-
-~<(\w+)/?>(.)*</(\1)>~smgI
- \J1024<!DOCTYPE seite SYSTEM "http://www.lco.lineas.de/xmlCms.dtd">\n<seite>\n<dokumenteninformation>\n<seitentitel>Partner der LCO</seitentitel>\n<sprache>de</sprache>\n<seitenbeschreibung>Partner der LINEAS Consulting\nGmbH</seitenbeschreibung>\n<schluesselworte>LINEAS Consulting GmbH Hamburg\nPartnerfirmen</schluesselworte>\n<revisit>30 days</revisit>\n<robots>index,follow</robots>\n<menueinformation>\n<aktiv>ja</aktiv>\n<menueposition>3</menueposition>\n<menuetext>Partner</menuetext>\n</menueinformation>\n<lastedited>\n<autor>LCO</autor>\n<firma>LINEAS Consulting</firma>\n<datum>15.10.2003</datum>\n</lastedited>\n</dokumenteninformation>\n<inhalt>\n\n<absatzueberschrift>Die Partnerfirmen der LINEAS Consulting\nGmbH</absatzueberschrift>\n\n<absatz><link ziel="http://www.ca.com/" zielfenster="_blank">\n<bild name="logo_ca.gif" rahmen="no"/></link> <link\nziel="http://www.ey.com/" zielfenster="_blank"><bild\nname="logo_euy.gif" rahmen="no"/></link>\n</absatz>\n\n<absatz><link ziel="http://www.cisco.de/" zielfenster="_blank">\n<bild name="logo_cisco.gif" rahmen="ja"/></link></absatz>\n\n<absatz><link ziel="http://www.atelion.de/"\nzielfenster="_blank"><bild\nname="logo_atelion.gif" rahmen="no"/></link>\n</absatz>\n\n<absatz><link ziel="http://www.line-information.de/"\nzielfenster="_blank">\n<bild name="logo_line_information.gif" rahmen="no"/></link>\n</absatz>\n\n<absatz><bild name="logo_aw.gif" rahmen="no"/></absatz>\n\n<absatz><link ziel="http://www.incognis.de/"\nzielfenster="_blank"><bild\nname="logo_incognis.gif" rahmen="no"/></link></absatz>\n\n<absatz><link ziel="http://www.addcraft.com/"\nzielfenster="_blank"><bild\nname="logo_addcraft.gif" rahmen="no"/></link></absatz>\n\n<absatz><link ziel="http://www.comendo.com/"\nzielfenster="_blank"><bild\nname="logo_comendo.gif" rahmen="no"/></link></absatz>\n\n</inhalt>\n</seite>
-
-/^a/IF
-
-/line\nbreak/I
- this is a line\nbreak
- line one\nthis is a line\nbreak in the second line
-
-/line\nbreak/If
- this is a line\nbreak
- ** Failers
- line one\nthis is a line\nbreak in the second line
-
-/line\nbreak/Imf
- this is a line\nbreak
- ** Failers
- line one\nthis is a line\nbreak in the second line
-
-/(?i)(?-i)AbCd/I
- AbCd
- ** Failers
- abcd
-
-/a{11111111111111111111}/I
-
-/(){64294967295}/I
-
-/(){2,4294967295}/I
-
-"(?i:a)(?i:b)(?i:c)(?i:d)(?i:e)(?i:f)(?i:g)(?i:h)(?i:i)(?i:j)(k)(?i:l)A\1B"I
- abcdefghijklAkB
-
-"(?P<n0>a)(?P<n1>b)(?P<n2>c)(?P<n3>d)(?P<n4>e)(?P<n5>f)(?P<n6>g)(?P<n7>h)(?P<n8>i)(?P<n9>j)(?P<n10>k)(?P<n11>l)A\11B"I
- abcdefghijklAkB
-
-"(a)(b)(c)(d)(e)(f)(g)(h)(i)(j)(k)(l)A\11B"I
- abcdefghijklAkB
-
-"(?P<name0>a)(?P<name1>a)(?P<name2>a)(?P<name3>a)(?P<name4>a)(?P<name5>a)(?P<name6>a)(?P<name7>a)(?P<name8>a)(?P<name9>a)(?P<name10>a)(?P<name11>a)(?P<name12>a)(?P<name13>a)(?P<name14>a)(?P<name15>a)(?P<name16>a)(?P<name17>a)(?P<name18>a)(?P<name19>a)(?P<name20>a)(?P<name21>a)(?P<name22>a)(?P<name23>a)(?P<name24>a)(?P<name25>a)(?P<name26>a)(?P<name27>a)(?P<name28>a)(?P<name29>a)(?P<name30>a)(?P<name31>a)(?P<name32>a)(?P<name33>a)(?P<name34>a)(?P<name35>a)(?P<name36>a)(?P<name37>a)(?P<name38>a)(?P<name39>a)(?P<name40>a)(?P<name41>a)(?P<name42>a)(?P<name43>a)(?P<name44>a)(?P<name45>a)(?P<name46>a)(?P<name47>a)(?P<name48>a)(?P<name49>a)(?P<name50>a)(?P<name51>a)(?P<name52>a)(?P<name53>a)(?P<name54>a)(?P<name55>a)(?P<name56>a)(?P<name57>a)(?P<name58>a)(?P<name59>a)(?P<name60>a)(?P<name61>a)(?P<name62>a)(?P<name63>a)(?P<name64>a)(?P<name65>a)(?P<name66>a)(?P<name67>a)(?P<name68>a)(?P<name69>a)(?P<name70>a)(?P<name71>a)(?P<name72>a)(?P<name73>a)(?P<name74>a)(?P<name75>a)(?P<name76>a)(?P<name77>a)(?P<name78>a)(?P<name79>a)(?P<name80>a)(?P<name81>a)(?P<name82>a)(?P<name83>a)(?P<name84>a)(?P<name85>a)(?P<name86>a)(?P<name87>a)(?P<name88>a)(?P<name89>a)(?P<name90>a)(?P<name91>a)(?P<name92>a)(?P<name93>a)(?P<name94>a)(?P<name95>a)(?P<name96>a)(?P<name97>a)(?P<name98>a)(?P<name99>a)(?P<name100>a)"I
- aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-
-"(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)(a)"I
- aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-
-/[^()]*(?:\((?R)\)[^()]*)*/I
- (this(and)that
- (this(and)that)
- (this(and)that)stuff
-
-/[^()]*(?:\((?>(?R))\)[^()]*)*/I
- (this(and)that
- (this(and)that)
-
-/[^()]*(?:\((?R)\))*[^()]*/I
- (this(and)that
- (this(and)that)
-
-/(?:\((?R)\))*[^()]*/I
- (this(and)that
- (this(and)that)
- ((this))
-
-/(?:\((?R)\))|[^()]*/I
- (this(and)that
- (this(and)that)
- (this)
- ((this))
-
-/\x{0000ff}/I
-
-/^((?P<A>a1)|(?P<A>a2)b)/I
-
-/^((?P<A>a1)|(?P<A>a2)b)/IJ
- a1b\CA
- a2b\CA
- ** Failers
- a1b\CZ\CA
-
-/^(?P<A>a)(?P<A>b)/IJ
- ab\CA
-
-/^(?P<A>a)(?P<A>b)|cd/IJ
- ab\CA
- cd\CA
-
-/^(?P<A>a)(?P<A>b)|cd(?P<A>ef)(?P<A>gh)/IJ
- cdefgh\CA
-
-/^((?P<A>a1)|(?P<A>a2)b)/IJ
- a1b\GA
- a2b\GA
- ** Failers
- a1b\GZ\GA
-
-/^(?P<A>a)(?P<A>b)/IJ
- ab\GA
-
-/^(?P<A>a)(?P<A>b)|cd/IJ
- ab\GA
- cd\GA
-
-/^(?P<A>a)(?P<A>b)|cd(?P<A>ef)(?P<A>gh)/IJ
- cdefgh\GA
-
-/(?J)^((?P<A>a1)|(?P<A>a2)b)/I
- a1b\CA
- a2b\CA
-
-/^(?P<A>a) (?J:(?P<B>b)(?P<B>c)) (?P<A>d)/I
-
-/ In this next test, J is not set at the outer level; consequently it isn't
-set in the pattern's options; consequently pcre_get_named_substring() produces
-a random value. /Ix
-
-/^(?P<A>a) (?J:(?P<B>b)(?P<B>c)) (?P<C>d)/I
- a bc d\CA\CB\CC
-
-/^(?P<A>a)?(?(A)a|b)/I
- aabc
- bc
- ** Failers
- abc
-
-/(?:(?(ZZ)a|b)(?P<ZZ>X))+/I
- bXaX
-
-/(?:(?(2y)a|b)(X))+/I
-
-/(?:(?(ZA)a|b)(?P<ZZ>X))+/I
-
-/(?:(?(ZZ)a|b)(?(ZZ)a|b)(?P<ZZ>X))+/I
- bbXaaX
-
-/(?:(?(ZZ)a|\(b\))\\(?P<ZZ>X))+/I
- (b)\\Xa\\X
-
-/(?P<ABC/I
-
-/(?:(?(A)(?P=A)a|b)(?P<A>X|Y))+/I
- bXXaYYaY
- bXYaXXaX
-
-/()()()()()()()()()(?:(?(A)(?P=A)a|b)(?P<A>X|Y))+/I
- bXXaYYaY
-
-/\s*,\s*/IS
- \x0b,\x0b
- \x0c,\x0d
-
-/^abc/Im
- xyz\nabc
- xyz\nabc\<lf>
- xyz\r\nabc\<lf>
- xyz\rabc\<cr>
- xyz\r\nabc\<crlf>
- ** Failers
- xyz\nabc\<cr>
- xyz\r\nabc\<cr>
- xyz\nabc\<crlf>
- xyz\rabc\<crlf>
- xyz\rabc\<lf>
-
-/abc$/Im<lf>
- xyzabc
- xyzabc\n
- xyzabc\npqr
- xyzabc\r\<cr>
- xyzabc\rpqr\<cr>
- xyzabc\r\n\<crlf>
- xyzabc\r\npqr\<crlf>
- ** Failers
- xyzabc\r
- xyzabc\rpqr
- xyzabc\r\n
- xyzabc\r\npqr
-
-/^abc/Im<cr>
- xyz\rabcdef
- xyz\nabcdef\<lf>
- ** Failers
- xyz\nabcdef
-
-/^abc/Im<lf>
- xyz\nabcdef
- xyz\rabcdef\<cr>
- ** Failers
- xyz\rabcdef
-
-/^abc/Im<crlf>
- xyz\r\nabcdef
- xyz\rabcdef\<cr>
- ** Failers
- xyz\rabcdef
-
-/^abc/Im<bad>
-
-/abc/I
- xyz\rabc\<bad>
- abc
-
-/.*/I<lf>
- abc\ndef
- abc\rdef
- abc\r\ndef
- \<cr>abc\ndef
- \<cr>abc\rdef
- \<cr>abc\r\ndef
- \<crlf>abc\ndef
- \<crlf>abc\rdef
- \<crlf>abc\r\ndef
-
-/\w+(.)(.)?def/Is
- abc\ndef
- abc\rdef
- abc\r\ndef
-
-+((?:\s|//.*\\n|/[*](?:\\n|.)*?[*]/)*)+I
- /* this is a C style comment */\M
-
-/(?P<B>25[0-5]|2[0-4]\d|[01]?\d?\d)(?:\.(?P>B)){3}/I
-
-/()()()()()()()()()()()()()()()()()()()()
- ()()()()()()()()()()()()()()()()()()()()
- ()()()()()()()()()()()()()()()()()()()()
- ()()()()()()()()()()()()()()()()()()()()
- ()()()()()()()()()()()()()()()()()()()()
- (.(.))/Ix
- XY\O400
-
-/(a*b|(?i:c*(?-i)d))/IS
-
-/()[ab]xyz/IS
-
-/(|)[ab]xyz/IS
-
-/(|c)[ab]xyz/IS
-
-/(|c?)[ab]xyz/IS
-
-/(d?|c?)[ab]xyz/IS
-
-/(d?|c)[ab]xyz/IS
-
-/^a*b\d/DZ
-
-/^a*+b\d/DZ
-
-/^a*?b\d/DZ
-
-/^a+A\d/DZ
- aaaA5
- ** Failers
- aaaa5
-
-/^a*A\d/IiDZ
- aaaA5
- aaaa5
-
-/(a*|b*)[cd]/IS
-
-/(a+|b*)[cd]/IS
-
-/(a*|b+)[cd]/IS
-
-/(a+|b+)[cd]/IS
-
-/((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((
- ((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((
- (((
- a
- ))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
- ))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
- )))
-/Ix
- large nest
-
-/a*\d/BZ
-
-/a*\D/BZ
-
-/0*\d/BZ
-
-/0*\D/BZ
-
-/a*\s/BZ
-
-/a*\S/BZ
-
-/ *\s/BZ
-
-/ *\S/BZ
-
-/a*\w/BZ
-
-/a*\W/BZ
-
-/=*\w/BZ
-
-/=*\W/BZ
-
-/\d*a/BZ
-
-/\d*2/BZ
-
-/\d*\d/BZ
-
-/\d*\D/BZ
-
-/\d*\s/BZ
-
-/\d*\S/BZ
-
-/\d*\w/BZ
-
-/\d*\W/BZ
-
-/\D*a/BZ
-
-/\D*2/BZ
-
-/\D*\d/BZ
-
-/\D*\D/BZ
-
-/\D*\s/BZ
-
-/\D*\S/BZ
-
-/\D*\w/BZ
-
-/\D*\W/BZ
-
-/\s*a/BZ
-
-/\s*2/BZ
-
-/\s*\d/BZ
-
-/\s*\D/BZ
-
-/\s*\s/BZ
-
-/\s*\S/BZ
-
-/\s*\w/BZ
-
-/\s*\W/BZ
-
-/\S*a/BZ
-
-/\S*2/BZ
-
-/\S*\d/BZ
-
-/\S*\D/BZ
-
-/\S*\s/BZ
-
-/\S*\S/BZ
-
-/\S*\w/BZ
-
-/\S*\W/BZ
-
-/\w*a/BZ
-
-/\w*2/BZ
-
-/\w*\d/BZ
-
-/\w*\D/BZ
-
-/\w*\s/BZ
-
-/\w*\S/BZ
-
-/\w*\w/BZ
-
-/\w*\W/BZ
-
-/\W*a/BZ
-
-/\W*2/BZ
-
-/\W*\d/BZ
-
-/\W*\D/BZ
-
-/\W*\s/BZ
-
-/\W*\S/BZ
-
-/\W*\w/BZ
-
-/\W*\W/BZ
-
-/[^a]+a/BZ
-
-/[^a]+a/BZi
-
-/[^a]+A/BZi
-
-/[^a]+b/BZ
-
-/[^a]+\d/BZ
-
-/a*[^a]/BZ
-
-/(?P<abc>x)(?P<xyz>y)/I
- xy\Cabc\Cxyz
-
-/(?<abc>x)(?'xyz'y)/I
- xy\Cabc\Cxyz
-
-/(?<abc'x)(?'xyz'y)/I
-
-/(?<abc>x)(?'xyz>y)/I
-
-/(?P'abc'x)(?P<xyz>y)/I
-
-/^(?:(?(ZZ)a|b)(?<ZZ>X))+/
- bXaX
- bXbX
- ** Failers
- aXaX
- aXbX
-
-/^(?P>abc)(?<abcd>xxx)/
-
-/^(?P>abc)(?<abc>x|y)/
- xx
- xy
- yy
- yx
-
-/^(?P>abc)(?P<abc>x|y)/
- xx
- xy
- yy
- yx
-
-/^((?(abc)a|b)(?<abc>x|y))+/
- bxay
- bxby
- ** Failers
- axby
-
-/^(((?P=abc)|X)(?<abc>x|y))+/
- XxXxxx
- XxXyyx
- XxXyxx
- ** Failers
- x
-
-/^(?1)(abc)/
- abcabc
-
-/^(?:(?:\1|X)(a|b))+/
- Xaaa
- Xaba
-
-/^[\E\Qa\E-\Qz\E]+/BZ
-
-/^[a\Q]bc\E]/BZ
-
-/^[a-\Q\E]/BZ
-
-/^(?P>abc)[()](?<abc>)/BZ
-
-/^((?(abc)y)[()](?P<abc>x))+/BZ
- (xy)x
-
-/^(?P>abc)\Q()\E(?<abc>)/BZ
-
-/^(?P>abc)[a\Q(]\E(](?<abc>)/BZ
-
-/^(?P>abc) # this is (a comment)
- (?<abc>)/BZx
-
-/^\W*(?:(?<one>(?<two>.)\W*(?&one)\W*\k<two>|)|(?<three>(?<four>.)\W*(?&three)\W*\k'four'|\W*.\W*))\W*$/Ii
- 1221
- Satan, oscillate my metallic sonatas!
- A man, a plan, a canal: Panama!
- Able was I ere I saw Elba.
- *** Failers
- The quick brown fox
-
-/(?=(\w+))\1:/I
- abcd:
-
-/(?=(?'abc'\w+))\k<abc>:/I
- abcd:
-
-/(?'abc'a|b)(?<abc>d|e)\k<abc>{2}/J
- adaa
- ** Failers
- addd
- adbb
-
-/(?'abc'a|b)(?<abc>d|e)(?&abc){2}/J
- bdaa
- bdab
- ** Failers
- bddd
-
-/(?(<bc))/
-
-/(?(''))/
-
-/(?('R')stuff)/
-
-/((abc (?(R) (?(R1)1) (?(R2)2) X | (?1) (?2) (?R) ))) /x
- abcabc1Xabc2XabcXabcabc
-
-/(?<A> (?'B' abc (?(R) (?(R&A)1) (?(R&B)2) X | (?1) (?2) (?R) ))) /x
- abcabc1Xabc2XabcXabcabc
-
-/(?<A> (?'B' abc (?(R) (?(R&1)1) (?(R&B)2) X | (?1) (?2) (?R) ))) /x
-
-/(?<1> (?'B' abc (?(R) (?(R&1)1) (?(R&B)2) X | (?1) (?2) (?R) ))) /x
- abcabc1Xabc2XabcXabcabc
-
-/^(?(DEFINE) abc | xyz ) /x
-
-/(?(DEFINE) abc) xyz/xI
-
-/(a|)*\d/
- \O0aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
- \O0aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa4
-
-/^a.b/<lf>
- a\rb
- a\nb\<cr>
- a\x85b\<anycrlf>
- ** Failers
- a\nb
- a\nb\<any>
- a\rb\<cr>
- a\rb\<any>
- a\x85b\<any>
- a\rb\<anycrlf>
-
-/^abc./mgx<any>
- abc1 \x0aabc2 \x0babc3xx \x0cabc4 \x0dabc5xx \x0d\x0aabc6 \x85abc7 JUNK
-
-/abc.$/mgx<any>
- abc1\x0a abc2\x0b abc3\x0c abc4\x0d abc5\x0d\x0a abc6\x85 abc7 abc9
-
-/a/<cr><any>
-
-/a/<any><crlf>
-
-/^a\Rb/<bsr_unicode>
- a\nb
- a\rb
- a\r\nb
- a\x0bb
- a\x0cb
- a\x85b
- ** Failers
- a\n\rb
-
-/^a\R*b/<bsr_unicode>
- ab
- a\nb
- a\rb
- a\r\nb
- a\x0bb
- a\x0cb
- a\x85b
- a\n\rb
- a\n\r\x85\x0cb
-
-/^a\R+b/<bsr_unicode>
- a\nb
- a\rb
- a\r\nb
- a\x0bb
- a\x0cb
- a\x85b
- a\n\rb
- a\n\r\x85\x0cb
- ** Failers
- ab
-
-/^a\R{1,3}b/<bsr_unicode>
- a\nb
- a\n\rb
- a\n\r\x85b
- a\r\n\r\nb
- a\r\n\r\n\r\nb
- a\n\r\n\rb
- a\n\n\r\nb
- ** Failers
- a\n\n\n\rb
- a\r
-
-/^a[\R]b/<bsr_unicode>
- aRb
- ** Failers
- a\nb
-
-/(?&abc)X(?<abc>P)/I
- abcPXP123
-
-/(?1)X(?<abc>P)/I
- abcPXP123
-
-/(?:a(?&abc)b)*(?<abc>x)/
- 123axbaxbaxbx456
- 123axbaxbaxb456
-
-/(?:a(?&abc)b){1,5}(?<abc>x)/
- 123axbaxbaxbx456
-
-/(?:a(?&abc)b){2,5}(?<abc>x)/
- 123axbaxbaxbx456
-
-/(?:a(?&abc)b){2,}(?<abc>x)/
- 123axbaxbaxbx456
-
-/(abc)(?i:(?1))/
- defabcabcxyz
- DEFabcABCXYZ
-
-/(abc)(?:(?i)(?1))/
- defabcabcxyz
- DEFabcABCXYZ
-
-/^(a)\g-2/
-
-/^(a)\g/
-
-/^(a)\g{0}/
-
-/^(a)\g{3/
-
-/^(a)\g{4a}/
-
-/^a.b/<lf>
- a\rb
- *** Failers
- a\nb
-
-/.+foo/
- afoo
- ** Failers
- \r\nfoo
- \nfoo
-
-/.+foo/<crlf>
- afoo
- \nfoo
- ** Failers
- \r\nfoo
-
-/.+foo/<any>
- afoo
- ** Failers
- \nfoo
- \r\nfoo
-
-/.+foo/s
- afoo
- \r\nfoo
- \nfoo
-
-/^$/mg<any>
- abc\r\rxyz
- abc\n\rxyz
- ** Failers
- abc\r\nxyz
-
-/(?m)^$/<any>g+
- abc\r\n\r\n
-
-/(?m)^$|^\r\n/<any>g+
- abc\r\n\r\n
-
-/(?m)$/<any>g+
- abc\r\n\r\n
-
-/abc.$/mgx<anycrlf>
- abc1\x0a abc2\x0b abc3\x0c abc4\x0d abc5\x0d\x0a abc6\x85 abc9
-
-/^X/m
- XABC
- ** Failers
- XABC\B
-
-/(ab|c)(?-1)/BZ
- abc
-
-/xy(?+1)(abc)/BZ
- xyabcabc
- ** Failers
- xyabc
-
-/x(?-0)y/
-
-/x(?-1)y/
-
-/x(?+0)y/
-
-/x(?+1)y/
-
-/^(abc)?(?(-1)X|Y)/BZ
- abcX
- Y
- ** Failers
- abcY
-
-/^((?(+1)X|Y)(abc))+/BZ
- YabcXabc
- YabcXabcXabc
- ** Failers
- XabcXabc
-
-/(?(-1)a)/BZ
-
-/((?(-1)a))/BZ
-
-/((?(-2)a))/BZ
-
-/^(?(+1)X|Y)(.)/BZ
- Y!
-
-/(?<A>tom|bon)-\k{A}/
- tom-tom
- bon-bon
- ** Failers
- tom-bon
-
-/\g{A/
-
-/(?|(abc)|(xyz))/BZ
- >abc<
- >xyz<
-
-/(x)(?|(abc)|(xyz))(x)/BZ
- xabcx
- xxyzx
-
-/(x)(?|(abc)(pqr)|(xyz))(x)/BZ
- xabcpqrx
- xxyzx
-
-/\H++X/BZ
- ** Failers
- XXXX
-
-/\H+\hY/BZ
- XXXX Y
-
-/\H+ Y/BZ
-
-/\h+A/BZ
-
-/\v*B/BZ
-
-/\V+\x0a/BZ
-
-/A+\h/BZ
-
-/ *\H/BZ
-
-/A*\v/BZ
-
-/\x0b*\V/BZ
-
-/\d+\h/BZ
-
-/\d*\v/BZ
-
-/S+\h\S+\v/BZ
-
-/\w{3,}\h\w+\v/BZ
-
-/\h+\d\h+\w\h+\S\h+\H/BZ
-
-/\v+\d\v+\w\v+\S\v+\V/BZ
-
-/\H+\h\H+\d/BZ
-
-/\V+\v\V+\w/BZ
-
-/\( (?: [^()]* | (?R) )* \)/x
-\J1024(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(0(00)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)0)
-
-/[\E]AAA/
-
-/[\Q\E]AAA/
-
-/[^\E]AAA/
-
-/[^\Q\E]AAA/
-
-/[\E^]AAA/
-
-/[\Q\E^]AAA/
-
-/A(*PRUNE)B(*SKIP)C(*THEN)D(*COMMIT)E(*F)F(*FAIL)G(?!)H(*ACCEPT)I/BZ
-
-/^a+(*FAIL)/C
- aaaaaa
-
-/a+b?c+(*FAIL)/C
- aaabccc
-
-/a+b?(*PRUNE)c+(*FAIL)/C
- aaabccc
-
-/a+b?(*COMMIT)c+(*FAIL)/C
- aaabccc
-
-/a+b?(*SKIP)c+(*FAIL)/C
- aaabcccaaabccc
-
-/a+b?(*THEN)c+(*FAIL)/C
- aaabccc
-
-/a(*MARK)b/
-
-/(?i:A{1,}\6666666666)/
-
-/\g6666666666/
-
-/[\g6666666666]/BZ
-
-/(?1)\c[/
-
-/.+A/<crlf>
- \r\nA
-
-/\nA/<crlf>
- \r\nA
-
-/[\r\n]A/<crlf>
- \r\nA
-
-/(\r|\n)A/<crlf>
- \r\nA
-
-/a(*CR)b/
-
-/(*CR)a.b/
- a\nb
- ** Failers
- a\rb
-
-/(*CR)a.b/<lf>
- a\nb
- ** Failers
- a\rb
-
-/(*LF)a.b/<CRLF>
- a\rb
- ** Failers
- a\nb
-
-/(*CRLF)a.b/
- a\rb
- a\nb
- ** Failers
- a\r\nb
-
-/(*ANYCRLF)a.b/<CR>
- ** Failers
- a\rb
- a\nb
- a\r\nb
-
-/(*ANY)a.b/<cr>
- ** Failers
- a\rb
- a\nb
- a\r\nb
- a\x85b
-
-/(*ANY).*/g
- abc\r\ndef
-
-/(*ANYCRLF).*/g
- abc\r\ndef
-
-/(*CRLF).*/g
- abc\r\ndef
-
-/a\Rb/I<bsr_anycrlf>
- a\rb
- a\nb
- a\r\nb
- ** Failers
- a\x85b
- a\x0bb
-
-/a\Rb/I<bsr_unicode>
- a\rb
- a\nb
- a\r\nb
- a\x85b
- a\x0bb
- ** Failers
- a\x85b\<bsr_anycrlf>
- a\x0bb\<bsr_anycrlf>
-
-/a\R?b/I<bsr_anycrlf>
- a\rb
- a\nb
- a\r\nb
- ** Failers
- a\x85b
- a\x0bb
-
-/a\R?b/I<bsr_unicode>
- a\rb
- a\nb
- a\r\nb
- a\x85b
- a\x0bb
- ** Failers
- a\x85b\<bsr_anycrlf>
- a\x0bb\<bsr_anycrlf>
-
-/a\R{2,4}b/I<bsr_anycrlf>
- a\r\n\nb
- a\n\r\rb
- a\r\n\r\n\r\n\r\nb
- ** Failers
- a\x85\85b
- a\x0b\0bb
-
-/a\R{2,4}b/I<bsr_unicode>
- a\r\rb
- a\n\n\nb
- a\r\n\n\r\rb
- a\x85\85b
- a\x0b\0bb
- ** Failers
- a\r\r\r\r\rb
- a\x85\85b\<bsr_anycrlf>
- a\x0b\0bb\<bsr_anycrlf>
-
-/(*BSR_ANYCRLF)a\Rb/I
- a\nb
- a\rb
-
-/(*BSR_UNICODE)a\Rb/I
- a\x85b
-
-/(*BSR_ANYCRLF)(*CRLF)a\Rb/I
- a\nb
- a\rb
-
-/(*CRLF)(*BSR_UNICODE)a\Rb/I
- a\x85b
-
-/(*CRLF)(*BSR_ANYCRLF)(*CR)ab/I
-
-/(?<a>)(?&)/
-
-/(?<abc>)(?&a)/
-
-/(?<a>)(?&aaaaaaaaaaaaaaaaaaaaaaa)/
-
-/(?+-a)/
-
-/(?-+a)/
-
-/(?(-1))/
-
-/(?(+10))/
-
-/(?(10))/
-
-/(?(+2))()()/
-
-/(?(2))()()/
-
-/\k''/
-
-/\k<>/
-
-/\k{}/
-
-/\k/
-
-/\kabc/
-
-/(?P=)/
-
-/(?P>)/
-
-/(?!\w)(?R)/
-
-/(?=\w)(?R)/
-
-/(?<!\w)(?R)/
-
-/(?<=\w)(?R)/
-
-/[[:foo:]]/
-
-/[[:1234:]]/
-
-/[[:f\oo:]]/
-
-/[[: :]]/
-
-/[[:...:]]/
-
-/[[:l\ower:]]/
-
-/[[:abc\:]]/
-
-/[abc[:x\]pqr:]]/
-
-/[[:a\dz:]]/
-
-/(^(a|b\g<-1'c))/
-
-/^(?+1)(?<a>x|y){0}z/
- xzxx
- yzyy
- ** Failers
- xxz
-
-/(\3)(\1)(a)/
- cat
-
-/(\3)(\1)(a)/<JS>
- cat
-
-/TA]/
- The ACTA] comes
-
-/TA]/<JS>
- The ACTA] comes
-
-/(?2)[]a()b](abc)/
- abcbabc
-
-/(?2)[^]a()b](abc)/
- abcbabc
-
-/(?1)[]a()b](abc)/
- abcbabc
- ** Failers
- abcXabc
-
-/(?1)[^]a()b](abc)/
- abcXabc
- ** Failers
- abcbabc
-
-/(?2)[]a()b](abc)(xyz)/
- xyzbabcxyz
-
-/(?&N)[]a(?<N>)](?<M>abc)/
- abc<abc
-
-/(?&N)[]a(?<N>)](abc)/
- abc<abc
-
-/a[]b/
-
-/a[^]b/
-
-/a[]b/<JS>
- ** Failers
- ab
-
-/a[]+b/<JS>
- ** Failers
- ab
-
-/a[]*+b/<JS>
- ** Failers
- ab
-
-/a[^]b/<JS>
- aXb
- a\nb
- ** Failers
- ab
-
-/a[^]+b/<JS>
- aXb
- a\nX\nXb
- ** Failers
- ab
-
-/a(?!)+b/
-
-/a(*FAIL)+b/
-
-/(abc|pqr|123){0}[xyz]/SI
-
-/(?(?=.*b)b|^)/CI
- adc
- abc
-
-/(?(?=b).*b|^d)/I
-
-/(?(?=.*b).*b|^d)/I
-
-/xyz/C
- xyz
- abcxyz
- abcxyz\Y
- ** Failers
- abc
- abc\Y
- abcxypqr
- abcxypqr\Y
-
-/(*NO_START_OPT)xyz/C
- abcxyz
-
-/xyz/CY
- abcxyz
-
-/^"((?(?=[a])[^"])|b)*"$/C
- "ab"
-
-/^"((?(?=[a])[^"])|b)*"$/
- "ab"
-
-/^X(?5)(a)(?|(b)|(q))(c)(d)Y/
- XYabcdY
-
-/^X(?&N)(a)(?|(b)|(q))(c)(d)(?<N>Y)/
- XYabcdY
-
-/Xa{2,4}b/
- X\P
- Xa\P
- Xaa\P
- Xaaa\P
- Xaaaa\P
-
-/Xa{2,4}?b/
- X\P
- Xa\P
- Xaa\P
- Xaaa\P
- Xaaaa\P
-
-/Xa{2,4}+b/
- X\P
- Xa\P
- Xaa\P
- Xaaa\P
- Xaaaa\P
-
-/X\d{2,4}b/
- X\P
- X3\P
- X33\P
- X333\P
- X3333\P
-
-/X\d{2,4}?b/
- X\P
- X3\P
- X33\P
- X333\P
- X3333\P
-
-/X\d{2,4}+b/
- X\P
- X3\P
- X33\P
- X333\P
- X3333\P
-
-/X\D{2,4}b/
- X\P
- Xa\P
- Xaa\P
- Xaaa\P
- Xaaaa\P
-
-/X\D{2,4}?b/
- X\P
- Xa\P
- Xaa\P
- Xaaa\P
- Xaaaa\P
-
-/X\D{2,4}+b/
- X\P
- Xa\P
- Xaa\P
- Xaaa\P
- Xaaaa\P
-
-/X[abc]{2,4}b/
- X\P
- Xa\P
- Xaa\P
- Xaaa\P
- Xaaaa\P
-
-/X[abc]{2,4}?b/
- X\P
- Xa\P
- Xaa\P
- Xaaa\P
- Xaaaa\P
-
-/X[abc]{2,4}+b/
- X\P
- Xa\P
- Xaa\P
- Xaaa\P
- Xaaaa\P
-
-/X[^a]{2,4}b/
- X\P
- Xz\P
- Xzz\P
- Xzzz\P
- Xzzzz\P
-
-/X[^a]{2,4}?b/
- X\P
- Xz\P
- Xzz\P
- Xzzz\P
- Xzzzz\P
-
-/X[^a]{2,4}+b/
- X\P
- Xz\P
- Xzz\P
- Xzzz\P
- Xzzzz\P
-
-/(Y)X\1{2,4}b/
- YX\P
- YXY\P
- YXYY\P
- YXYYY\P
- YXYYYY\P
-
-/(Y)X\1{2,4}?b/
- YX\P
- YXY\P
- YXYY\P
- YXYYY\P
- YXYYYY\P
-
-/(Y)X\1{2,4}+b/
- YX\P
- YXY\P
- YXYY\P
- YXYYY\P
- YXYYYY\P
-
-/\++\KZ|\d+X|9+Y/
- ++++123999\P
- ++++123999Y\P
- ++++Z1234\P
-
-/Z(*F)/
- Z\P
- ZA\P
-
-/Z(?!)/
- Z\P
- ZA\P
-
-/dog(sbody)?/
- dogs\P
- dogs\P\P
-
-/dog(sbody)??/
- dogs\P
- dogs\P\P
-
-/dog|dogsbody/
- dogs\P
- dogs\P\P
-
-/dogsbody|dog/
- dogs\P
- dogs\P\P
-
-/\bthe cat\b/
- the cat\P
- the cat\P\P
-
-/abc/
- abc\P
- abc\P\P
-
-/abc\K123/
- xyzabc123pqr
- xyzabc12\P
- xyzabc12\P\P
-
-/(?<=abc)123/
- xyzabc123pqr
- xyzabc12\P
- xyzabc12\P\P
-
-/\babc\b/
- +++abc+++
- +++ab\P
- +++ab\P\P
-
-/(?&word)(?&element)(?(DEFINE)(?<element><[^m][^>]>[^<])(?<word>\w*+))/BZ
-
-/(?&word)(?&element)(?(DEFINE)(?<element><[^\d][^>]>[^<])(?<word>\w*+))/BZ
-
-/(ab)(x(y)z(cd(*ACCEPT)))pq/BZ
-
-/abc\K/+
- abcdef
- abcdef\N\N
- xyzabcdef\N\N
- ** Failers
- abcdef\N
- xyzabcdef\N
-
-/^(?:(?=abc)|abc\K)/+
- abcdef
- abcdef\N\N
- ** Failers
- abcdef\N
-
-/a?b?/+
- xyz
- xyzabc
- xyzabc\N
- xyzabc\N\N
- xyz\N\N
- ** Failers
- xyz\N
-
-/^a?b?/+
- xyz
- xyzabc
- ** Failers
- xyzabc\N
- xyzabc\N\N
- xyz\N\N
- xyz\N
-
-/^(?<name>a|b\g<name>c)/
- aaaa
- bacxxx
- bbaccxxx
- bbbacccxx
-
-/^(?<name>a|b\g'name'c)/
- aaaa
- bacxxx
- bbaccxxx
- bbbacccxx
-
-/^(a|b\g<1>c)/
- aaaa
- bacxxx
- bbaccxxx
- bbbacccxx
-
-/^(a|b\g'1'c)/
- aaaa
- bacxxx
- bbaccxxx
- bbbacccxx
-
-/^(a|b\g'-1'c)/
- aaaa
- bacxxx
- bbaccxxx
- bbbacccxx
-
-/(^(a|b\g<-1>c))/
- aaaa
- bacxxx
- bbaccxxx
- bbbacccxx
-
-/(?-i:\g<name>)(?i:(?<name>a))/
- XaaX
- XAAX
-
-/(?i:\g<name>)(?-i:(?<name>a))/
- XaaX
- ** Failers
- XAAX
-
-/(?-i:\g<+1>)(?i:(a))/
- XaaX
- XAAX
-
-/(?=(?<regex>(?#simplesyntax)\$(?<name>[a-zA-Z_\x{7f}-\x{ff}][a-zA-Z0-9_\x{7f}-\x{ff}]*)(?:\[(?<index>[a-zA-Z0-9_\x{7f}-\x{ff}]+|\$\g<name>)\]|->\g<name>(\(.*?\))?)?|(?#simple syntax withbraces)\$\{(?:\g<name>(?<indices>\[(?:\g<index>|'(?:\\.|[^'\\])*'|"(?:\g<regex>|\\.|[^"\\])*")\])?|\g<complex>|\$\{\g<complex>\})\}|(?#complexsyntax)\{(?<complex>\$(?<segment>\g<name>(\g<indices>*|\(.*?\))?)(?:->\g<segment>)*|\$\g<complex>|\$\{\g<complex>\})\}))\{/
-
-/(?<n>a|b|c)\g<n>*/
- abc
- accccbbb
-
-/^X(?7)(a)(?|(b)|(q)(r)(s))(c)(d)(Y)/
- XYabcdY
-
-/(?<=b(?1)|zzz)(a)/
- xbaax
- xzzzax
-
-/(a)(?<=b\1)/
-
-/(a)(?<=b+(?1))/
-
-/(a+)(?<=b(?1))/
-
-/(a(?<=b(?1)))/
-
-/(?<=b(?1))xyz/
-
-/(?<=b(?1))xyz(b+)pqrstuvew/
-
-/(a|bc)\1/SI
-
-/(a|bc)\1{2,3}/SI
-
-/(a|bc)(?1)/SI
-
-/(a|b\1)(a|b\1)/SI
-
-/(a|b\1){2}/SI
-
-/(a|bbbb\1)(a|bbbb\1)/SI
-
-/(a|bbbb\1){2}/SI
-
-/^From +([^ ]+) +[a-zA-Z][a-zA-Z][a-zA-Z] +[a-zA-Z][a-zA-Z][a-zA-Z] +[0-9]?[0-9] +[0-9][0-9]:[0-9][0-9]/SI
-
-/<tr([\w\W\s\d][^<>]{0,})><TD([\w\W\s\d][^<>]{0,})>([\d]{0,}\.)(.*)((<BR>([\w\W\s\d][^<>]{0,})|[\s]{0,}))<\/a><\/TD><TD([\w\W\s\d][^<>]{0,})>([\w\W\s\d][^<>]{0,})<\/TD><TD([\w\W\s\d][^<>]{0,})>([\w\W\s\d][^<>]{0,})<\/TD><\/TR>/isIS
-
-"(?>.*/)foo"SI
-
-/(?(?=[^a-z]+[a-z]) \d{2}-[a-z]{3}-\d{2} | \d{2}-\d{2}-\d{2} ) /xSI
-
-/(?:(?:(?:(?:(?:(?:(?:(?:(?:(a|b|c))))))))))/iSI
-
-/(?:c|d)(?:)(?:aaaaaaaa(?:)(?:bbbbbbbb)(?:bbbbbbbb(?:))(?:bbbbbbbb(?:)(?:bbbbbbbb)))/SI
-
-/<a[\s]+href[\s]*=[\s]* # find <a href=
- ([\"\'])? # find single or double quote
- (?(1) (.*?)\1 | ([^\s]+)) # if quote found, match up to next matching
- # quote, otherwise match up to next space
-/isxSI
-
-/^(?!:) # colon disallowed at start
- (?: # start of item
- (?: [0-9a-f]{1,4} | # 1-4 hex digits or
- (?(1)0 | () ) ) # if null previously matched, fail; else null
- : # followed by colon
- ){1,7} # end item; 1-7 of them required
- [0-9a-f]{1,4} $ # final hex number at end of string
- (?(1)|.) # check that there was an empty component
- /xiIS
-
-/(?|(?<a>A)|(?<a>B))/I
- AB\Ca
- BA\Ca
-
-/(?|(?<a>A)|(?<b>B))/
-
-/(?:a(?<quote> (?<apostrophe>')|(?<realquote>")) |
- b(?<quote> (?<apostrophe>')|(?<realquote>")) )
- (?('quote')[a-z]+|[0-9]+)/JIx
- a"aaaaa
- b"aaaaa
- ** Failers
- b"11111
- a"11111
-
-/^(?|(a)(b)(c)(?<D>d)|(?<D>e)) (?('D')X|Y)/JDZx
- abcdX
- eX
- ** Failers
- abcdY
- ey
-
-/(?<A>a) (b)(c) (?<A>d (?(R&A)$ | (?4)) )/JDZx
- abcdd
- ** Failers
- abcdde
-
-/abcd*/
- xxxxabcd\P
- xxxxabcd\P\P
-
-/abcd*/i
- xxxxabcd\P
- xxxxabcd\P\P
- XXXXABCD\P
- XXXXABCD\P\P
-
-/abc\d*/
- xxxxabc1\P
- xxxxabc1\P\P
-
-/(a)bc\1*/
- xxxxabca\P
- xxxxabca\P\P
-
-/abc[de]*/
- xxxxabcde\P
- xxxxabcde\P\P
-
-/-- This is not in the Perl >= 5.10 test because Perl seems currently to be
- broken and not behaving as specified in that it *does* bumpalong after
- hitting (*COMMIT). --/
-
-/(?1)(A(*COMMIT)|B)D/
- ABD
- XABD
- BAD
- ABXABD
- ** Failers
- ABX
- BAXBAD
-
-/(\3)(\1)(a)/<JS>
- cat
-
-/(\3)(\1)(a)/SI<JS>
- cat
-
-/(\3)(\1)(a)/SI
- cat
-
-/i(?(DEFINE)(?<s>a))/SI
- i
-
-/()i(?(1)a)/SI
- ia
-
-/(?i)a(?-i)b|c/BZ
- XabX
- XAbX
- CcC
- ** Failers
- XABX
-
-/(?i)a(?s)b|c/BZ
-
-/(?i)a(?s-i)b|c/BZ
-
-/^(ab(c\1)d|x){2}$/BZ
- xabcxd
-
-/^(?&t)*+(?(DEFINE)(?<t>.))$/BZ
-
-/^(?&t)*(?(DEFINE)(?<t>.))$/BZ
-
-/ -- The first four of these are not in the Perl >= 5.10 test because Perl
- 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
- believe this to be a Perl bug. --/
-
-/(?=a\Kb)ab/
- ab
-
-/(?!a\Kb)ac/
- ac
-
-/^abc(?<=b\Kc)d/
- abcd
-
-/^abc(?<!b\Kq)d/
- abcd
-
-/(?>a\Kb)z|(ab)/
- ab
-
-/----------------------/
-
-/(?P<L1>(?P<L2>0|)|(?P>L2)(?P>L1))/
-
-/abc(*MARK:)pqr/
-
-/abc(*:)pqr/
-
-/abc(*FAIL:123)xyz/
-
-/--- This should, and does, fail. In Perl, it does not, which I think is a
- bug because replacing the B in the pattern by (B|D) does make it fail. ---/
-
-/A(*COMMIT)B/+K
- ACABX
-
-/--- These should be different, but in Perl 5.11 are not, which I think
- is a bug in Perl. ---/
-
-/A(*THEN)B|A(*THEN)C/K
- AC
-
-/A(*PRUNE)B|A(*PRUNE)C/K
- AC
-
-/--- 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
-
-/--- Mark names can be duplicated. Perl doesn't give a mark for this one,
-though PCRE does. ---/
-
-/^A(*:A)B|^X(*:A)Y/K
- ** Failers
- XAQQ
-
-/--- COMMIT at the start of a pattern should be the same as an anchor. Perl
-optimizations defeat this. So does the PCRE optimization unless we disable it
-with \Y. ---/
-
-/(*COMMIT)ABC/
- ABCDEFG
- ** Failers
- DEFGABC\Y
-
-/^(ab (c+(*THEN)cd) | xyz)/x
- abcccd
-
-/^(ab (c+(*PRUNE)cd) | xyz)/x
- abcccd
-
-/^(ab (c+(*FAIL)cd) | xyz)/x
- abcccd
-
-/--- Perl 5.11 gets some of these wrong ---/
-
-/(?>.(*ACCEPT))*?5/
- abcde
-
-/(.(*ACCEPT))*?5/
- abcde
-
-/(.(*ACCEPT))5/
- abcde
-
-/(.(*ACCEPT))*5/
- abcde
-
-/A\NB./BZ
- ACBD
- *** Failers
- A\nB
- ACB\n
-
-/A\NB./sBZ
- ACBD
- ACB\n
- *** Failers
- A\nB
-
-/A\NB/<crlf>
- A\nB
- A\rB
- ** Failers
- A\r\nB
-
-/\R+b/BZ
-
-/\R+\n/BZ
-
-/\R+\d/BZ
-
-/\d*\R/BZ
-
-/\s*\R/BZ
-
-/-- Perl treats this one differently, not failing the second string. I believe
- that is a bug in Perl. --/
-
-/^((abc|abcx)(*THEN)y|abcd)/
- abcd
- *** Failers
- abcxy
-
-/(?<=abc)def/
- abc\P\P
-
-/abc$/
- abc
- abc\P
- abc\P\P
-
-/abc$/m
- abc
- abc\n
- abc\P\P
- abc\n\P\P
- abc\P
- abc\n\P
-
-/abc\z/
- abc
- abc\P
- abc\P\P
-
-/abc\Z/
- abc
- abc\P
- abc\P\P
-
-/abc\b/
- abc
- abc\P
- abc\P\P
-
-/abc\B/
- abc
- abc\P
- abc\P\P
-
-/.+/
- abc\>0
- abc\>1
- abc\>2
- abc\>3
- abc\>4
- abc\>-4
-
-/^\cģ/
-
-/(?P<abn>(?P=abn)xxx)/BZ
-
-/(a\1z)/BZ
-
-/(?P<abn>(?P=abn)(?<badstufxxx)/BZ
-
-/(?P<abn>(?P=axn)xxx)/BZ
-
-/(?P<abn>(?P=axn)xxx)(?<axn>yy)/BZ
-
-/-- These tests are here because Perl gets the first one wrong. --/
-
-/(\R*)(.)/s
- \r\n
- \r\r\n\n\r
- \r\r\n\n\r\n
-
-/(\R)*(.)/s
- \r\n
- \r\r\n\n\r
- \r\r\n\n\r\n
-
-/((?>\r\n|\n|\x0b|\f|\r|\x85)*)(.)/s
- \r\n
- \r\r\n\n\r
- \r\r\n\n\r\n
-
-/-- --/
-
-/^abc$/BZ
-
-/^abc$/BZm
-
-/^(a)*+(\w)/S
- aaaaX
- ** Failers
- aaaa
-
-/^(?:a)*+(\w)/S
- aaaaX
- ** Failers
- aaaa
-
-/(a)++1234/SDZ
-
-/([abc])++1234/SI
-
-/(?<=(abc)+)X/
-
-/(^ab)/I
-
-/(^ab)++/I
-
-/(^ab|^)+/I
-
-/(^ab|^)++/I
-
-/(?:^ab)/I
-
-/(?:^ab)++/I
-
-/(?:^ab|^)+/I
-
-/(?:^ab|^)++/I
-
-/(.*ab)/I
-
-/(.*ab)++/I
-
-/(.*ab|.*)+/I
-
-/(.*ab|.*)++/I
-
-/(?:.*ab)/I
-
-/(?:.*ab)++/I
-
-/(?:.*ab|.*)+/I
-
-/(?:.*ab|.*)++/I
-
-/(?=a)[bcd]/I
-
-/((?=a))[bcd]/I
-
-/((?=a))+[bcd]/I
-
-/((?=a))++[bcd]/I
-
-/(?=a+)[bcd]/iI
-
-/(?=a+?)[bcd]/iI
-
-/(?=a++)[bcd]/iI
-
-/(?=a{3})[bcd]/iI
-
-/(abc)\1+/S
-
-/-- Perl doesn't get these right IMO (the 3rd is PCRE-specific) --/
-
-/(?1)(?:(b(*ACCEPT))){0}/
- b
-
-/(?1)(?:(b(*ACCEPT))){0}c/
- bc
- ** Failers
- b
-
-/(?1)(?:((*ACCEPT))){0}c/
- c
- c\N
-
-/^.*?(?(?=a)a|b(*THEN)c)/
- ba
-
-/^.*?(?(?=a)a|bc)/
- ba
-
-/^.*?(?(?=a)a(*THEN)b|c)/
- ac
-
-/^.*?(?(?=a)a(*THEN)b)c/
- ac
-
-/^.*?(a(*THEN)b)c/
- aabc
-
-/^.*? (?1) c (?(DEFINE)(a(*THEN)b))/x
- aabc
-
-/^.*?(a(*THEN)b|z)c/
- aabc
-
-/^.*?(z|a(*THEN)b)c/
- aabc
-
-/-- --/
-
-/-- These studied versions are here because they are not Perl-compatible; the
- studying means the mark is not seen. --/
-
-/(*MARK:A)(*SKIP:B)(C|X)/KS
- C
- D
-
-/(*:A)A+(*SKIP:A)(B|Z)/KS
- AAAC
-
-/-- --/
-
-"(?=a*(*ACCEPT)b)c"
- c
- c\N
-
-/(?1)c(?(DEFINE)((*ACCEPT)b))/
- c
- c\N
-
-/(?>(*ACCEPT)b)c/
- c
- c\N
-
-/(?:(?>(a)))+a%/++
- %aa%
-
-/(a)b|ac/++SS
- ac\O3
-
-/(a)(b)x|abc/++
- abc\O6
-
-/(a)bc|(a)(b)\2/
- \O3abc
- \O4abc
-
-/(?(DEFINE)(a(?2)|b)(b(?1)|a))(?:(?1)|(?2))/SI
-
-/(a(?2)|b)(b(?1)|a)(?:(?1)|(?2))/SI
-
-/(a(?2)|b)(b(?1)|a)(?1)(?2)/SI
-
-/(abc)(?1)/SI
-
-/^(?>a)++/
- aa\M
- aaaaaaaaa\M
-
-/(a)(?1)++/
- aa\M
- aaaaaaaaa\M
-
-/(?:(foo)|(bar)|(baz))X/SS=
- bazfooX
- foobazbarX
- barfooX
- bazX
- foobarbazX
- bazfooX\O0
- bazfooX\O2
- bazfooX\O4
- bazfooX\O6
- bazfooX\O8
- bazfooX\O10
-
-/(?=abc){3}abc/BZ
-
-/(?=abc)+abc/BZ
-
-/(?=abc)++abc/BZ
-
-/(?=abc){0}xyz/BZ
-
-/(?=(a))?./BZ
-
-/(?=(a))??./BZ
-
-/^(?=(a)){0}b(?1)/BZ
-
-/(?(DEFINE)(a))?b(?1)/BZ
-
-/^(?=(?1))?[az]([abc])d/BZ
-
-/^(?!a){0}\w+/BZ
-
-/(?<=(abc))?xyz/BZ
-
-/[:a[:abc]b:]/BZ
-
-/((?2))((?1))/SS
- abc
-
-/((?(R2)a+|(?1)b))/SS
- aaaabcde
-
-/(?(R)a*(?1)|((?R))b)/SS
- aaaabcde
-
-/(a+|(?R)b)/
-
-/^(a(*:A)(d|e(*:B))z|aeq)/C
- adz
- aez
- aeqwerty
-
-/.(*F)/
- \P\Pabc
-
-/\btype\b\W*?\btext\b\W*?\bjavascript\b/IS
-
-/\btype\b\W*?\btext\b\W*?\bjavascript\b|\burl\b\W*?\bshell:|<input\b.*?\btype\b\W*?\bimage\b|\bonkeyup\b\W*?\=/IS
-
-/a(*SKIP)c|b(*ACCEPT)|/+SI
- a
-
-/a(*SKIP)c|b(*ACCEPT)cd(*ACCEPT)|x/SI
- ax
-
-'a*(*ACCEPT)b'+
- \N\N
- abc\N\N
- bbb\N\N
-
-/(*ACCEPT)a/+I
- bax
-
-/z(*ACCEPT)a/+I
- baxzbx
-
-/a(?:.)*?a/ims
- \Mabbbbbbbbbbbbbbbbbbbbba
-
-/a(?:.(*THEN))*?a/ims
- \Mabbbbbbbbbbbbbbbbbbbbba
-
-/a(?:.(*THEN:ABC))*?a/ims
- \Mabbbbbbbbbbbbbbbbbbbbba
-
-/-- 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
-
-/(A (.*) C? (*THEN) | A D) (*FAIL)/x
-AbcdCBefgBhiBqz
-
-/(A (.*) C? (*THEN) | A D) z/x
-AbcdCBefgBhiBqz
-
-/(A (.*) C? (*THEN) | A D) \s* (*FAIL)/x
-AbcdCBefgBhiBqz
-
-/(A (.*) C? (*THEN) | A D) \s* z/x
-AbcdCBefgBhiBqz
-
-/(A (.*) (?:C|) (*THEN) | A D) (*FAIL)/x
-AbcdCBefgBhiBqz
-
-/(A (.*) (?:C|) (*THEN) | A D) z/x
-AbcdCBefgBhiBqz
-
-/(A (.*) C{0,6} (*THEN) | A D) (*FAIL)/x
-AbcdCBefgBhiBqz
-
-/(A (.*) C{0,6} (*THEN) | A D) z/x
-AbcdCBefgBhiBqz
-
-/(A (.*) (CE){0,6} (*THEN) | A D) (*FAIL)/x
-AbcdCEBefgBhiBqz
-
-/(A (.*) (CE){0,6} (*THEN) | A D) z/x
-AbcdCEBefgBhiBqz
-
-/(A (.*) (CE*){0,6} (*THEN) | A D) (*FAIL)/x
-AbcdCBefgBhiBqz
-
-/(A (.*) (CE*){0,6} (*THEN) | A D) z/x
-AbcdCBefgBhiBqz
-
-/-----------------------------------------------/
-
-/^(?>a+)(?>(z+))\w/BZ
- aaaazzzzb
- ** Failers
- aazz
-
-/(.)(\1|a(?2))/
- bab
-
-/\1|(.)(?R)\1/
- cbbbc
-
-/(.)((?(1)c|a)|a(?2))/
- baa
-
-/(?P<abn>(?P=abn)xxx)/BZ
-
-/(a\1z)/BZ
-
-/^(?>a+)(?>b+)(?>c+)(?>d+)(?>e+)/
- \Maabbccddee
-
-/^(?>(a+))(?>(b+))(?>(c+))(?>(d+))(?>(e+))/
- \Maabbccddee
-
-/^(?>(a+))(?>b+)(?>(c+))(?>d+)(?>(e+))/
- \Maabbccddee
-
-/^a\x41z/<JS>
- aAz
- *** Failers
- ax41z
-
-/^a[m\x41]z/<JS>
- aAz
-
-/^a\x1z/<JS>
- ax1z
-
-/^a\u0041z/<JS>
- aAz
- *** Failers
- au0041z
-
-/^a[m\u0041]z/<JS>
- aAz
-
-/^a\u041z/<JS>
- au041z
- *** Failers
- aAz
-
-/^a\U0041z/<JS>
- aU0041z
- *** Failers
- aAz
-
-/(?(?=c)c|d)++Y/BZ
-
-/(?(?=c)c|d)*+Y/BZ
-
-/a[\NB]c/
- aNc
-
-/a[B-\Nc]/
-
-/(a)(?2){0,1999}?(b)/
-
-/(a)(?(DEFINE)(b))(?2){0,1999}?(?2)/
-
-/--- This test, with something more complicated than individual letters, causes
-different behaviour in Perl. Perhaps it disables some optimization; no tag is
-passed back for the failures, whereas in PCRE there is a tag. ---/
-
-/(A|P)(*:A)(B|P) | (X|P)(X|P)(*:B)(Y|P)/xK
- AABC
- XXYZ
- ** Failers
- XAQQ
- XAQQXZZ
- AXQQQ
- AXXQQQ
-
-/-- Perl doesn't give marks for these, though it does if the alternatives are
-replaced by single letters. --/
-
-/(b|q)(*:m)f|a(*:n)w/K
- aw
- ** Failers
- abc
-
-/(q|b)(*:m)f|a(*:n)w/K
- aw
- ** Failers
- abc
-
-/-- After a partial match, the behaviour is as for a failure. --/
-
-/^a(*:X)bcde/K
- abc\P
-
-/-- These are here because Perl doesn't return a mark, except for the first --/
-
-/(?=(*:x))(q|)/K+
- abc
-
-/(?=(*:x))((*:y)q|)/K+
- abc
-
-/(?=(*:x))(?:(*:y)q|)/K+
- abc
-
-/(?=(*:x))(?>(*:y)q|)/K+
- abc
-
-/(?=a(*:x))(?!a(*:y)c)/K+
- ab
-
-/(?=a(*:x))(?=a(*:y)c|)/K+
- ab
-
-/-- End of testinput2 --/