summaryrefslogtreecommitdiff
path: root/testdata/testinput11
diff options
context:
space:
mode:
authorph10 <ph10@2f5784b3-3f2a-0410-8824-cb99058d5e15>2011-12-28 17:16:11 +0000
committerph10 <ph10@2f5784b3-3f2a-0410-8824-cb99058d5e15>2011-12-28 17:16:11 +0000
commit5e8b286b566d7ec502b80892e5b709025631d58c (patch)
treec8a6c83ad13e79a9b64718b784fe0126764d98b7 /testdata/testinput11
parenta29cc4dc66d82b59de7616c53517c58271e6e0e8 (diff)
downloadpcre-5e8b286b566d7ec502b80892e5b709025631d58c.tar.gz
Merging all the changes from the pcre16 branch into the trunk.
git-svn-id: svn://vcs.exim.org/pcre/code/trunk@836 2f5784b3-3f2a-0410-8824-cb99058d5e15
Diffstat (limited to 'testdata/testinput11')
-rw-r--r--testdata/testinput11806
1 files changed, 69 insertions, 737 deletions
diff --git a/testdata/testinput11 b/testdata/testinput11
index a9d1cfd..391ada7 100644
--- a/testdata/testinput11
+++ b/testdata/testinput11
@@ -1,803 +1,135 @@
-/-- These tests are for the Perl >= 5.10 features that PCRE supports. --/
+/-- These are a few representative patterns whose lengths and offsets are to be
+shown when the link size is 2. This is just a doublecheck test to ensure the
+sizes don't go horribly wrong when something is changed. The pattern contents
+are all themselves checked in other tests. Unicode, including property support,
+is required for these tests. --/
-/\H\h\V\v/
- X X\x0a
- X\x09X\x0b
- ** Failers
- \xa0 X\x0a
-
-/\H*\h+\V?\v{3,4}/
- \x09\x20\xa0X\x0a\x0b\x0c\x0d\x0a
- \x09\x20\xa0\x0a\x0b\x0c\x0d\x0a
- \x09\x20\xa0\x0a\x0b\x0c
- ** Failers
- \x09\x20\xa0\x0a\x0b
-
-/\H{3,4}/
- XY ABCDE
- XY PQR ST
-
-/.\h{3,4}./
- XY AB PQRS
-
-/\h*X\h?\H+Y\H?Z/
- >XNNNYZ
- > X NYQZ
- ** Failers
- >XYZ
- > X NY Z
-
-/\v*X\v?Y\v+Z\V*\x0a\V+\x0b\V{2,3}\x0c/
- >XY\x0aZ\x0aA\x0bNN\x0c
- >\x0a\x0dX\x0aY\x0a\x0bZZZ\x0aAAA\x0bNNN\x0c
-
-/(foo)\Kbar/
- foobar
-
-/(foo)(\Kbar|baz)/
- foobar
- foobaz
-
-/(foo\Kbar)baz/
- foobarbaz
-
-/abc\K|def\K/g+
- Xabcdefghi
-
-/ab\Kc|de\Kf/g+
- Xabcdefghi
-
-/(?=C)/g+
- ABCDECBA
-
-/^abc\K/+
- abcdef
- ** Failers
- defabcxyz
+/((?i)b)/BM
-/^(a(b))\1\g1\g{1}\g-1\g{-1}\g{-02}Z/
- ababababbbabZXXXX
+/(?s)(.*X|^B)/BM
-/(?<A>tom|bon)-\g{A}/
- tom-tom
- bon-bon
-
-/(^(a|b\g{-1}))/
- bacxxx
-
-/(?|(abc)|(xyz))\1/
- abcabc
- xyzxyz
- ** Failers
- abcxyz
- xyzabc
-
-/(?|(abc)|(xyz))(?1)/
- abcabc
- xyzabc
- ** Failers
- xyzxyz
-
-/^X(?5)(a)(?|(b)|(q))(c)(d)(Y)/
- XYabcdY
-
-/^X(?7)(a)(?|(b|(r)(s))|(q))(c)(d)(Y)/
- XYabcdY
-
-/^X(?7)(a)(?|(b|(?|(r)|(t))(s))|(q))(c)(d)(Y)/
- XYabcdY
-
-/(?'abc'\w+):\k<abc>{2}/
- a:aaxyz
- ab:ababxyz
- ** Failers
- a:axyz
- ab:abxyz
-
-/(?'abc'\w+):\g{abc}{2}/
- a:aaxyz
- ab:ababxyz
- ** Failers
- a:axyz
- ab:abxyz
-
-/^(?<ab>a)? (?(<ab>)b|c) (?('ab')d|e)/x
- abd
- ce
-
-/^(a.)\g-1Z/
- aXaXZ
-
-/^(a.)\g{-1}Z/
- aXaXZ
-
-/^(?(DEFINE) (?<A> a) (?<B> b) ) (?&A) (?&B) /x
- abcd
-
-/(?<NAME>(?&NAME_PAT))\s+(?<ADDR>(?&ADDRESS_PAT))
- (?(DEFINE)
- (?<NAME_PAT>[a-z]+)
- (?<ADDRESS_PAT>\d+)
- )/x
- metcalfe 33
-
-/(?(DEFINE)(?<byte>2[0-4]\d|25[0-5]|1\d\d|[1-9]?\d))\b(?&byte)(\.(?&byte)){3}/
- 1.2.3.4
- 131.111.10.206
- 10.0.0.0
- ** Failers
- 10.6
- 455.3.4.5
-
-/\b(?&byte)(\.(?&byte)){3}(?(DEFINE)(?<byte>2[0-4]\d|25[0-5]|1\d\d|[1-9]?\d))/
- 1.2.3.4
- 131.111.10.206
- 10.0.0.0
- ** Failers
- 10.6
- 455.3.4.5
-
-/^(\w++|\s++)*$/
- 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)/
- 12345a
- *** Failers
- 12345+
-
-/a++b/
- aaab
-
-/(a++b)/
- aaab
-
-/(a++)b/
- aaab
-
-/([^()]++|\([^()]*\))+/
- ((abc(ade)ufh()()x
-
-/\(([^()]++|\([^()]+\))+\)/
- (abc)
- (abc(def)xyz)
- *** Failers
- ((()aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-
-/^([^()]|\((?1)*\))*$/
- abc
- a(b)c
- a(b(c))d
- *** Failers)
- a(b(c)d
-
-/^>abc>([^()]|\((?1)*\))*<xyz<$/
- >abc>123<xyz<
- >abc>1(2)3<xyz<
- >abc>(1(2)3)<xyz<
-
-/^(?:((.)(?1)\2|)|((.)(?3)\4|.))$/i
- 1221
- Satanoscillatemymetallicsonatas
- AmanaplanacanalPanama
- AblewasIereIsawElba
- *** Failers
- Thequickbrownfox
-
-/^(\d+|\((?1)([+*-])(?1)\)|-(?1))$/
- 12
- (((2+2)*-3)-7)
- -12
- *** Failers
- ((2+2)*-3)-7)
-
-/^(x(y|(?1){2})z)/
- xyz
- xxyzxyzz
- *** Failers
- xxyzz
- xxyzxyzxyzz
-
-/((< (?: (?(R) \d++ | [^<>]*+) | (?2)) * >))/x
- <>
- <abcd>
- <abc <123> hij>
- <abc <def> hij>
- <abc<>def>
- <abc<>
- *** Failers
- <abc
-
-/^a+(*FAIL)/
- aaaaaa
-
-/a+b?c+(*FAIL)/
- aaabccc
+/(?s:.*X|^B)/BM
-/a+b?(*PRUNE)c+(*FAIL)/
- aaabccc
+/^[[:alnum:]]/BM
-/a+b?(*COMMIT)c+(*FAIL)/
- aaabccc
-
-/a+b?(*SKIP)c+(*FAIL)/
- aaabcccaaabccc
-
-/^(?:aaa(*THEN)\w{6}|bbb(*THEN)\w{5}|ccc(*THEN)\w{4}|\w{3})/
- aaaxxxxxx
- aaa++++++
- bbbxxxxx
- bbb+++++
- cccxxxx
- ccc++++
- dddddddd
-
-/^(aaa(*THEN)\w{6}|bbb(*THEN)\w{5}|ccc(*THEN)\w{4}|\w{3})/
- aaaxxxxxx
- aaa++++++
- bbbxxxxx
- bbb+++++
- cccxxxx
- ccc++++
- dddddddd
-
-/a+b?(*THEN)c+(*FAIL)/
- aaabccc
-
-/(A (A|B(*ACCEPT)|C) D)(E)/x
- AB
- ABX
- AADE
- ACDE
- ** Failers
- AD
-
-/^\W*+(?:((.)\W*+(?1)\W*+\2|)|((.)\W*+(?3)\W*+\4|\W*+.\W*+))\W*+$/i
- 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
-
-/^((.)(?1)\2|.)$/
- a
- aba
- aabaa
- abcdcba
- pqaabaaqp
- ablewasiereisawelba
- rhubarb
- the quick brown fox
-
-/(a)(?<=b(?1))/
- baz
- ** Failers
- caz
-
-/(?<=b(?1))(a)/
- zbaaz
- ** Failers
- aaa
-
-/(?<X>a)(?<=b(?&X))/
- baz
-
-/^(?|(abc)|(def))\1/
- abcabc
- defdef
- ** Failers
- abcdef
- defabc
-
-/^(?|(abc)|(def))(?1)/
- abcabc
- defabc
- ** Failers
- defdef
- abcdef
-
-/(?:a(?<quote> (?<apostrophe>')|(?<realquote>")) |b(?<quote> (?<apostrophe>')|(?<realquote>")) ) (?('quote')[a-z]+|[0-9]+)/xJ
- a\"aaaaa
- b\"aaaaa
- ** Failers
- b\"11111
-
-/(?:(?1)|B)(A(*F)|C)/
- ABCD
- CCD
- ** Failers
- CAD
-
-/^(?:(?1)|B)(A(*F)|C)/
- CCD
- BCD
- ** Failers
- ABCD
- CAD
- BAD
-
-/(?:(?1)|B)(A(*ACCEPT)XX|C)D/
- AAD
- ACD
- BAD
- BCD
- BAX
- ** Failers
- ACX
- ABC
-
-/(?(DEFINE)(A))B(?1)C/
- BAC
-
-/(?(DEFINE)((A)\2))B(?1)C/
- BAAC
-
-/(?<pn> \( ( [^()]++ | (?&pn) )* \) )/x
- (ab(cd)ef)
-
-/^(?!a(*SKIP)b)/
- ac
-
-/^(?=a(*SKIP)b|ac)/
- ** Failers
- ac
-
-/^(?=a(*THEN)b|ac)/
- ac
-
-/^(?=a(*PRUNE)b)/
- ab
- ** Failers
- ac
+/#/IxMD
-/^(?=a(*ACCEPT)b)/
- ac
+/a#/IxMD
-/^(?(?!a(*SKIP)b))/
- ac
+/x?+/BM
-/(?>a\Kb)/
- ab
+/x++/BM
-/((?>a\Kb))/
- ab
+/x{1,3}+/BM
-/(a\Kb)/
- ab
-
-/^a\Kcz|ac/
- ac
-
-/(?>a\Kbz|ab)/
- ab
+/(x)*+/BM
-/^(?&t)(?(DEFINE)(?<t>a\Kb))$/
- ab
+/^((a+)(?U)([ab]+)(?-U)([bc]+)(\w*))/BM
-/^([^()]|\((?1)*\))*$/
- a(b)c
- a(b(c)d)e
+|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|BM
-/(?P<L1>(?P<L2>0)(?P>L1)|(?P>L2))/
- 0
- 00
- 0000
+|\$\<\.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|BM
-/(?P<L1>(?P<L2>0)|(?P>L2)(?P>L1))/
- 0
- 00
- 0000
+/(a(?1)b)/BM
-/--- This one does fail, as expected, in Perl. It needs the complex item at the
- end of the pattern. A single letter instead of (B|D) makes it not fail,
- which I think is a Perl bug. --- /
+/(a(?1)+b)/BM
-/A(*COMMIT)(B|D)/
- ACABX
+/a(?P<name1>b|c)d(?P<longername2>e)/BM
-/--- Check the use of names for failure ---/
+/(?:a(?P<c>c(?P<d>d)))(?P<a>a)/BM
-/^(A(*PRUNE:A)B|C(*PRUNE:B)D)/K
- ** Failers
- AC
- CB
-
-/--- Force no study, otherwise mark is not seen. The studied version is in
- test 2 because it isn't Perl-compatible. ---/
-
-/(*MARK:A)(*SKIP:B)(C|X)/KSS
- C
- D
-
-/^(A(*THEN:A)B|C(*THEN:B)D)/K
- ** Failers
- CB
-
-/^(?:A(*THEN:A)B|C(*THEN:B)D)/K
- CB
-
-/^(?>A(*THEN:A)B|C(*THEN:B)D)/K
- CB
-
-/--- This should succeed, as the skip causes bump to offset 1 (the mark). Note
-that we have to have something complicated such as (B|Z) at the end because,
-for Perl, a simple character somehow causes an unwanted optimization to mess
-with the handling of backtracking verbs. ---/
-
-/A(*MARK:A)A+(*SKIP:A)(B|Z) | AC/xK
- AAAC
-
-/--- Test skipping over a non-matching mark. ---/
-
-/A(*MARK:A)A+(*MARK:B)(*SKIP:A)(B|Z) | AC/xK
- AAAC
-
-/--- Check shorthand for MARK ---/
-
-/A(*:A)A+(*SKIP:A)(B|Z) | AC/xK
- AAAC
+/(?P<a>a)...(?P=a)bbb(?P>a)d/BM
-/--- Don't loop! Force no study, otherwise mark is not seen. ---/
-
-/(*:A)A+(*SKIP:A)(B|Z)/KSS
- AAAC
-
-/--- This should succeed, as a non-existent skip name disables the skip ---/
-
-/A(*MARK:A)A+(*SKIP:B)(B|Z) | AC/xK
- AAAC
-
-/A(*MARK:A)A+(*SKIP:B)(B|Z) | AC(*:B)/xK
- AAAC
-
-/--- We use something more complicated than individual letters here, because
-that causes different behaviour in Perl. Perhaps it disables some optimization;
-anyway, the result now matches PCRE in that no tag is passed back for the
-failures. ---/
-
-/(A|P)(*:A)(B|P) | (X|P)(X|P)(*:B)(Y|P)/xK
- AABC
- XXYZ
- ** Failers
- XAQQ
- XAQQXZZ
- AXQQQ
- AXXQQQ
-
-/--- COMMIT at the start of a pattern should act like an anchor. Again,
-however, we need the complication for Perl. ---/
-
-/(*COMMIT)(A|P)(B|P)(C|P)/
- ABCDEFG
- ** Failers
- DEFGABC
-
-/--- COMMIT inside an atomic group can't stop backtracking over the group. ---/
-
-/(\w+)(?>b(*COMMIT))\w{2}/
- abbb
-
-/(\w+)b(*COMMIT)\w{2}/
- abbb
-
-/--- Check opening parens in comment when seeking forward reference. ---/
-
-/(?&t)(?#()(?(DEFINE)(?<t>a))/
- bac
-
-/--- COMMIT should override THEN ---/
-
-/(?>(*COMMIT)(?>yes|no)(*THEN)(*F))?/
- yes
-
-/(?>(*COMMIT)(yes|no)(*THEN)(*F))?/
- yes
-
-/b?(*SKIP)c/
- bc
- abc
-
-/(*SKIP)bc/
- a
-
-/(*SKIP)b/
- a
-
-/(?P<abn>(?P=abn)xxx|)+/
- xxx
-
-/(?i:([^b]))(?1)/
- aa
- aA
- ** Failers
- ab
- aB
- Ba
- ba
+/abc(?C255)de(?C)f/BM
-/^(?&t)*+(?(DEFINE)(?<t>a))\w$/
- aaaaaaX
- ** Failers
- aaaaaa
+/abcde/CBM
-/^(?&t)*(?(DEFINE)(?<t>a))\w$/
- aaaaaaX
- aaaaaa
+/\x{100}/8BM
-/^(a)*+(\w)/
- aaaaX
- YZ
- ** Failers
- aaaa
+/\x{1000}/8BM
-/^(?:a)*+(\w)/
- aaaaX
- YZ
- ** Failers
- aaaa
+/\x{10000}/8BM
-/^(a)++(\w)/
- aaaaX
- ** Failers
- aaaa
- YZ
+/\x{100000}/8BM
-/^(?:a)++(\w)/
- aaaaX
- ** Failers
- aaaa
- YZ
+/\x{10ffff}/8BM
-/^(a)?+(\w)/
- aaaaX
- YZ
+/\x{110000}/8BM
-/^(?:a)?+(\w)/
- aaaaX
- YZ
+/[\x{ff}]/8BM
-/^(a){2,}+(\w)/
- aaaaX
- ** Failers
- aaa
- YZ
+/[\x{100}]/8BM
-/^(?:a){2,}+(\w)/
- aaaaX
- ** Failers
- aaa
- YZ
+/\x80/8BM
-/(a|)*(?1)b/
- b
- ab
- aab
+/\xff/8BM
-/(a)++(?1)b/
- ** Failers
- ab
- aab
-
-/(a)*+(?1)b/
- ** Failers
- ab
- aab
-
-/(?1)(?:(b)){0}/
- b
-
-/(foo ( \( ((?:(?> [^()]+ )|(?2))*) \) ) )/x
- foo(bar(baz)+baz(bop))
-
-/(A (A|B(*ACCEPT)|C) D)(E)/x
- AB
-
-/\A.*?(?:a|b(*THEN)c)/
- ba
-
-/\A.*?(?:a|bc)/
- ba
-
-/\A.*?(a|b(*THEN)c)/
- ba
-
-/\A.*?(a|bc)/
- ba
-
-/\A.*?(?:a|b(*THEN)c)++/
- ba
-
-/\A.*?(?:a|bc)++/
- ba
-
-/\A.*?(a|b(*THEN)c)++/
- ba
-
-/\A.*?(a|bc)++/
- ba
-
-/\A.*?(?:a|b(*THEN)c|d)/
- ba
-
-/\A.*?(?:a|bc|d)/
- ba
-
-/(?:(b))++/
- beetle
-
-/(?(?=(a(*ACCEPT)z))a)/
- a
-
-/^(a)(?1)+ab/
- aaaab
-
-/^(a)(?1)++ab/
- aaaab
-
-/^(?=a(*:M))aZ/K
- aZbc
-
-/^(?!(*:M)b)aZ/K
- aZbc
-
-/(?(DEFINE)(a))?b(?1)/
- backgammon
-
-/^\N+/
- abc\ndef
-
-/^\N{1,}/
- abc\ndef
-
-/(?(R)a+|(?R)b)/
- aaaabcde
-
-/(?(R)a+|((?R))b)/
- aaaabcde
-
-/((?(R)a+|(?1)b))/
- aaaabcde
-
-/((?(R1)a+|(?1)b))/
- aaaabcde
-
-/a(*:any
-name)/K
- abc
-
-/(?>(?&t)c|(?&t))(?(DEFINE)(?<t>a|b(*PRUNE)c))/
- a
- ba
- bba
+/\x{0041}\x{2262}\x{0391}\x{002e}/D8M
-/--- Checking revised (*THEN) handling ---/
+/\x{D55c}\x{ad6d}\x{C5B4}/D8M
-/--- Capture ---/
+/\x{65e5}\x{672c}\x{8a9e}/D8M
-/^.*? (a(*THEN)b) c/x
- aabc
+/[\x{100}]/8BM
-/^.*? (a(*THEN)b|(*F)) c/x
- aabc
+/[Z\x{100}]/8BM
-/^.*? ( (a(*THEN)b) | (*F) ) c/x
- aabc
+/^[\x{100}\E-\Q\E\x{150}]/B8M
-/^.*? ( (a(*THEN)b) ) c/x
- aabc
+/^[\QĀ\E-\QŐ\E]/B8M
-/--- Non-capture ---/
+/^[\QĀ\E-\QŐ\E/B8M
-/^.*? (?:a(*THEN)b) c/x
- aabc
+/[\p{L}]/BM
-/^.*? (?:a(*THEN)b|(*F)) c/x
- aabc
+/[\p{^L}]/BM
-/^.*? (?: (?:a(*THEN)b) | (*F) ) c/x
- aabc
+/[\P{L}]/BM
-/^.*? (?: (?:a(*THEN)b) ) c/x
- aabc
+/[\P{^L}]/BM
-/--- Atomic ---/
+/[abc\p{L}\x{0660}]/8BM
-/^.*? (?>a(*THEN)b) c/x
- aabc
+/[\p{Nd}]/8BM
-/^.*? (?>a(*THEN)b|(*F)) c/x
- aabc
+/[\p{Nd}+-]+/8BM
-/^.*? (?> (?>a(*THEN)b) | (*F) ) c/x
- aabc
+/A\x{391}\x{10427}\x{ff3a}\x{1fb0}/8iBM
-/^.*? (?> (?>a(*THEN)b) ) c/x
- aabc
+/A\x{391}\x{10427}\x{ff3a}\x{1fb0}/8BM
-/--- Possessive capture ---/
+/[\x{105}-\x{109}]/8iBM
-/^.*? (a(*THEN)b)++ c/x
- aabc
+/( ( (?(1)0|) )* )/xBM
-/^.*? (a(*THEN)b|(*F))++ c/x
- aabc
+/( (?(1)0|)* )/xBM
-/^.*? ( (a(*THEN)b)++ | (*F) )++ c/x
- aabc
+/[a]/BM
-/^.*? ( (a(*THEN)b)++ )++ c/x
- aabc
+/[a]/8BM
-/--- Possessive non-capture ---/
+/[\xaa]/BM
-/^.*? (?:a(*THEN)b)++ c/x
- aabc
-
-/^.*? (?:a(*THEN)b|(*F))++ c/x
- aabc
-
-/^.*? (?: (?:a(*THEN)b)++ | (*F) )++ c/x
- aabc
-
-/^.*? (?: (?:a(*THEN)b)++ )++ c/x
- aabc
-
-/--- Condition assertion ---/
+/[\xaa]/8BM
-/^(?(?=a(*THEN)b)ab|ac)/
- ac
-
-/--- Condition ---/
+/[^a]/BM
-/^.*?(?(?=a)a|b(*THEN)c)/
- ba
+/[^a]/8BM
-/^.*?(?:(?(?=a)a|b(*THEN)c)|d)/
- ba
+/[^\xaa]/BM
-/^.*?(?(?=a)a(*THEN)b|c)/
- ac
+/[^\xaa]/8BM
-/--- Assertion ---/
+/[^\d]/8WB
-/^.*(?=a(*THEN)b)/
- aabc
+/[[:^alpha:][:^cntrl:]]+/8WB
-/------------------------------/
+/[[:^cntrl:][:^alpha:]]+/8WB
-/(?>a(*:m))/imsxSK
- a
-
-/(?>(a)(*:m))/imsxSK
- a
-
-/(?<=a(*ACCEPT)b)c/
- xacd
-
-/(?<=(a(*ACCEPT)b))c/
- xacd
-
-/(?<=(a(*COMMIT)b))c/
- xabcd
- ** Failers
- xacd
-
-/(?<!a(*FAIL)b)c/
- xcd
- acd
-
-/(?<=a(*:N)b)c/K
- xabcd
-
-/(?<=a(*PRUNE)b)c/
- xabcd
+/[[:alpha:]]+/8WB
-/(?<=a(*SKIP)b)c/
- xabcd
+/[[:^alpha:]\S]+/8WB
-/(?<=a(*THEN)b)c/
- xabcd
+/abc(d|e)(*THEN)x(123(*THEN)4|567(b|q)(*THEN)xx)/B
/-- End of testinput11 --/