summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorph10 <ph10@2f5784b3-3f2a-0410-8824-cb99058d5e15>2007-05-03 10:28:07 +0000
committerph10 <ph10@2f5784b3-3f2a-0410-8824-cb99058d5e15>2007-05-03 10:28:07 +0000
commit9e6948096ae0dc2bca53d9c0bf1dc043cdd6d949 (patch)
tree35f58d19ee15bb84a879906e1e8d6f2625f51fef
parentf928fc290573ad8fdc4e3ae8decd0a18f3cff828 (diff)
downloadpcre-9e6948096ae0dc2bca53d9c0bf1dc043cdd6d949.tar.gz
Use the pcretest "Z" option so all tests can be run with all link sizes.
git-svn-id: svn://vcs.exim.org/pcre/code/trunk@161 2f5784b3-3f2a-0410-8824-cb99058d5e15
-rw-r--r--ChangeLog5
-rwxr-xr-xRunTest15
-rw-r--r--testdata/testinput2178
-rw-r--r--testdata/testinput5142
-rw-r--r--testdata/testinput628
-rw-r--r--testdata/testoutput21670
-rw-r--r--testdata/testoutput5936
-rw-r--r--testdata/testoutput6140
8 files changed, 1550 insertions, 1564 deletions
diff --git a/ChangeLog b/ChangeLog
index 6a672e6..b908847 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -11,6 +11,11 @@ Version 7.2 01-May-07
to make them independent of the local environment's newline setting.
3. Add code to configure.ac to remove -g from the CFLAGS default settings.
+
+ 4. Some of the "internals" tests were previously cut out when the link size
+ was not 2, because the output contained actual offsets. The recent new
+ "Z" feature of pcretest means that these can be cut out, making the tests
+ usable with all link sizes.
Version 7.1 24-Apr-07
diff --git a/RunTest b/RunTest
index 2d2162f..d886001 100755
--- a/RunTest
+++ b/RunTest
@@ -55,21 +55,6 @@ while [ $# -gt 0 ] ; do
shift
done
-if [ "$link_size" != "2" ] ; then
- if [ $do2 = yes ] ; then
- echo "Can't run test 2 with an internal link size other than 2"
- exit 1
- fi
- if [ $do5 = yes ] ; then
- echo "Can't run test 5 with an internal link size other than 2"
- exit 1
- fi
- if [ $do6 = yes ] ; then
- echo "Can't run test 6 with an internal link size other than 2"
- exit 1
- fi
-fi
-
if [ $utf8 -eq 0 ] ; then
if [ $do4 = yes ] ; then
echo "Can't run test 4 because UTF-8 support is not configured"
diff --git a/testdata/testinput2 b/testdata/testinput2
index 20e6d93..9e2b862 100644
--- a/testdata/testinput2
+++ b/testdata/testinput2
@@ -236,7 +236,7 @@
/((?i)blah)\s+\1/I
-/((?i)b)/IDS
+/((?i)b)/IDZS
/(a*b|(?i:c*(?-i)d))/IS
@@ -442,17 +442,17 @@
)((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+ )((?:[a-zA-Z0-9]+
)?)?)?)?)?)?)?)?)?otherword/IM
-/.*X/ID
+/.*X/IDZ
-/.*X/IDs
+/.*X/IDZs
-/(.*X|^B)/ID
+/(.*X|^B)/IDZ
-/(.*X|^B)/IDs
+/(.*X|^B)/IDZs
-/(?s)(.*X|^B)/ID
+/(?s)(.*X|^B)/IDZ
-/(?s:.*X|^B)/ID
+/(?s:.*X|^B)/IDZ
/\Biss\B/I+
Mississippi
@@ -666,53 +666,53 @@
(ab(cd)ef)
(ab(cd(ef)gh)ij)
-/^[[:alnum:]]/D
+/^[[:alnum:]]/DZ
-/^[[:^alnum:]]/D
+/^[[:^alnum:]]/DZ
-/^[[:alpha:]]/D
+/^[[:alpha:]]/DZ
-/^[[:^alpha:]]/D
+/^[[:^alpha:]]/DZ
/[_[:alpha:]]/IS
-/^[[:ascii:]]/D
+/^[[:ascii:]]/DZ
-/^[[:^ascii:]]/D
+/^[[:^ascii:]]/DZ
-/^[[:blank:]]/D
+/^[[:blank:]]/DZ
-/^[[:^blank:]]/D
+/^[[:^blank:]]/DZ
/[\n\x0b\x0c\x0d[:blank:]]/IS
-/^[[:cntrl:]]/D
+/^[[:cntrl:]]/DZ
-/^[[:digit:]]/D
+/^[[:digit:]]/DZ
-/^[[:graph:]]/D
+/^[[:graph:]]/DZ
-/^[[:lower:]]/D
+/^[[:lower:]]/DZ
-/^[[:print:]]/D
+/^[[:print:]]/DZ
-/^[[:punct:]]/D
+/^[[:punct:]]/DZ
-/^[[:space:]]/D
+/^[[:space:]]/DZ
-/^[[:upper:]]/D
+/^[[:upper:]]/DZ
-/^[[:xdigit:]]/D
+/^[[:xdigit:]]/DZ
-/^[[:word:]]/D
+/^[[:word:]]/DZ
-/^[[:^cntrl:]]/D
+/^[[:^cntrl:]]/DZ
-/^[12[:^digit:]]/D
+/^[12[:^digit:]]/DZ
-/^[[:^blank:]]/D
+/^[[:^blank:]]/DZ
-/[01[:alpha:]%]/D
+/[01[:alpha:]%]/DZ
/[[.ch.]]/I
@@ -796,63 +796,63 @@
/--------------------------------------------------------------------/I
-/#/IxMD
+/#/IxMDZ
-/a#/IxMD
+/a#/IxMDZ
-/[\s]/D
+/[\s]/DZ
-/[\S]/D
+/[\S]/DZ
-/a(?i)b/D
+/a(?i)b/DZ
ab
aB
*** Failers
AB
-/(a(?i)b)/D
+/(a(?i)b)/DZ
ab
aB
*** Failers
AB
-/ (?i)abc/IxD
+/ (?i)abc/IxDZ
/#this is a comment
- (?i)abc/IxD
+ (?i)abc/IxDZ
-/123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890/D
+/123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890/DZ
-/\Q123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890/D
+/\Q123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890/DZ
-/\Q\E/D
+/\Q\E/DZ
\
-/\Q\Ex/D
+/\Q\Ex/DZ
-/ \Q\E/D
+/ \Q\E/DZ
-/a\Q\E/D
+/a\Q\E/DZ
abc
bca
bac
-/a\Q\Eb/D
+/a\Q\Eb/DZ
abc
-/\Q\Eabc/D
+/\Q\Eabc/DZ
-/x*+\w/D
+/x*+\w/DZ
*** Failers
xxxxx
-/x?+/D
+/x?+/DZ
-/x++/D
+/x++/DZ
-/x{1,3}+/D
+/x{1,3}+/DZ
-/(x)*+/D
+/(x)*+/DZ
/^(\w++|\s++)*$/I
now is the time for all good men to come to the aid of the party
@@ -882,7 +882,7 @@
*** Failers
((()aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
-/(abc){1,3}+/D
+/(abc){1,3}+/DZ
/a+?+/I
@@ -892,17 +892,17 @@
/a{2,3}?+b/IU
-/x(?U)a++b/D
+/x(?U)a++b/DZ
xaaaab
-/(?U)xa++b/D
+/(?U)xa++b/DZ
xaaaab
-/^((a+)(?U)([ab]+)(?-U)([bc]+)(\w*))/D
+/^((a+)(?U)([ab]+)(?-U)([bc]+)(\w*))/DZ
-/^x(?U)a+b/D
+/^x(?U)a+b/DZ
-/^x(?U)(a+)b/D
+/^x(?U)(a+)b/DZ
/[.x.]/I
@@ -926,11 +926,11 @@
/[[:space:]/I
-/[\s]/IDM
+/[\s]/IDZM
-/[[:space:]]/IDM
+/[[:space:]]/IDZM
-/[[:space:]abcde]/IDM
+/[[:space:]abcde]/IDZM
/< (?: (?(R) \d++ | [^<>]*+) | (?R)) * >/Ix
<>
@@ -942,9 +942,9 @@
*** 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|IDM
+|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|IDZM
-|\$\<\.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|IDM
+|\$\<\.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|IDZM
/(.*)\d+\1/I
@@ -1120,9 +1120,9 @@
>abc>1(2)3<xyz<
>abc>(1(2)3)<xyz<
-/(a(?1)b)/D
+/(a(?1)b)/DZ
-/(a(?1)+b)/D
+/(a(?1)+b)/DZ
/^\W*(?:((.)\W*(?1)\W*\2|)|((.)\W*(?3)\W*\4|\W*.\W*))\W*$/Ii
1221
@@ -1173,13 +1173,13 @@
a=b
a=bc
-/a(?P<name1>b|c)d(?P<longername2>e)/D
+/a(?P<name1>b|c)d(?P<longername2>e)/DZ
abde
acde
-/(?:a(?P<c>c(?P<d>d)))(?P<a>a)/D
+/(?:a(?P<c>c(?P<d>d)))(?P<a>a)/DZ
-/(?P<a>a)...(?P=a)bbb(?P>a)d/D
+/(?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
@@ -1215,13 +1215,13 @@
/(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)|(.*)a\32/Is
-/(a)(bc)/IND
+/(a)(bc)/INDZ
abc
-/(?P<one>a)(bc)/IND
+/(?P<one>a)(bc)/INDZ
abc
-/(a)(?P<named>bc)/IND
+/(a)(?P<named>bc)/INDZ
/(a+)*zz/I
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaazzbbbbbb\M
@@ -1239,9 +1239,9 @@
abcdefgh\Cone\Ctwo
abcdefgh\Cthree
-/(?P<Tes>)(?P<Test>)/D
+/(?P<Tes>)(?P<Test>)/DZ
-/(?P<Test>)(?P<Tes>)/D
+/(?P<Test>)(?P<Tes>)/DZ
/(?P<Z>zz)(?P<A>aa)/I
zzaa\CZ
@@ -1260,13 +1260,13 @@
[10,20,30,5,5,4,4,2,43,23,4234]
[]
-/(a(b(?2)c))?/D
+/(a(b(?2)c))?/DZ
-/(a(b(?2)c))*/D
+/(a(b(?2)c))*/DZ
-/(a(b(?2)c)){0,2}/D
+/(a(b(?2)c)){0,2}/DZ
-/[ab]{1}+/D
+/[ab]{1}+/DZ
/((w\/|-|with)*(free|immediate)*.*?shipping\s*[!.-]*)/Ii
Baby Bjorn Active Carrier - With free SHIPPING!!
@@ -1274,27 +1274,27 @@
/((w\/|-|with)*(free|immediate)*.*?shipping\s*[!.-]*)/IiS
Baby Bjorn Active Carrier - With free SHIPPING!!
-/a*.*b/ISD
+/a*.*b/ISDZ
-/(a|b)*.?c/ISD
+/(a|b)*.?c/ISDZ
-/abc(?C255)de(?C)f/D
+/abc(?C255)de(?C)f/DZ
-/abcde/ICD
+/abcde/ICDZ
abcde
abcdfe
-/a*b/ICD
+/a*b/ICDZ
ab
aaaab
aaaacb
-/a+b/ICD
+/a+b/ICDZ
ab
aaaab
aaaacb
-/(abc|def)x/ICD
+/(abc|def)x/ICDZ
abcx
defx
abcdefzx
@@ -1304,10 +1304,10 @@
abcdabcd
abcdcdcdcdcd
-/([ab]{,4}c|xy)/ICD
+/([ab]{,4}c|xy)/ICDZ
Note: that { does NOT introduce a quantifier
-/([ab]{1,4}c|xy){4,5}?123/ICD
+/([ab]{1,4}c|xy){4,5}?123/ICDZ
aacaacaacaacaac123
/\b.*/I
@@ -1667,18 +1667,18 @@ a random value. /Ix
/(d?|c)[ab]xyz/IS
-/^a*b\d/D
+/^a*b\d/DZ
-/^a*+b\d/D
+/^a*+b\d/DZ
-/^a*?b\d/D
+/^a*?b\d/DZ
-/^a+A\d/D
+/^a+A\d/DZ
aaaA5
** Failers
aaaa5
-/^a*A\d/IiD
+/^a*A\d/IiDZ
aaaA5
aaaa5
diff --git a/testdata/testinput5 b/testdata/testinput5
index 85d3ce6..65ae0b3 100644
--- a/testdata/testinput5
+++ b/testdata/testinput5
@@ -1,20 +1,20 @@
-/\x{100}/8DM
+/\x{100}/8DZM
-/\x{1000}/8DM
+/\x{1000}/8DZM
-/\x{10000}/8DM
+/\x{10000}/8DZM
-/\x{100000}/8DM
+/\x{100000}/8DZM
-/\x{1000000}/8DM
+/\x{1000000}/8DZM
-/\x{4000000}/8DM
+/\x{4000000}/8DZM
-/\x{7fffFFFF}/8DM
+/\x{7fffFFFF}/8DZM
-/[\x{ff}]/8DM
+/[\x{ff}]/8DZM
-/[\x{100}]/8DM
+/[\x{100}]/8DZM
/\x{ffffffff}/8
@@ -23,39 +23,39 @@
/^\x{100}a\x{1234}/8
\x{100}a\x{1234}bcd
-/\x80/8D
+/\x80/8DZ
-/\xff/8D
+/\xff/8DZ
-/\x{0041}\x{2262}\x{0391}\x{002e}/D8
+/\x{0041}\x{2262}\x{0391}\x{002e}/DZ8
\x{0041}\x{2262}\x{0391}\x{002e}
-/\x{D55c}\x{ad6d}\x{C5B4}/D8
+/\x{D55c}\x{ad6d}\x{C5B4}/DZ8
\x{D55c}\x{ad6d}\x{C5B4}
-/\x{65e5}\x{672c}\x{8a9e}/D8
+/\x{65e5}\x{672c}\x{8a9e}/DZ8
\x{65e5}\x{672c}\x{8a9e}
-/\x{80}/D8
+/\x{80}/DZ8
-/\x{084}/D8
+/\x{084}/DZ8
-/\x{104}/D8
+/\x{104}/DZ8
-/\x{861}/D8
+/\x{861}/DZ8
-/\x{212ab}/D8
+/\x{212ab}/DZ8
-/.{3,5}X/D8
+/.{3,5}X/DZ8
\x{212ab}\x{212ab}\x{212ab}\x{861}X
-/.{3,5}?/D8
+/.{3,5}?/DZ8
\x{212ab}\x{212ab}\x{212ab}\x{861}
-/-- These tests are here rather than in testinput4 because Perl 5.6 has --/
-/-- some problems with UTF-8 support, in the area of \x{..} where the --/
-/-- value is < 255. It grumbles about invalid UTF-8 strings. --/
+/-- These tests are here rather than in testinput4 because Perl 5.6 has some
+problems with UTF-8 support, in the area of \x{..} where the value is < 255.
+It grumbles about invalid UTF-8 strings. --/
/^[a\x{c0}]b/8
\x{c0}b
@@ -80,29 +80,29 @@
/(?<=\C)X/8
Should produce an error diagnostic
-/-- This one is here not because it's different to Perl, but because the --/
-/-- way the captured single-byte is displayed. (In Perl it becomes a --/
-/-- character, and you can't tell the difference.) --/
+/-- This one is here not because it's different to Perl, but because the way
+the captured single-byte is displayed. (In Perl it becomes a character, and you
+can't tell the difference.) --/
/X(\C)(.*)/8
X\x{1234}
X\nabc
-/^[ab]/8D
+/^[ab]/8DZ
bar
*** Failers
c
\x{ff}
\x{100}
-/^[^ab]/8D
+/^[^ab]/8DZ
c
\x{ff}
\x{100}
*** Failers
aaa
-/[^ab\xC0-\xF0]/8SD
+/[^ab\xC0-\xF0]/8SDZ
\x{f1}
\x{bf}
\x{100}
@@ -111,16 +111,16 @@
\x{c0}
\x{f0}
-/Ä€{3,4}/8SD
+/Ä€{3,4}/8SDZ
\x{100}\x{100}\x{100}\x{100\x{100}
-/(\x{100}+|x)/8SD
+/(\x{100}+|x)/8SDZ
-/(\x{100}*a|x)/8SD
+/(\x{100}*a|x)/8SDZ
-/(\x{100}{0,2}a|x)/8SD
+/(\x{100}{0,2}a|x)/8SDZ
-/(\x{100}{1,2}a|x)/8SD
+/(\x{100}{1,2}a|x)/8SDZ
/\x{100}*(\d+|"(?1)")/8
1234
@@ -132,34 +132,34 @@
*** Failers
\x{100}\x{100}abcd
-/\x{100}/8D
+/\x{100}/8DZ
-/\x{100}*/8D
+/\x{100}*/8DZ
-/a\x{100}*/8D
+/a\x{100}*/8DZ
-/ab\x{100}*/8D
+/ab\x{100}*/8DZ
-/a\x{100}\x{101}*/8D
+/a\x{100}\x{101}*/8DZ
-/a\x{100}\x{101}+/8D
+/a\x{100}\x{101}+/8DZ
-/\x{100}*A/8D
+/\x{100}*A/8DZ
A
-/\x{100}*\d(?R)/8D
+/\x{100}*\d(?R)/8DZ
-/[^\x{c4}]/D
+/[^\x{c4}]/DZ
-/[^\x{c4}]/8D
+/[^\x{c4}]/8DZ
-/[\x{100}]/8DM
+/[\x{100}]/8DZM
\x{100}
Z\x{100}
\x{100}Z
*** Failers
-/[Z\x{100}]/8DM
+/[Z\x{100}]/8DZM
Z\x{100}
\x{100}
\x{100}Z
@@ -174,21 +174,21 @@
\x{105}
\x{ff}
-/[z-\x{100}]/8D
+/[z-\x{100}]/8DZ
-/[z\Qa-d]Ä€\E]/8D
+/[z\Qa-d]Ä€\E]/8DZ
\x{100}
Ä€
-/[\xFF]/D
+/[\xFF]/DZ
>\xff<
-/[\xff]/D8
+/[\xff]/DZ8
>\x{ff}<
-/[^\xFF]/D
+/[^\xFF]/DZ
-/[^\xff]/8D
+/[^\xff]/8DZ
/[Ä-Ü]/8
Ö # Matches without Study
@@ -212,7 +212,7 @@
/ÃÃÃxxx/8
-/ÃÃÃxxx/8?D
+/ÃÃÃxxx/8?DZ
/abc/8
Ã]
@@ -239,19 +239,19 @@
\xfc\x84\x80\x80\x80\x80
\xfd\x83\x80\x80\x80\x80
-/\x{100}abc(xyz(?1))/8D
+/\x{100}abc(xyz(?1))/8DZ
-/[^\x{100}]abc(xyz(?1))/8D
+/[^\x{100}]abc(xyz(?1))/8DZ
-/[ab\x{100}]abc(xyz(?1))/8D
+/[ab\x{100}]abc(xyz(?1))/8DZ
-/(\x{100}(b(?2)c))?/D8
+/(\x{100}(b(?2)c))?/DZ8
-/(\x{100}(b(?2)c)){0,2}/D8
+/(\x{100}(b(?2)c)){0,2}/DZ8
-/(\x{100}(b(?1)c))?/D8
+/(\x{100}(b(?1)c))?/DZ8
-/(\x{100}(b(?1)c)){0,2}/D8
+/(\x{100}(b(?1)c)){0,2}/DZ8
/\W/8
A.B
@@ -263,7 +263,7 @@
/a\x{1234}b/P8
a\x{1234}b
-/^\ሴ/8D
+/^\ሴ/8DZ
/\777/I
@@ -271,23 +271,23 @@
\x{1ff}
\777
-/\x{100}*\d/8D
+/\x{100}*\d/8DZ
-/\x{100}*\s/8D
+/\x{100}*\s/8DZ
-/\x{100}*\w/8D
+/\x{100}*\w/8DZ
-/\x{100}*\D/8D
+/\x{100}*\D/8DZ
-/\x{100}*\S/8D
+/\x{100}*\S/8DZ
-/\x{100}*\W/8D
+/\x{100}*\W/8DZ
-/\x{100}+\x{200}/8D
+/\x{100}+\x{200}/8DZ
-/\x{100}+X/8D
+/\x{100}+X/8DZ
-/X+\x{200}/8D
+/X+\x{200}/8DZ
/()()()()()()()()()()
()()()()()()()()()()
diff --git a/testdata/testinput6 b/testdata/testinput6
index a0de1f1..3a658cb 100644
--- a/testdata/testinput6
+++ b/testdata/testinput6
@@ -323,20 +323,20 @@
** Failers
WXYZ
-/[\p{L}]/D
+/[\p{L}]/DZ
-/[\p{^L}]/D
+/[\p{^L}]/DZ
-/[\P{L}]/D
+/[\P{L}]/DZ
-/[\P{^L}]/D
+/[\P{^L}]/DZ
-/[abc\p{L}\x{0660}]/8D
+/[abc\p{L}\x{0660}]/8DZ
-/[\p{Nd}]/8DM
+/[\p{Nd}]/8DZM
1234
-/[\p{Nd}+-]+/8DM
+/[\p{Nd}+-]+/8DZM
1234
12-34
12+\x{661}-34
@@ -425,13 +425,13 @@
A\x{391}\x{10427}\x{ff5a}\x{1fb0}
A\x{391}\x{10427}\x{ff3a}\x{1fb8}
-/A\x{391}\x{10427}\x{ff3a}\x{1fb0}/8iD
+/A\x{391}\x{10427}\x{ff3a}\x{1fb0}/8iDZ
-/A\x{391}\x{10427}\x{ff3a}\x{1fb0}/8D
+/A\x{391}\x{10427}\x{ff3a}\x{1fb0}/8DZ
-/AB\x{1fb0}/8D
+/AB\x{1fb0}/8DZ
-/AB\x{1fb0}/8Di
+/AB\x{1fb0}/8DZi
/\x{391}+/8i
\x{391}\x{3b1}\x{3b1}\x{3b1}\x{391}
@@ -452,7 +452,7 @@
\x{c0}
\x{e0}
-/[\x{105}-\x{109}]/8iD
+/[\x{105}-\x{109}]/8iDZ
\x{104}
\x{105}
\x{109}
@@ -460,7 +460,7 @@
\x{100}
\x{10a}
-/[z-\x{100}]/8iD
+/[z-\x{100}]/8iDZ
Z
z
\x{39c}
@@ -475,7 +475,7 @@
Y
y
-/[z-\x{100}]/8Di
+/[z-\x{100}]/8DZi
/^\X/8
A
diff --git a/testdata/testoutput2 b/testdata/testoutput2
index a636c7e..d88e489 100644
--- a/testdata/testoutput2
+++ b/testdata/testoutput2
@@ -597,16 +597,16 @@ No options
First char = 'b' (caseless)
Need char = 'h' (caseless)
-/((?i)b)/IDS
+/((?i)b)/IDZS
------------------------------------------------------------------
- 0 17 Bra 0
- 3 9 Bra 1
- 8 01 Opt
- 10 NC b
- 12 9 Ket
- 15 00 Opt
- 17 17 Ket
- 20 End
+ Bra 0
+ Bra 1
+ 01 Opt
+ NC b
+ Ket
+ 00 Opt
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 1
No options
@@ -1110,13 +1110,13 @@ No options
First char = 'w'
Need char = 'd'
-/.*X/ID
+/.*X/IDZ
------------------------------------------------------------------
- 0 7 Bra 0
- 3 Any*
- 5 X
- 7 7 Ket
- 10 End
+ Bra 0
+ Any*
+ X
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Partial matching not supported
@@ -1124,13 +1124,13 @@ No options
First char at start or follows newline
Need char = 'X'
-/.*X/IDs
+/.*X/IDZs
------------------------------------------------------------------
- 0 7 Bra 0
- 3 Any*
- 5 X
- 7 7 Ket
- 10 End
+ Bra 0
+ Any*
+ X
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Partial matching not supported
@@ -1138,18 +1138,18 @@ Options: anchored dotall
No first char
Need char = 'X'
-/(.*X|^B)/ID
+/(.*X|^B)/IDZ
------------------------------------------------------------------
- 0 21 Bra 0
- 3 9 Bra 1
- 8 Any*
- 10 X
- 12 6 Alt
- 15 ^
- 16 B
- 18 15 Ket
- 21 21 Ket
- 24 End
+ Bra 0
+ Bra 1
+ Any*
+ X
+ Alt
+ ^
+ B
+ Ket
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 1
Partial matching not supported
@@ -1157,18 +1157,18 @@ No options
First char at start or follows newline
No need char
-/(.*X|^B)/IDs
+/(.*X|^B)/IDZs
------------------------------------------------------------------
- 0 21 Bra 0
- 3 9 Bra 1
- 8 Any*
- 10 X
- 12 6 Alt
- 15 ^
- 16 B
- 18 15 Ket
- 21 21 Ket
- 24 End
+ Bra 0
+ Bra 1
+ Any*
+ X
+ Alt
+ ^
+ B
+ Ket
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 1
Partial matching not supported
@@ -1176,18 +1176,18 @@ Options: anchored dotall
No first char
No need char
-/(?s)(.*X|^B)/ID
+/(?s)(.*X|^B)/IDZ
------------------------------------------------------------------
- 0 21 Bra 0
- 3 9 Bra 1
- 8 Any*
- 10 X
- 12 6 Alt
- 15 ^
- 16 B
- 18 15 Ket
- 21 21 Ket
- 24 End
+ Bra 0
+ Bra 1
+ Any*
+ X
+ Alt
+ ^
+ B
+ Ket
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 1
Partial matching not supported
@@ -1195,21 +1195,21 @@ Options: anchored dotall
No first char
No need char
-/(?s:.*X|^B)/ID
+/(?s:.*X|^B)/IDZ
------------------------------------------------------------------
- 0 25 Bra 0
- 3 9 Bra 0
- 6 04 Opt
- 8 Any*
- 10 X
- 12 8 Alt
- 15 04 Opt
- 17 ^
- 18 B
- 20 17 Ket
- 23 00 Opt
- 25 25 Ket
- 28 End
+ Bra 0
+ Bra 0
+ 04 Opt
+ Any*
+ X
+ Alt
+ 04 Opt
+ ^
+ B
+ Ket
+ 00 Opt
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Partial matching not supported
@@ -1884,52 +1884,52 @@ Need char = ')'
2: ij
3: (cd(ef)gh)
-/^[[:alnum:]]/D
+/^[[:alnum:]]/DZ
------------------------------------------------------------------
- 0 37 Bra 0
- 3 ^
- 4 [0-9A-Za-z]
- 37 37 Ket
- 40 End
+ Bra 0
+ ^
+ [0-9A-Za-z]
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: anchored
No first char
No need char
-/^[[:^alnum:]]/D
+/^[[:^alnum:]]/DZ
------------------------------------------------------------------
- 0 37 Bra 0
- 3 ^
- 4 [\x00-/:-@[-`{-\xff]
- 37 37 Ket
- 40 End
+ Bra 0
+ ^
+ [\x00-/:-@[-`{-\xff]
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: anchored
No first char
No need char
-/^[[:alpha:]]/D
+/^[[:alpha:]]/DZ
------------------------------------------------------------------
- 0 37 Bra 0
- 3 ^
- 4 [A-Za-z]
- 37 37 Ket
- 40 End
+ Bra 0
+ ^
+ [A-Za-z]
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: anchored
No first char
No need char
-/^[[:^alpha:]]/D
+/^[[:^alpha:]]/DZ
------------------------------------------------------------------
- 0 37 Bra 0
- 3 ^
- 4 [\x00-@[-`{-\xff]
- 37 37 Ket
- 40 End
+ Bra 0
+ ^
+ [\x00-@[-`{-\xff]
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: anchored
@@ -1944,52 +1944,52 @@ No need char
Starting byte set: A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
_ 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
-/^[[:ascii:]]/D
+/^[[:ascii:]]/DZ
------------------------------------------------------------------
- 0 37 Bra 0
- 3 ^
- 4 [\x00-\x7f]
- 37 37 Ket
- 40 End
+ Bra 0
+ ^
+ [\x00-\x7f]
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: anchored
No first char
No need char
-/^[[:^ascii:]]/D
+/^[[:^ascii:]]/DZ
------------------------------------------------------------------
- 0 37 Bra 0
- 3 ^
- 4 [\x80-\xff]
- 37 37 Ket
- 40 End
+ Bra 0
+ ^
+ [\x80-\xff]
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: anchored
No first char
No need char
-/^[[:blank:]]/D
+/^[[:blank:]]/DZ
------------------------------------------------------------------
- 0 37 Bra 0
- 3 ^
- 4 [\x09 ]
- 37 37 Ket
- 40 End
+ Bra 0
+ ^
+ [\x09 ]
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: anchored
No first char
No need char
-/^[[:^blank:]]/D
+/^[[:^blank:]]/DZ
------------------------------------------------------------------
- 0 37 Bra 0
- 3 ^
- 4 [\x00-\x08\x0a-\x1f!-\xff]
- 37 37 Ket
- 40 End
+ Bra 0
+ ^
+ [\x00-\x08\x0a-\x1f!-\xff]
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: anchored
@@ -2003,181 +2003,181 @@ No first char
No need char
Starting byte set: \x09 \x0a \x0b \x0c \x0d \x20
-/^[[:cntrl:]]/D
+/^[[:cntrl:]]/DZ
------------------------------------------------------------------
- 0 37 Bra 0
- 3 ^
- 4 [\x00-\x1f\x7f]
- 37 37 Ket
- 40 End
+ Bra 0
+ ^
+ [\x00-\x1f\x7f]
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: anchored
No first char
No need char
-/^[[:digit:]]/D
+/^[[:digit:]]/DZ
------------------------------------------------------------------
- 0 37 Bra 0
- 3 ^
- 4 [0-9]
- 37 37 Ket
- 40 End
+ Bra 0
+ ^
+ [0-9]
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: anchored
No first char
No need char
-/^[[:graph:]]/D
+/^[[:graph:]]/DZ
------------------------------------------------------------------
- 0 37 Bra 0
- 3 ^
- 4 [!-~]
- 37 37 Ket
- 40 End
+ Bra 0
+ ^
+ [!-~]
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: anchored
No first char
No need char
-/^[[:lower:]]/D
+/^[[:lower:]]/DZ
------------------------------------------------------------------
- 0 37 Bra 0
- 3 ^
- 4 [a-z]
- 37 37 Ket
- 40 End
+ Bra 0
+ ^
+ [a-z]
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: anchored
No first char
No need char
-/^[[:print:]]/D
+/^[[:print:]]/DZ
------------------------------------------------------------------
- 0 37 Bra 0
- 3 ^
- 4 [ -~]
- 37 37 Ket
- 40 End
+ Bra 0
+ ^
+ [ -~]
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: anchored
No first char
No need char
-/^[[:punct:]]/D
+/^[[:punct:]]/DZ
------------------------------------------------------------------
- 0 37 Bra 0
- 3 ^
- 4 [!-/:-@[-`{-~]
- 37 37 Ket
- 40 End
+ Bra 0
+ ^
+ [!-/:-@[-`{-~]
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: anchored
No first char
No need char
-/^[[:space:]]/D
+/^[[:space:]]/DZ
------------------------------------------------------------------
- 0 37 Bra 0
- 3 ^
- 4 [\x09-\x0d ]
- 37 37 Ket
- 40 End
+ Bra 0
+ ^
+ [\x09-\x0d ]
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: anchored
No first char
No need char
-/^[[:upper:]]/D
+/^[[:upper:]]/DZ
------------------------------------------------------------------
- 0 37 Bra 0
- 3 ^
- 4 [A-Z]
- 37 37 Ket
- 40 End
+ Bra 0
+ ^
+ [A-Z]
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: anchored
No first char
No need char
-/^[[:xdigit:]]/D
+/^[[:xdigit:]]/DZ
------------------------------------------------------------------
- 0 37 Bra 0
- 3 ^
- 4 [0-9A-Fa-f]
- 37 37 Ket
- 40 End
+ Bra 0
+ ^
+ [0-9A-Fa-f]
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: anchored
No first char
No need char
-/^[[:word:]]/D
+/^[[:word:]]/DZ
------------------------------------------------------------------
- 0 37 Bra 0
- 3 ^
- 4 [0-9A-Z_a-z]
- 37 37 Ket
- 40 End
+ Bra 0
+ ^
+ [0-9A-Z_a-z]
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: anchored
No first char
No need char
-/^[[:^cntrl:]]/D
+/^[[:^cntrl:]]/DZ
------------------------------------------------------------------
- 0 37 Bra 0
- 3 ^
- 4 [ -~\x80-\xff]
- 37 37 Ket
- 40 End
+ Bra 0
+ ^
+ [ -~\x80-\xff]
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: anchored
No first char
No need char
-/^[12[:^digit:]]/D
+/^[12[:^digit:]]/DZ
------------------------------------------------------------------
- 0 37 Bra 0
- 3 ^
- 4 [\x00-/12:-\xff]
- 37 37 Ket
- 40 End
+ Bra 0
+ ^
+ [\x00-/12:-\xff]
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: anchored
No first char
No need char
-/^[[:^blank:]]/D
+/^[[:^blank:]]/DZ
------------------------------------------------------------------
- 0 37 Bra 0
- 3 ^
- 4 [\x00-\x08\x0a-\x1f!-\xff]
- 37 37 Ket
- 40 End
+ Bra 0
+ ^
+ [\x00-\x08\x0a-\x1f!-\xff]
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: anchored
No first char
No need char
-/[01[:alpha:]%]/D
+/[01[:alpha:]%]/DZ
------------------------------------------------------------------
- 0 36 Bra 0
- 3 [%01A-Za-z]
- 36 36 Ket
- 39 End
+ Bra 0
+ [%01A-Za-z]
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
No options
@@ -2693,63 +2693,63 @@ No options
First char = '-'
Need char = '-'
-/#/IxMD
+/#/IxMDZ
Memory allocation (code space): 7
------------------------------------------------------------------
- 0 3 Bra 0
- 3 3 Ket
- 6 End
+ Bra 0
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: extended
No first char
No need char
-/a#/IxMD
+/a#/IxMDZ
Memory allocation (code space): 9
------------------------------------------------------------------
- 0 5 Bra 0
- 3 a
- 5 5 Ket
- 8 End
+ Bra 0
+ a
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: extended
First char = 'a'
No need char
-/[\s]/D
+/[\s]/DZ
------------------------------------------------------------------
- 0 36 Bra 0
- 3 [\x09\x0a\x0c\x0d ]
- 36 36 Ket
- 39 End
+ Bra 0
+ [\x09\x0a\x0c\x0d ]
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
No options
No first char
No need char
-/[\S]/D
+/[\S]/DZ
------------------------------------------------------------------
- 0 36 Bra 0
- 3 [\x00-\x08\x0b\x0e-\x1f!-\xff]
- 36 36 Ket
- 39 End
+ Bra 0
+ [\x00-\x08\x0b\x0e-\x1f!-\xff]
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
No options
No first char
No need char
-/a(?i)b/D
+/a(?i)b/DZ
------------------------------------------------------------------
- 0 9 Bra 0
- 3 a
- 5 01 Opt
- 7 NC b
- 9 9 Ket
- 12 End
+ Bra 0
+ a
+ 01 Opt
+ NC b
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
No options
@@ -2764,17 +2764,17 @@ No match
AB
No match
-/(a(?i)b)/D
+/(a(?i)b)/DZ
------------------------------------------------------------------
- 0 19 Bra 0
- 3 11 Bra 1
- 8 a
- 10 01 Opt
- 12 NC b
- 14 11 Ket
- 17 00 Opt
- 19 19 Ket
- 22 End
+ Bra 0
+ Bra 1
+ a
+ 01 Opt
+ NC b
+ Ket
+ 00 Opt
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 1
No options
@@ -2791,12 +2791,12 @@ No match
AB
No match
-/ (?i)abc/IxD
+/ (?i)abc/IxDZ
------------------------------------------------------------------
- 0 9 Bra 0
- 3 NC abc
- 9 9 Ket
- 12 End
+ Bra 0
+ NC abc
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: caseless extended
@@ -2804,47 +2804,47 @@ First char = 'a' (caseless)
Need char = 'c' (caseless)
/#this is a comment
- (?i)abc/IxD
+ (?i)abc/IxDZ
------------------------------------------------------------------
- 0 9 Bra 0
- 3 NC abc
- 9 9 Ket
- 12 End
+ Bra 0
+ NC abc
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: caseless extended
First char = 'a' (caseless)
Need char = 'c' (caseless)
-/123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890/D
+/123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890/DZ
------------------------------------------------------------------
- 0 603 Bra 0
- 3 123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890
-603 603 Ket
-606 End
+ Bra 0
+ 123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
No options
First char = '1'
Need char = '0'
-/\Q123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890/D
+/\Q123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890/DZ
------------------------------------------------------------------
- 0 603 Bra 0
- 3 123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890
-603 603 Ket
-606 End
+ Bra 0
+ 123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
No options
First char = '1'
Need char = '0'
-/\Q\E/D
+/\Q\E/DZ
------------------------------------------------------------------
- 0 3 Bra 0
- 3 3 Ket
- 6 End
+ Bra 0
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
No options
@@ -2853,36 +2853,36 @@ No need char
\
0:
-/\Q\Ex/D
+/\Q\Ex/DZ
------------------------------------------------------------------
- 0 5 Bra 0
- 3 x
- 5 5 Ket
- 8 End
+ Bra 0
+ x
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
No options
First char = 'x'
No need char
-/ \Q\E/D
+/ \Q\E/DZ
------------------------------------------------------------------
- 0 5 Bra 0
- 3
- 5 5 Ket
- 8 End
+ Bra 0
+
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
No options
First char = ' '
No need char
-/a\Q\E/D
+/a\Q\E/DZ
------------------------------------------------------------------
- 0 5 Bra 0
- 3 a
- 5 5 Ket
- 8 End
+ Bra 0
+ a
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
No options
@@ -2895,12 +2895,12 @@ No need char
bac
0: a
-/a\Q\Eb/D
+/a\Q\Eb/DZ
------------------------------------------------------------------
- 0 7 Bra 0
- 3 ab
- 7 7 Ket
- 10 End
+ Bra 0
+ ab
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
No options
@@ -2909,25 +2909,25 @@ Need char = 'b'
abc
0: ab
-/\Q\Eabc/D
+/\Q\Eabc/DZ
------------------------------------------------------------------
- 0 9 Bra 0
- 3 abc
- 9 9 Ket
- 12 End
+ Bra 0
+ abc
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
No options
First char = 'a'
Need char = 'c'
-/x*+\w/D
+/x*+\w/DZ
------------------------------------------------------------------
- 0 6 Bra 0
- 3 x*+
- 5 \w
- 6 6 Ket
- 9 End
+ Bra 0
+ x*+
+ \w
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Partial matching not supported
@@ -2939,24 +2939,24 @@ No need char
xxxxx
No match
-/x?+/D
+/x?+/DZ
------------------------------------------------------------------
- 0 5 Bra 0
- 3 x?+
- 5 5 Ket
- 8 End
+ Bra 0
+ x?+
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
No options
No first char
No need char
-/x++/D
+/x++/DZ
------------------------------------------------------------------
- 0 5 Bra 0
- 3 x++
- 5 5 Ket
- 8 End
+ Bra 0
+ x++
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Partial matching not supported
@@ -2964,15 +2964,15 @@ No options
First char = 'x'
No need char
-/x{1,3}+/D
+/x{1,3}+/DZ
------------------------------------------------------------------
- 0 15 Bra 0
- 3 9 Once
- 6 x
- 8 x{0,2}
- 12 9 Ket
- 15 15 Ket
- 18 End
+ Bra 0
+ Once
+ x
+ x{0,2}
+ Ket
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Partial matching not supported
@@ -2980,17 +2980,17 @@ No options
First char = 'x'
No need char
-/(x)*+/D
+/(x)*+/DZ
------------------------------------------------------------------
- 0 20 Bra 0
- 3 14 Once
- 6 Brazero
- 7 7 Bra 1
- 12 x
- 14 7 KetRmax
- 17 14 Ket
- 20 20 Ket
- 23 End
+ Bra 0
+ Once
+ Brazero
+ Bra 1
+ x
+ KetRmax
+ Ket
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 1
No options
@@ -3082,26 +3082,26 @@ No match
((()aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
No match
-/(abc){1,3}+/D
-------------------------------------------------------------------
- 0 59 Bra 0
- 3 53 Once
- 6 11 Bra 1
- 11 abc
- 17 11 Ket
- 20 Brazero
- 21 32 Bra 0
- 24 11 Bra 1
- 29 abc
- 35 11 Ket
- 38 Brazero
- 39 11 Bra 1
- 44 abc
- 50 11 Ket
- 53 32 Ket
- 56 53 Ket
- 59 59 Ket
- 62 End
+/(abc){1,3}+/DZ
+------------------------------------------------------------------
+ Bra 0
+ Once
+ Bra 1
+ abc
+ Ket
+ Brazero
+ Bra 0
+ Bra 1
+ abc
+ Ket
+ Brazero
+ Bra 1
+ abc
+ Ket
+ Ket
+ Ket
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 1
No options
@@ -3120,14 +3120,14 @@ Failed: nothing to repeat at offset 7
/a{2,3}?+b/IU
Failed: nothing to repeat at offset 7
-/x(?U)a++b/D
+/x(?U)a++b/DZ
------------------------------------------------------------------
- 0 9 Bra 0
- 3 x
- 5 a++
- 7 b
- 9 9 Ket
- 12 End
+ Bra 0
+ x
+ a++
+ b
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Partial matching not supported
@@ -3137,14 +3137,14 @@ Need char = 'b'
xaaaab
0: xaaaab
-/(?U)xa++b/D
+/(?U)xa++b/DZ
------------------------------------------------------------------
- 0 9 Bra 0
- 3 x
- 5 a++
- 7 b
- 9 9 Ket
- 12 End
+ Bra 0
+ x
+ a++
+ b
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Partial matching not supported
@@ -3154,26 +3154,26 @@ Need char = 'b'
xaaaab
0: xaaaab
-/^((a+)(?U)([ab]+)(?-U)([bc]+)(\w*))/D
-------------------------------------------------------------------
- 0 116 Bra 0
- 3 ^
- 4 109 Bra 1
- 9 7 Bra 2
- 14 a+
- 16 7 Ket
- 19 39 Bra 3
- 24 [ab]+?
- 58 39 Ket
- 61 39 Bra 4
- 66 [bc]+
-100 39 Ket
-103 7 Bra 5
-108 \w*
-110 7 Ket
-113 109 Ket
-116 116 Ket
-119 End
+/^((a+)(?U)([ab]+)(?-U)([bc]+)(\w*))/DZ
+------------------------------------------------------------------
+ Bra 0
+ ^
+ Bra 1
+ Bra 2
+ a+
+ Ket
+ Bra 3
+ [ab]+?
+ Ket
+ Bra 4
+ [bc]+
+ Ket
+ Bra 5
+ \w*
+ Ket
+ Ket
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 5
Partial matching not supported
@@ -3181,15 +3181,15 @@ Options: anchored
No first char
No need char
-/^x(?U)a+b/D
+/^x(?U)a+b/DZ
------------------------------------------------------------------
- 0 10 Bra 0
- 3 ^
- 4 x
- 6 a++
- 8 b
- 10 10 Ket
- 13 End
+ Bra 0
+ ^
+ x
+ a++
+ b
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Partial matching not supported
@@ -3197,17 +3197,17 @@ Options: anchored
No first char
Need char = 'b'
-/^x(?U)(a+)b/D
+/^x(?U)(a+)b/DZ
------------------------------------------------------------------
- 0 18 Bra 0
- 3 ^
- 4 x
- 6 7 Bra 1
- 11 a+?
- 13 7 Ket
- 16 b
- 18 18 Ket
- 21 End
+ Bra 0
+ ^
+ x
+ Bra 1
+ a+?
+ Ket
+ b
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 1
Partial matching not supported
@@ -3248,39 +3248,39 @@ Failed: missing terminating ] for character class at offset 3
/[[:space:]/I
Failed: missing terminating ] for character class at offset 10
-/[\s]/IDM
+/[\s]/IDZM
Memory allocation (code space): 40
------------------------------------------------------------------
- 0 36 Bra 0
- 3 [\x09\x0a\x0c\x0d ]
- 36 36 Ket
- 39 End
+ Bra 0
+ [\x09\x0a\x0c\x0d ]
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
No options
No first char
No need char
-/[[:space:]]/IDM
+/[[:space:]]/IDZM
Memory allocation (code space): 40
------------------------------------------------------------------
- 0 36 Bra 0
- 3 [\x09-\x0d ]
- 36 36 Ket
- 39 End
+ Bra 0
+ [\x09-\x0d ]
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
No options
No first char
No need char
-/[[:space:]abcde]/IDM
+/[[:space:]abcde]/IDZM
Memory allocation (code space): 40
------------------------------------------------------------------
- 0 36 Bra 0
- 3 [\x09-\x0d a-e]
- 36 36 Ket
- 39 End
+ Bra 0
+ [\x09-\x0d a-e]
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
No options
@@ -3310,28 +3310,28 @@ No match
<abc
No match
-|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|IDM
+|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|IDZM
Memory allocation (code space): 826
------------------------------------------------------------------
- 0 822 Bra 0
- 3 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
-821 \b
-822 822 Ket
-825 End
+ Bra 0
+ 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
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
No options
First char = '8'
Need char = 'X'
-|\$\<\.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|IDM
+|\$\<\.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|IDZM
Memory allocation (code space): 816
------------------------------------------------------------------
- 0 812 Bra 0
- 3 $<.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
-811 \b
-812 812 Ket
-815 End
+ Bra 0
+ $<.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
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
No options
@@ -3997,36 +3997,36 @@ Need char = '<'
0: >abc>(1(2)3)<xyz<
1: (1(2)3)
-/(a(?1)b)/D
+/(a(?1)b)/DZ
------------------------------------------------------------------
- 0 24 Bra 0
- 3 18 Bra 1
- 8 a
- 10 6 Once
- 13 3 Recurse
- 16 6 Ket
- 19 b
- 21 18 Ket
- 24 24 Ket
- 27 End
+ Bra 0
+ Bra 1
+ a
+ Once
+ Recurse
+ Ket
+ b
+ Ket
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 1
No options
First char = 'a'
Need char = 'b'
-/(a(?1)+b)/D
+/(a(?1)+b)/DZ
------------------------------------------------------------------
- 0 24 Bra 0
- 3 18 Bra 1
- 8 a
- 10 6 Once
- 13 3 Recurse
- 16 6 KetRmax
- 19 b
- 21 18 Ket
- 24 24 Ket
- 27 End
+ Bra 0
+ Bra 1
+ a
+ Once
+ Recurse
+ KetRmax
+ b
+ Ket
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 1
No options
@@ -4191,21 +4191,21 @@ No need char
1: a
2: c
-/a(?P<name1>b|c)d(?P<longername2>e)/D
-------------------------------------------------------------------
- 0 32 Bra 0
- 3 a
- 5 7 Bra 1
- 10 b
- 12 5 Alt
- 15 c
- 17 12 Ket
- 20 d
- 22 7 Bra 2
- 27 e
- 29 7 Ket
- 32 32 Ket
- 35 End
+/a(?P<name1>b|c)d(?P<longername2>e)/DZ
+------------------------------------------------------------------
+ Bra 0
+ a
+ Bra 1
+ b
+ Alt
+ c
+ Ket
+ d
+ Bra 2
+ e
+ Ket
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 2
Named capturing subpatterns:
@@ -4223,23 +4223,23 @@ Need char = 'e'
1: c
2: e
-/(?:a(?P<c>c(?P<d>d)))(?P<a>a)/D
-------------------------------------------------------------------
- 0 41 Bra 0
- 3 25 Bra 0
- 6 a
- 8 17 Bra 1
- 13 c
- 15 7 Bra 2
- 20 d
- 22 7 Ket
- 25 17 Ket
- 28 25 Ket
- 31 7 Bra 3
- 36 a
- 38 7 Ket
- 41 41 Ket
- 44 End
+/(?:a(?P<c>c(?P<d>d)))(?P<a>a)/DZ
+------------------------------------------------------------------
+ Bra 0
+ Bra 0
+ a
+ Bra 1
+ c
+ Bra 2
+ d
+ Ket
+ Ket
+ Ket
+ Bra 3
+ a
+ Ket
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 3
Named capturing subpatterns:
@@ -4250,23 +4250,23 @@ No options
First char = 'a'
Need char = 'a'
-/(?P<a>a)...(?P=a)bbb(?P>a)d/D
-------------------------------------------------------------------
- 0 36 Bra 0
- 3 7 Bra 1
- 8 a
- 10 7 Ket
- 13 Any
- 14 Any
- 15 Any
- 16 \1
- 19 bbb
- 25 6 Once
- 28 3 Recurse
- 31 6 Ket
- 34 d
- 36 36 Ket
- 39 End
+/(?P<a>a)...(?P=a)bbb(?P>a)d/DZ
+------------------------------------------------------------------
+ Bra 0
+ Bra 1
+ a
+ Ket
+ Any
+ Any
+ Any
+ \1
+ bbb
+ Once
+ Recurse
+ Ket
+ d
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 1
Max back reference = 1
@@ -4413,17 +4413,17 @@ Options: dotall
No first char
No need char
-/(a)(bc)/IND
+/(a)(bc)/INDZ
------------------------------------------------------------------
- 0 21 Bra 0
- 3 5 Bra 0
- 6 a
- 8 5 Ket
- 11 7 Bra 0
- 14 bc
- 18 7 Ket
- 21 21 Ket
- 24 End
+ Bra 0
+ Bra 0
+ a
+ Ket
+ Bra 0
+ bc
+ Ket
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: no_auto_capture
@@ -4432,17 +4432,17 @@ Need char = 'c'
abc
0: abc
-/(?P<one>a)(bc)/IND
+/(?P<one>a)(bc)/INDZ
------------------------------------------------------------------
- 0 23 Bra 0
- 3 7 Bra 1
- 8 a
- 10 7 Ket
- 13 7 Bra 0
- 16 bc
- 20 7 Ket
- 23 23 Ket
- 26 End
+ Bra 0
+ Bra 1
+ a
+ Ket
+ Bra 0
+ bc
+ Ket
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 1
Named capturing subpatterns:
@@ -4454,17 +4454,17 @@ Need char = 'c'
0: abc
1: a
-/(a)(?P<named>bc)/IND
+/(a)(?P<named>bc)/INDZ
------------------------------------------------------------------
- 0 23 Bra 0
- 3 5 Bra 0
- 6 a
- 8 5 Ket
- 11 9 Bra 1
- 16 bc
- 20 9 Ket
- 23 23 Ket
- 26 End
+ Bra 0
+ Bra 0
+ a
+ Ket
+ Bra 1
+ bc
+ Ket
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 1
Named capturing subpatterns:
@@ -4547,15 +4547,15 @@ no parentheses with name "three"
2: gh
copy substring three failed -7
-/(?P<Tes>)(?P<Test>)/D
+/(?P<Tes>)(?P<Test>)/DZ
------------------------------------------------------------------
- 0 19 Bra 0
- 3 5 Bra 1
- 8 5 Ket
- 11 5 Bra 2
- 16 5 Ket
- 19 19 Ket
- 22 End
+ Bra 0
+ Bra 1
+ Ket
+ Bra 2
+ Ket
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 2
Named capturing subpatterns:
@@ -4565,15 +4565,15 @@ No options
No first char
No need char
-/(?P<Test>)(?P<Tes>)/D
+/(?P<Test>)(?P<Tes>)/DZ
------------------------------------------------------------------
- 0 19 Bra 0
- 3 5 Bra 1
- 8 5 Ket
- 11 5 Bra 2
- 16 5 Ket
- 19 19 Ket
- 22 End
+ Bra 0
+ Bra 1
+ Ket
+ Bra 2
+ Ket
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 2
Named capturing subpatterns:
@@ -4642,93 +4642,93 @@ Need char = ']'
[]
0: []
-/(a(b(?2)c))?/D
-------------------------------------------------------------------
- 0 35 Bra 0
- 3 Brazero
- 4 28 Bra 1
- 9 a
- 11 18 Bra 2
- 16 b
- 18 6 Once
- 21 11 Recurse
- 24 6 Ket
- 27 c
- 29 18 Ket
- 32 28 Ket
- 35 35 Ket
- 38 End
+/(a(b(?2)c))?/DZ
+------------------------------------------------------------------
+ Bra 0
+ Brazero
+ Bra 1
+ a
+ Bra 2
+ b
+ Once
+ Recurse
+ Ket
+ c
+ Ket
+ Ket
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 2
No options
No first char
No need char
-/(a(b(?2)c))*/D
+/(a(b(?2)c))*/DZ
------------------------------------------------------------------
- 0 35 Bra 0
- 3 Brazero
- 4 28 Bra 1
- 9 a
- 11 18 Bra 2
- 16 b
- 18 6 Once
- 21 11 Recurse
- 24 6 Ket
- 27 c
- 29 18 Ket
- 32 28 KetRmax
- 35 35 Ket
- 38 End
+ Bra 0
+ Brazero
+ Bra 1
+ a
+ Bra 2
+ b
+ Once
+ Recurse
+ Ket
+ c
+ Ket
+ KetRmax
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 2
No options
No first char
No need char
-/(a(b(?2)c)){0,2}/D
-------------------------------------------------------------------
- 0 73 Bra 0
- 3 Brazero
- 4 66 Bra 0
- 7 28 Bra 1
- 12 a
- 14 18 Bra 2
- 19 b
- 21 6 Once
- 24 14 Recurse
- 27 6 Ket
- 30 c
- 32 18 Ket
- 35 28 Ket
- 38 Brazero
- 39 28 Bra 1
- 44 a
- 46 18 Bra 2
- 51 b
- 53 6 Once
- 56 14 Recurse
- 59 6 Ket
- 62 c
- 64 18 Ket
- 67 28 Ket
- 70 66 Ket
- 73 73 Ket
- 76 End
+/(a(b(?2)c)){0,2}/DZ
+------------------------------------------------------------------
+ Bra 0
+ Brazero
+ Bra 0
+ Bra 1
+ a
+ Bra 2
+ b
+ Once
+ Recurse
+ Ket
+ c
+ Ket
+ Ket
+ Brazero
+ Bra 1
+ a
+ Bra 2
+ b
+ Once
+ Recurse
+ Ket
+ c
+ Ket
+ Ket
+ Ket
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 2
No options
No first char
No need char
-/[ab]{1}+/D
+/[ab]{1}+/DZ
------------------------------------------------------------------
- 0 47 Bra 0
- 3 41 Once
- 6 [ab]{1,1}
- 44 41 Ket
- 47 47 Ket
- 50 End
+ Bra 0
+ Once
+ [ab]{1,1}
+ Ket
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
No options
@@ -4756,14 +4756,14 @@ Study returned NULL
0: Baby Bjorn Active Carrier - With free SHIPPING!!
1: Baby Bjorn Active Carrier - With free SHIPPING!!
-/a*.*b/ISD
+/a*.*b/ISDZ
------------------------------------------------------------------
- 0 9 Bra 0
- 3 a*
- 5 Any*
- 7 b
- 9 9 Ket
- 12 End
+ Bra 0
+ a*
+ Any*
+ b
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Partial matching not supported
@@ -4772,19 +4772,19 @@ No first char
Need char = 'b'
Study returned NULL
-/(a|b)*.?c/ISD
+/(a|b)*.?c/ISDZ
------------------------------------------------------------------
- 0 23 Bra 0
- 3 Brazero
- 4 7 Bra 1
- 9 a
- 11 5 Alt
- 14 b
- 16 12 KetRmax
- 19 Any?
- 21 c
- 23 23 Ket
- 26 End
+ Bra 0
+ Brazero
+ Bra 1
+ a
+ Alt
+ b
+ KetRmax
+ Any?
+ c
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 1
No options
@@ -4792,38 +4792,38 @@ No first char
Need char = 'c'
Study returned NULL
-/abc(?C255)de(?C)f/D
+/abc(?C255)de(?C)f/DZ
------------------------------------------------------------------
- 0 27 Bra 0
- 3 abc
- 9 Callout 255 10 1
- 15 de
- 19 Callout 0 16 1
- 25 f
- 27 27 Ket
- 30 End
+ Bra 0
+ abc
+ Callout 255 10 1
+ de
+ Callout 0 16 1
+ f
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
No options
First char = 'a'
Need char = 'f'
-/abcde/ICD
+/abcde/ICDZ
------------------------------------------------------------------
- 0 49 Bra 0
- 3 Callout 255 0 1
- 9 a
- 11 Callout 255 1 1
- 17 b
- 19 Callout 255 2 1
- 25 c
- 27 Callout 255 3 1
- 33 d
- 35 Callout 255 4 1
- 41 e
- 43 Callout 255 5 0
- 49 49 Ket
- 52 End
+ Bra 0
+ Callout 255 0 1
+ a
+ Callout 255 1 1
+ b
+ Callout 255 2 1
+ c
+ Callout 255 3 1
+ d
+ Callout 255 4 1
+ e
+ Callout 255 5 0
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options:
@@ -4847,16 +4847,16 @@ Need char = 'e'
+4 ^ ^ e
No match
-/a*b/ICD
+/a*b/ICDZ
------------------------------------------------------------------
- 0 25 Bra 0
- 3 Callout 255 0 2
- 9 a*+
- 11 Callout 255 2 1
- 17 b
- 19 Callout 255 3 0
- 25 25 Ket
- 28 End
+ Bra 0
+ Callout 255 0 2
+ a*+
+ Callout 255 2 1
+ b
+ Callout 255 3 0
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Partial matching not supported
@@ -4892,16 +4892,16 @@ Need char = 'b'
+3 ^^
0: b
-/a+b/ICD
+/a+b/ICDZ
------------------------------------------------------------------
- 0 25 Bra 0
- 3 Callout 255 0 2
- 9 a++
- 11 Callout 255 2 1
- 17 b
- 19 Callout 255 3 0
- 25 25 Ket
- 28 End
+ Bra 0
+ Callout 255 0 2
+ a++
+ Callout 255 2 1
+ b
+ Callout 255 3 0
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Partial matching not supported
@@ -4932,32 +4932,32 @@ Need char = 'b'
+2 ^^ b
No match
-/(abc|def)x/ICD
-------------------------------------------------------------------
- 0 94 Bra 0
- 3 Callout 255 0 9
- 9 35 Bra 1
- 14 Callout 255 1 1
- 20 a
- 22 Callout 255 2 1
- 28 b
- 30 Callout 255 3 1
- 36 c
- 38 Callout 255 4 0
- 44 33 Alt
- 47 Callout 255 5 1
- 53 d
- 55 Callout 255 6 1
- 61 e
- 63 Callout 255 7 1
- 69 f
- 71 Callout 255 8 0
- 77 68 Ket
- 80 Callout 255 9 1
- 86 x
- 88 Callout 255 10 0
- 94 94 Ket
- 97 End
+/(abc|def)x/ICDZ
+------------------------------------------------------------------
+ Bra 0
+ Callout 255 0 9
+ Bra 1
+ Callout 255 1 1
+ a
+ Callout 255 2 1
+ b
+ Callout 255 3 1
+ c
+ Callout 255 4 0
+ Alt
+ Callout 255 5 1
+ d
+ Callout 255 6 1
+ e
+ Callout 255 7 1
+ f
+ Callout 255 8 0
+ Ket
+ Callout 255 9 1
+ x
+ Callout 255 10 0
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 1
Options:
@@ -5086,34 +5086,34 @@ No need char
0: abcdcdcd
1: cd
-/([ab]{,4}c|xy)/ICD
-------------------------------------------------------------------
- 0 133 Bra 0
- 3 Callout 255 0 14
- 9 90 Bra 1
- 14 Callout 255 1 4
- 20 [ab]
- 53 Callout 255 5 1
- 59 {
- 61 Callout 255 6 1
- 67 ,
- 69 Callout 255 7 1
- 75 4
- 77 Callout 255 8 1
- 83 }
- 85 Callout 255 9 1
- 91 c
- 93 Callout 255 10 0
- 99 25 Alt
-102 Callout 255 11 1
-108 x
-110 Callout 255 12 1
-116 y
-118 Callout 255 13 0
-124 115 Ket
-127 Callout 255 14 0
-133 133 Ket
-136 End
+/([ab]{,4}c|xy)/ICDZ
+------------------------------------------------------------------
+ Bra 0
+ Callout 255 0 14
+ Bra 1
+ Callout 255 1 4
+ [ab]
+ Callout 255 5 1
+ {
+ Callout 255 6 1
+ ,
+ Callout 255 7 1
+ 4
+ Callout 255 8 1
+ }
+ Callout 255 9 1
+ c
+ Callout 255 10 0
+ Alt
+ Callout 255 11 1
+ x
+ Callout 255 12 1
+ y
+ Callout 255 13 0
+ Ket
+ Callout 255 14 0
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 1
Options:
@@ -5261,85 +5261,85 @@ No need char
+11 ^ x
No match
-/([ab]{1,4}c|xy){4,5}?123/ICD
-------------------------------------------------------------------
- 0 495 Bra 0
- 3 Callout 255 0 21
- 9 63 Bra 1
- 14 Callout 255 1 9
- 20 [ab]{1,4}
- 58 Callout 255 10 1
- 64 c
- 66 Callout 255 11 0
- 72 25 Alt
- 75 Callout 255 12 1
- 81 x
- 83 Callout 255 13 1
- 89 y
- 91 Callout 255 14 0
- 97 88 Ket
-100 63 Bra 1
-105 Callout 255 1 9
-111 [ab]{1,4}
-149 Callout 255 10 1
-155 c
-157 Callout 255 11 0
-163 25 Alt
-166 Callout 255 12 1
-172 x
-174 Callout 255 13 1
-180 y
-182 Callout 255 14 0
-188 88 Ket
-191 63 Bra 1
-196 Callout 255 1 9
-202 [ab]{1,4}
-240 Callout 255 10 1
-246 c
-248 Callout 255 11 0
-254 25 Alt
-257 Callout 255 12 1
-263 x
-265 Callout 255 13 1
-271 y
-273 Callout 255 14 0
-279 88 Ket
-282 63 Bra 1
-287 Callout 255 1 9
-293 [ab]{1,4}
-331 Callout 255 10 1
-337 c
-339 Callout 255 11 0
-345 25 Alt
-348 Callout 255 12 1
-354 x
-356 Callout 255 13 1
-362 y
-364 Callout 255 14 0
-370 88 Ket
-373 Braminzero
-374 63 Bra 1
-379 Callout 255 1 9
-385 [ab]{1,4}
-423 Callout 255 10 1
-429 c
-431 Callout 255 11 0
-437 25 Alt
-440 Callout 255 12 1
-446 x
-448 Callout 255 13 1
-454 y
-456 Callout 255 14 0
-462 88 Ket
-465 Callout 255 21 1
-471 1
-473 Callout 255 22 1
-479 2
-481 Callout 255 23 1
-487 3
-489 Callout 255 24 0
-495 495 Ket
-498 End
+/([ab]{1,4}c|xy){4,5}?123/ICDZ
+------------------------------------------------------------------
+ Bra 0
+ Callout 255 0 21
+ Bra 1
+ Callout 255 1 9
+ [ab]{1,4}
+ Callout 255 10 1
+ c
+ Callout 255 11 0
+ Alt
+ Callout 255 12 1
+ x
+ Callout 255 13 1
+ y
+ Callout 255 14 0
+ Ket
+ Bra 1
+ Callout 255 1 9
+ [ab]{1,4}
+ Callout 255 10 1
+ c
+ Callout 255 11 0
+ Alt
+ Callout 255 12 1
+ x
+ Callout 255 13 1
+ y
+ Callout 255 14 0
+ Ket
+ Bra 1
+ Callout 255 1 9
+ [ab]{1,4}
+ Callout 255 10 1
+ c
+ Callout 255 11 0
+ Alt
+ Callout 255 12 1
+ x
+ Callout 255 13 1
+ y
+ Callout 255 14 0
+ Ket
+ Bra 1
+ Callout 255 1 9
+ [ab]{1,4}
+ Callout 255 10 1
+ c
+ Callout 255 11 0
+ Alt
+ Callout 255 12 1
+ x
+ Callout 255 13 1
+ y
+ Callout 255 14 0
+ Ket
+ Braminzero
+ Bra 1
+ Callout 255 1 9
+ [ab]{1,4}
+ Callout 255 10 1
+ c
+ Callout 255 11 0
+ Alt
+ Callout 255 12 1
+ x
+ Callout 255 13 1
+ y
+ Callout 255 14 0
+ Ket
+ Callout 255 21 1
+ 1
+ Callout 255 22 1
+ 2
+ Callout 255 23 1
+ 3
+ Callout 255 24 0
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 1
Partial matching not supported
@@ -6669,15 +6669,15 @@ No first char
Need char = 'z'
Starting byte set: a b c d
-/^a*b\d/D
+/^a*b\d/DZ
------------------------------------------------------------------
- 0 9 Bra 0
- 3 ^
- 4 a*+
- 6 b
- 8 \d
- 9 9 Ket
- 12 End
+ Bra 0
+ ^
+ a*+
+ b
+ \d
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Partial matching not supported
@@ -6685,15 +6685,15 @@ Options: anchored
No first char
Need char = 'b'
-/^a*+b\d/D
+/^a*+b\d/DZ
------------------------------------------------------------------
- 0 9 Bra 0
- 3 ^
- 4 a*+
- 6 b
- 8 \d
- 9 9 Ket
- 12 End
+ Bra 0
+ ^
+ a*+
+ b
+ \d
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Partial matching not supported
@@ -6701,15 +6701,15 @@ Options: anchored
No first char
Need char = 'b'
-/^a*?b\d/D
+/^a*?b\d/DZ
------------------------------------------------------------------
- 0 9 Bra 0
- 3 ^
- 4 a*+
- 6 b
- 8 \d
- 9 9 Ket
- 12 End
+ Bra 0
+ ^
+ a*+
+ b
+ \d
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Partial matching not supported
@@ -6717,15 +6717,15 @@ Options: anchored
No first char
Need char = 'b'
-/^a+A\d/D
+/^a+A\d/DZ
------------------------------------------------------------------
- 0 9 Bra 0
- 3 ^
- 4 a++
- 6 A
- 8 \d
- 9 9 Ket
- 12 End
+ Bra 0
+ ^
+ a++
+ A
+ \d
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Partial matching not supported
@@ -6739,15 +6739,15 @@ No match
aaaa5
No match
-/^a*A\d/IiD
+/^a*A\d/IiDZ
------------------------------------------------------------------
- 0 9 Bra 0
- 3 ^
- 4 a*
- 6 NC A
- 8 \d
- 9 9 Ket
- 12 End
+ Bra 0
+ ^
+ a*
+ NC A
+ \d
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Partial matching not supported
diff --git a/testdata/testoutput5 b/testdata/testoutput5
index 61c6842..16da5ec 100644
--- a/testdata/testoutput5
+++ b/testdata/testoutput5
@@ -1,114 +1,114 @@
-/\x{100}/8DM
+/\x{100}/8DZM
Memory allocation (code space): 10
------------------------------------------------------------------
- 0 6 Bra 0
- 3 \x{100}
- 6 6 Ket
- 9 End
+ Bra 0
+ \x{100}
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: utf8
First char = 196
Need char = 128
-/\x{1000}/8DM
+/\x{1000}/8DZM
Memory allocation (code space): 11
------------------------------------------------------------------
- 0 7 Bra 0
- 3 \x{1000}
- 7 7 Ket
- 10 End
+ Bra 0
+ \x{1000}
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: utf8
First char = 225
Need char = 128
-/\x{10000}/8DM
+/\x{10000}/8DZM
Memory allocation (code space): 12
------------------------------------------------------------------
- 0 8 Bra 0
- 3 \x{10000}
- 8 8 Ket
- 11 End
+ Bra 0
+ \x{10000}
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: utf8
First char = 240
Need char = 128
-/\x{100000}/8DM
+/\x{100000}/8DZM
Memory allocation (code space): 12
------------------------------------------------------------------
- 0 8 Bra 0
- 3 \x{100000}
- 8 8 Ket
- 11 End
+ Bra 0
+ \x{100000}
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: utf8
First char = 244
Need char = 128
-/\x{1000000}/8DM
+/\x{1000000}/8DZM
Memory allocation (code space): 13
------------------------------------------------------------------
- 0 9 Bra 0
- 3 \x{1000000}
- 9 9 Ket
- 12 End
+ Bra 0
+ \x{1000000}
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: utf8
First char = 249
Need char = 128
-/\x{4000000}/8DM
+/\x{4000000}/8DZM
Memory allocation (code space): 14
------------------------------------------------------------------
- 0 10 Bra 0
- 3 \x{4000000}
- 10 10 Ket
- 13 End
+ Bra 0
+ \x{4000000}
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: utf8
First char = 252
Need char = 128
-/\x{7fffFFFF}/8DM
+/\x{7fffFFFF}/8DZM
Memory allocation (code space): 14
------------------------------------------------------------------
- 0 10 Bra 0
- 3 \x{7fffffff}
- 10 10 Ket
- 13 End
+ Bra 0
+ \x{7fffffff}
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: utf8
First char = 253
Need char = 191
-/[\x{ff}]/8DM
+/[\x{ff}]/8DZM
Memory allocation (code space): 10
------------------------------------------------------------------
- 0 6 Bra 0
- 3 \x{ff}
- 6 6 Ket
- 9 End
+ Bra 0
+ \x{ff}
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: utf8
First char = 195
Need char = 191
-/[\x{100}]/8DM
+/[\x{100}]/8DZM
Memory allocation (code space): 15
------------------------------------------------------------------
- 0 11 Bra 0
- 3 [\x{100}]
- 11 11 Ket
- 14 End
+ Bra 0
+ [\x{100}]
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: utf8
@@ -125,36 +125,36 @@ Failed: character value in \x{...} sequence is too large at offset 12
\x{100}a\x{1234}bcd
0: \x{100}a\x{1234}
-/\x80/8D
+/\x80/8DZ
------------------------------------------------------------------
- 0 6 Bra 0
- 3 \x{80}
- 6 6 Ket
- 9 End
+ Bra 0
+ \x{80}
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: utf8
First char = 194
Need char = 128
-/\xff/8D
+/\xff/8DZ
------------------------------------------------------------------
- 0 6 Bra 0
- 3 \x{ff}
- 6 6 Ket
- 9 End
+ Bra 0
+ \x{ff}
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: utf8
First char = 195
Need char = 191
-/\x{0041}\x{2262}\x{0391}\x{002e}/D8
+/\x{0041}\x{2262}\x{0391}\x{002e}/DZ8
------------------------------------------------------------------
- 0 14 Bra 0
- 3 A\x{2262}\x{391}.
- 14 14 Ket
- 17 End
+ Bra 0
+ A\x{2262}\x{391}.
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: utf8
@@ -163,12 +163,12 @@ Need char = '.'
\x{0041}\x{2262}\x{0391}\x{002e}
0: A\x{2262}\x{391}.
-/\x{D55c}\x{ad6d}\x{C5B4}/D8
+/\x{D55c}\x{ad6d}\x{C5B4}/DZ8
------------------------------------------------------------------
- 0 15 Bra 0
- 3 \x{d55c}\x{ad6d}\x{c5b4}
- 15 15 Ket
- 18 End
+ Bra 0
+ \x{d55c}\x{ad6d}\x{c5b4}
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: utf8
@@ -177,12 +177,12 @@ Need char = 180
\x{D55c}\x{ad6d}\x{C5B4}
0: \x{d55c}\x{ad6d}\x{c5b4}
-/\x{65e5}\x{672c}\x{8a9e}/D8
+/\x{65e5}\x{672c}\x{8a9e}/DZ8
------------------------------------------------------------------
- 0 15 Bra 0
- 3 \x{65e5}\x{672c}\x{8a9e}
- 15 15 Ket
- 18 End
+ Bra 0
+ \x{65e5}\x{672c}\x{8a9e}
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: utf8
@@ -191,74 +191,74 @@ Need char = 158
\x{65e5}\x{672c}\x{8a9e}
0: \x{65e5}\x{672c}\x{8a9e}
-/\x{80}/D8
+/\x{80}/DZ8
------------------------------------------------------------------
- 0 6 Bra 0
- 3 \x{80}
- 6 6 Ket
- 9 End
+ Bra 0
+ \x{80}
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: utf8
First char = 194
Need char = 128
-/\x{084}/D8
+/\x{084}/DZ8
------------------------------------------------------------------
- 0 6 Bra 0
- 3 \x{84}
- 6 6 Ket
- 9 End
+ Bra 0
+ \x{84}
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: utf8
First char = 194
Need char = 132
-/\x{104}/D8
+/\x{104}/DZ8
------------------------------------------------------------------
- 0 6 Bra 0
- 3 \x{104}
- 6 6 Ket
- 9 End
+ Bra 0
+ \x{104}
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: utf8
First char = 196
Need char = 132
-/\x{861}/D8
+/\x{861}/DZ8
------------------------------------------------------------------
- 0 7 Bra 0
- 3 \x{861}
- 7 7 Ket
- 10 End
+ Bra 0
+ \x{861}
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: utf8
First char = 224
Need char = 161
-/\x{212ab}/D8
+/\x{212ab}/DZ8
------------------------------------------------------------------
- 0 8 Bra 0
- 3 \x{212ab}
- 8 8 Ket
- 11 End
+ Bra 0
+ \x{212ab}
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: utf8
First char = 240
Need char = 171
-/.{3,5}X/D8
+/.{3,5}X/DZ8
------------------------------------------------------------------
- 0 13 Bra 0
- 3 Any{3}
- 7 Any{0,2}
- 11 X
- 13 13 Ket
- 16 End
+ Bra 0
+ Any{3}
+ Any{0,2}
+ X
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Partial matching not supported
@@ -269,13 +269,13 @@ Need char = 'X'
0: \x{212ab}\x{212ab}\x{212ab}\x{861}X
-/.{3,5}?/D8
+/.{3,5}?/DZ8
------------------------------------------------------------------
- 0 11 Bra 0
- 3 Any{3}
- 7 Any{0,2}?
- 11 11 Ket
- 14 End
+ Bra 0
+ Any{3}
+ Any{0,2}?
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Partial matching not supported
@@ -285,11 +285,9 @@ No need char
\x{212ab}\x{212ab}\x{212ab}\x{861}
0: \x{212ab}\x{212ab}\x{212ab}
-/-- These tests are here rather than in testinput4 because Perl 5.6 has --/
-/-- some problems with UTF-8 support, in the area of \x{..} where the --/
-No match
-/-- value is < 255. It grumbles about invalid UTF-8 strings. --/
-No match
+/-- These tests are here rather than in testinput4 because Perl 5.6 has some
+problems with UTF-8 support, in the area of \x{..} where the value is < 255.
+It grumbles about invalid UTF-8 strings. --/
/^[a\x{c0}]b/8
\x{c0}b
@@ -329,11 +327,9 @@ No match
/(?<=\C)X/8
Failed: \C not allowed in lookbehind assertion at offset 6
-/-- This one is here not because it's different to Perl, but because the --/
-/-- way the captured single-byte is displayed. (In Perl it becomes a --/
-No match
-/-- character, and you can't tell the difference.) --/
-No match
+/-- This one is here not because it's different to Perl, but because the way
+the captured single-byte is displayed. (In Perl it becomes a character, and you
+can't tell the difference.) --/
/X(\C)(.*)/8
X\x{1234}
@@ -345,13 +341,13 @@ No match
1: \x{0a}
2: abc
-/^[ab]/8D
+/^[ab]/8DZ
------------------------------------------------------------------
- 0 37 Bra 0
- 3 ^
- 4 [ab]
- 37 37 Ket
- 40 End
+ Bra 0
+ ^
+ [ab]
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: anchored utf8
@@ -368,13 +364,13 @@ No match
\x{100}
No match
-/^[^ab]/8D
+/^[^ab]/8DZ
------------------------------------------------------------------
- 0 37 Bra 0
- 3 ^
- 4 [\x00-`c-\xff] (neg)
- 37 37 Ket
- 40 End
+ Bra 0
+ ^
+ [\x00-`c-\xff] (neg)
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: anchored utf8
@@ -391,12 +387,12 @@ No need char
aaa
No match
-/[^ab\xC0-\xF0]/8SD
+/[^ab\xC0-\xF0]/8SDZ
------------------------------------------------------------------
- 0 36 Bra 0
- 3 [\x00-`c-\xbf\xf1-\xff] (neg)
- 36 36 Ket
- 39 End
+ Bra 0
+ [\x00-`c-\xbf\xf1-\xff] (neg)
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: utf8
@@ -427,13 +423,13 @@ No match
\x{f0}
No match
-/Ä€{3,4}/8SD
+/Ä€{3,4}/8SDZ
------------------------------------------------------------------
- 0 11 Bra 0
- 3 \x{100}{3}
- 8 \x{100}?
- 11 11 Ket
- 14 End
+ Bra 0
+ \x{100}{3}
+ \x{100}?
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Partial matching not supported
@@ -444,16 +440,16 @@ Study returned NULL
\x{100}\x{100}\x{100}\x{100\x{100}
0: \x{100}\x{100}\x{100}
-/(\x{100}+|x)/8SD
+/(\x{100}+|x)/8SDZ
------------------------------------------------------------------
- 0 19 Bra 0
- 3 8 Bra 1
- 8 \x{100}+
- 11 5 Alt
- 14 x
- 16 13 Ket
- 19 19 Ket
- 22 End
+ Bra 0
+ Bra 1
+ \x{100}+
+ Alt
+ x
+ Ket
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 1
Partial matching not supported
@@ -462,17 +458,17 @@ No first char
No need char
Starting byte set: x \xc4
-/(\x{100}*a|x)/8SD
+/(\x{100}*a|x)/8SDZ
------------------------------------------------------------------
- 0 21 Bra 0
- 3 10 Bra 1
- 8 \x{100}*+
- 11 a
- 13 5 Alt
- 16 x
- 18 15 Ket
- 21 21 Ket
- 24 End
+ Bra 0
+ Bra 1
+ \x{100}*+
+ a
+ Alt
+ x
+ Ket
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 1
Partial matching not supported
@@ -481,17 +477,17 @@ No first char
No need char
Starting byte set: a x \xc4
-/(\x{100}{0,2}a|x)/8SD
+/(\x{100}{0,2}a|x)/8SDZ
------------------------------------------------------------------
- 0 23 Bra 0
- 3 12 Bra 1
- 8 \x{100}{0,2}
- 13 a
- 15 5 Alt
- 18 x
- 20 17 Ket
- 23 23 Ket
- 26 End
+ Bra 0
+ Bra 1
+ \x{100}{0,2}
+ a
+ Alt
+ x
+ Ket
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 1
Partial matching not supported
@@ -500,18 +496,18 @@ No first char
No need char
Starting byte set: a x \xc4
-/(\x{100}{1,2}a|x)/8SD
+/(\x{100}{1,2}a|x)/8SDZ
------------------------------------------------------------------
- 0 26 Bra 0
- 3 15 Bra 1
- 8 \x{100}
- 11 \x{100}{0,1}
- 16 a
- 18 5 Alt
- 21 x
- 23 20 Ket
- 26 26 Ket
- 29 End
+ Bra 0
+ Bra 1
+ \x{100}
+ \x{100}{0,1}
+ a
+ Alt
+ x
+ Ket
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 1
Partial matching not supported
@@ -544,24 +540,24 @@ No match
\x{100}\x{100}abcd
No match
-/\x{100}/8D
+/\x{100}/8DZ
------------------------------------------------------------------
- 0 6 Bra 0
- 3 \x{100}
- 6 6 Ket
- 9 End
+ Bra 0
+ \x{100}
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: utf8
First char = 196
Need char = 128
-/\x{100}*/8D
+/\x{100}*/8DZ
------------------------------------------------------------------
- 0 6 Bra 0
- 3 \x{100}*
- 6 6 Ket
- 9 End
+ Bra 0
+ \x{100}*
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Partial matching not supported
@@ -569,13 +565,13 @@ Options: utf8
No first char
No need char
-/a\x{100}*/8D
+/a\x{100}*/8DZ
------------------------------------------------------------------
- 0 8 Bra 0
- 3 a
- 5 \x{100}*
- 8 8 Ket
- 11 End
+ Bra 0
+ a
+ \x{100}*
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Partial matching not supported
@@ -583,13 +579,13 @@ Options: utf8
First char = 'a'
No need char
-/ab\x{100}*/8D
+/ab\x{100}*/8DZ
------------------------------------------------------------------
- 0 10 Bra 0
- 3 ab
- 7 \x{100}*
- 10 10 Ket
- 13 End
+ Bra 0
+ ab
+ \x{100}*
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Partial matching not supported
@@ -597,13 +593,13 @@ Options: utf8
First char = 'a'
Need char = 'b'
-/a\x{100}\x{101}*/8D
+/a\x{100}\x{101}*/8DZ
------------------------------------------------------------------
- 0 11 Bra 0
- 3 a\x{100}
- 8 \x{101}*
- 11 11 Ket
- 14 End
+ Bra 0
+ a\x{100}
+ \x{101}*
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Partial matching not supported
@@ -611,13 +607,13 @@ Options: utf8
First char = 'a'
Need char = 128
-/a\x{100}\x{101}+/8D
+/a\x{100}\x{101}+/8DZ
------------------------------------------------------------------
- 0 11 Bra 0
- 3 a\x{100}
- 8 \x{101}+
- 11 11 Ket
- 14 End
+ Bra 0
+ a\x{100}
+ \x{101}+
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Partial matching not supported
@@ -625,13 +621,13 @@ Options: utf8
First char = 'a'
Need char = 129
-/\x{100}*A/8D
+/\x{100}*A/8DZ
------------------------------------------------------------------
- 0 8 Bra 0
- 3 \x{100}*+
- 6 A
- 8 8 Ket
- 11 End
+ Bra 0
+ \x{100}*+
+ A
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Partial matching not supported
@@ -641,16 +637,16 @@ Need char = 'A'
A
0: A
-/\x{100}*\d(?R)/8D
+/\x{100}*\d(?R)/8DZ
------------------------------------------------------------------
- 0 16 Bra 0
- 3 \x{100}*+
- 6 \d
- 7 6 Once
- 10 0 Recurse
- 13 6 Ket
- 16 16 Ket
- 19 End
+ Bra 0
+ \x{100}*+
+ \d
+ Once
+ Recurse
+ Ket
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Partial matching not supported
@@ -658,37 +654,37 @@ Options: utf8
No first char
No need char
-/[^\x{c4}]/D
+/[^\x{c4}]/DZ
------------------------------------------------------------------
- 0 5 Bra 0
- 3 [^\xc4]
- 5 5 Ket
- 8 End
+ Bra 0
+ [^\xc4]
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
No options
No first char
No need char
-/[^\x{c4}]/8D
+/[^\x{c4}]/8DZ
------------------------------------------------------------------
- 0 36 Bra 0
- 3 [\x00-\xc3\xc5-\xff] (neg)
- 36 36 Ket
- 39 End
+ Bra 0
+ [\x00-\xc3\xc5-\xff] (neg)
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: utf8
No first char
No need char
-/[\x{100}]/8DM
+/[\x{100}]/8DZM
Memory allocation (code space): 15
------------------------------------------------------------------
- 0 11 Bra 0
- 3 [\x{100}]
- 11 11 Ket
- 14 End
+ Bra 0
+ [\x{100}]
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: utf8
@@ -703,13 +699,13 @@ No need char
*** Failers
No match
-/[Z\x{100}]/8DM
+/[Z\x{100}]/8DZM
Memory allocation (code space): 47
------------------------------------------------------------------
- 0 43 Bra 0
- 3 [Z\x{100}]
- 43 43 Ket
- 46 End
+ Bra 0
+ [Z\x{100}]
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: utf8
@@ -739,24 +735,24 @@ No match
\x{ff}
No match
-/[z-\x{100}]/8D
+/[z-\x{100}]/8DZ
------------------------------------------------------------------
- 0 12 Bra 0
- 3 [z-\x{100}]
- 12 12 Ket
- 15 End
+ Bra 0
+ [z-\x{100}]
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: utf8
No first char
No need char
-/[z\Qa-d]Ä€\E]/8D
+/[z\Qa-d]Ä€\E]/8DZ
------------------------------------------------------------------
- 0 43 Bra 0
- 3 [\-\]adz\x{100}]
- 43 43 Ket
- 46 End
+ Bra 0
+ [\-\]adz\x{100}]
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: utf8
@@ -767,12 +763,12 @@ No need char
Ä€
0: \x{100}
-/[\xFF]/D
+/[\xFF]/DZ
------------------------------------------------------------------
- 0 5 Bra 0
- 3 \xff
- 5 5 Ket
- 8 End
+ Bra 0
+ \xff
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
No options
@@ -781,12 +777,12 @@ No need char
>\xff<
0: \xff
-/[\xff]/D8
+/[\xff]/DZ8
------------------------------------------------------------------
- 0 6 Bra 0
- 3 \x{ff}
- 6 6 Ket
- 9 End
+ Bra 0
+ \x{ff}
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: utf8
@@ -795,24 +791,24 @@ Need char = 191
>\x{ff}<
0: \x{ff}
-/[^\xFF]/D
+/[^\xFF]/DZ
------------------------------------------------------------------
- 0 5 Bra 0
- 3 [^\xff]
- 5 5 Ket
- 8 End
+ Bra 0
+ [^\xff]
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
No options
No first char
No need char
-/[^\xff]/8D
+/[^\xff]/8DZ
------------------------------------------------------------------
- 0 36 Bra 0
- 3 [\x00-\xfe] (neg)
- 36 36 Ket
- 39 End
+ Bra 0
+ [\x00-\xfe] (neg)
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: utf8
@@ -852,12 +848,12 @@ Failed: invalid UTF-8 string at offset 0
/ÃÃÃxxx/8
Failed: invalid UTF-8 string at offset 1
-/ÃÃÃxxx/8?D
+/ÃÃÃxxx/8?DZ
------------------------------------------------------------------
- 0 15 Bra 0
- 3 \X{c0}\X{c0}\X{c0}xxx
- 15 15 Ket
- 18 End
+ Bra 0
+ \X{c0}\X{c0}\X{c0}xxx
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: utf8 no_utf8_check
@@ -910,170 +906,170 @@ No match
\xfd\x83\x80\x80\x80\x80
No match
-/\x{100}abc(xyz(?1))/8D
+/\x{100}abc(xyz(?1))/8DZ
------------------------------------------------------------------
- 0 35 Bra 0
- 3 \x{100}abc
- 12 20 Bra 1
- 17 xyz
- 23 6 Once
- 26 12 Recurse
- 29 6 Ket
- 32 20 Ket
- 35 35 Ket
- 38 End
+ Bra 0
+ \x{100}abc
+ Bra 1
+ xyz
+ Once
+ Recurse
+ Ket
+ Ket
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 1
Options: utf8
First char = 196
Need char = 'z'
-/[^\x{100}]abc(xyz(?1))/8D
+/[^\x{100}]abc(xyz(?1))/8DZ
------------------------------------------------------------------
- 0 40 Bra 0
- 3 [^\x{100}]
- 11 abc
- 17 20 Bra 1
- 22 xyz
- 28 6 Once
- 31 17 Recurse
- 34 6 Ket
- 37 20 Ket
- 40 40 Ket
- 43 End
+ Bra 0
+ [^\x{100}]
+ abc
+ Bra 1
+ xyz
+ Once
+ Recurse
+ Ket
+ Ket
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 1
Options: utf8
No first char
Need char = 'z'
-/[ab\x{100}]abc(xyz(?1))/8D
+/[ab\x{100}]abc(xyz(?1))/8DZ
------------------------------------------------------------------
- 0 72 Bra 0
- 3 [ab\x{100}]
- 43 abc
- 49 20 Bra 1
- 54 xyz
- 60 6 Once
- 63 49 Recurse
- 66 6 Ket
- 69 20 Ket
- 72 72 Ket
- 75 End
+ Bra 0
+ [ab\x{100}]
+ abc
+ Bra 1
+ xyz
+ Once
+ Recurse
+ Ket
+ Ket
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 1
Options: utf8
No first char
Need char = 'z'
-/(\x{100}(b(?2)c))?/D8
-------------------------------------------------------------------
- 0 36 Bra 0
- 3 Brazero
- 4 29 Bra 1
- 9 \x{100}
- 12 18 Bra 2
- 17 b
- 19 6 Once
- 22 12 Recurse
- 25 6 Ket
- 28 c
- 30 18 Ket
- 33 29 Ket
- 36 36 Ket
- 39 End
+/(\x{100}(b(?2)c))?/DZ8
+------------------------------------------------------------------
+ Bra 0
+ Brazero
+ Bra 1
+ \x{100}
+ Bra 2
+ b
+ Once
+ Recurse
+ Ket
+ c
+ Ket
+ Ket
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 2
Options: utf8
No first char
No need char
-/(\x{100}(b(?2)c)){0,2}/D8
-------------------------------------------------------------------
- 0 75 Bra 0
- 3 Brazero
- 4 68 Bra 0
- 7 29 Bra 1
- 12 \x{100}
- 15 18 Bra 2
- 20 b
- 22 6 Once
- 25 15 Recurse
- 28 6 Ket
- 31 c
- 33 18 Ket
- 36 29 Ket
- 39 Brazero
- 40 29 Bra 1
- 45 \x{100}
- 48 18 Bra 2
- 53 b
- 55 6 Once
- 58 15 Recurse
- 61 6 Ket
- 64 c
- 66 18 Ket
- 69 29 Ket
- 72 68 Ket
- 75 75 Ket
- 78 End
+/(\x{100}(b(?2)c)){0,2}/DZ8
+------------------------------------------------------------------
+ Bra 0
+ Brazero
+ Bra 0
+ Bra 1
+ \x{100}
+ Bra 2
+ b
+ Once
+ Recurse
+ Ket
+ c
+ Ket
+ Ket
+ Brazero
+ Bra 1
+ \x{100}
+ Bra 2
+ b
+ Once
+ Recurse
+ Ket
+ c
+ Ket
+ Ket
+ Ket
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 2
Options: utf8
No first char
No need char
-/(\x{100}(b(?1)c))?/D8
-------------------------------------------------------------------
- 0 36 Bra 0
- 3 Brazero
- 4 29 Bra 1
- 9 \x{100}
- 12 18 Bra 2
- 17 b
- 19 6 Once
- 22 4 Recurse
- 25 6 Ket
- 28 c
- 30 18 Ket
- 33 29 Ket
- 36 36 Ket
- 39 End
+/(\x{100}(b(?1)c))?/DZ8
+------------------------------------------------------------------
+ Bra 0
+ Brazero
+ Bra 1
+ \x{100}
+ Bra 2
+ b
+ Once
+ Recurse
+ Ket
+ c
+ Ket
+ Ket
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 2
Options: utf8
No first char
No need char
-/(\x{100}(b(?1)c)){0,2}/D8
-------------------------------------------------------------------
- 0 75 Bra 0
- 3 Brazero
- 4 68 Bra 0
- 7 29 Bra 1
- 12 \x{100}
- 15 18 Bra 2
- 20 b
- 22 6 Once
- 25 7 Recurse
- 28 6 Ket
- 31 c
- 33 18 Ket
- 36 29 Ket
- 39 Brazero
- 40 29 Bra 1
- 45 \x{100}
- 48 18 Bra 2
- 53 b
- 55 6 Once
- 58 7 Recurse
- 61 6 Ket
- 64 c
- 66 18 Ket
- 69 29 Ket
- 72 68 Ket
- 75 75 Ket
- 78 End
+/(\x{100}(b(?1)c)){0,2}/DZ8
+------------------------------------------------------------------
+ Bra 0
+ Brazero
+ Bra 0
+ Bra 1
+ \x{100}
+ Bra 2
+ b
+ Once
+ Recurse
+ Ket
+ c
+ Ket
+ Ket
+ Brazero
+ Bra 1
+ \x{100}
+ Bra 2
+ b
+ Once
+ Recurse
+ Ket
+ c
+ Ket
+ Ket
+ Ket
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 2
Options: utf8
@@ -1094,13 +1090,13 @@ No need char
a\x{1234}b
0: a\x{1234}b
-/^\ሴ/8D
+/^\ሴ/8DZ
------------------------------------------------------------------
- 0 8 Bra 0
- 3 ^
- 4 \x{1234}
- 8 8 Ket
- 11 End
+ Bra 0
+ ^
+ \x{1234}
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: anchored utf8
@@ -1120,13 +1116,13 @@ Need char = 191
\777
0: \x{1ff}
-/\x{100}*\d/8D
+/\x{100}*\d/8DZ
------------------------------------------------------------------
- 0 7 Bra 0
- 3 \x{100}*+
- 6 \d
- 7 7 Ket
- 10 End
+ Bra 0
+ \x{100}*+
+ \d
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Partial matching not supported
@@ -1134,13 +1130,13 @@ Options: utf8
No first char
No need char
-/\x{100}*\s/8D
+/\x{100}*\s/8DZ
------------------------------------------------------------------
- 0 7 Bra 0
- 3 \x{100}*+
- 6 \s
- 7 7 Ket
- 10 End
+ Bra 0
+ \x{100}*+
+ \s
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Partial matching not supported
@@ -1148,13 +1144,13 @@ Options: utf8
No first char
No need char
-/\x{100}*\w/8D
+/\x{100}*\w/8DZ
------------------------------------------------------------------
- 0 7 Bra 0
- 3 \x{100}*+
- 6 \w
- 7 7 Ket
- 10 End
+ Bra 0
+ \x{100}*+
+ \w
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Partial matching not supported
@@ -1162,13 +1158,13 @@ Options: utf8
No first char
No need char
-/\x{100}*\D/8D
+/\x{100}*\D/8DZ
------------------------------------------------------------------
- 0 7 Bra 0
- 3 \x{100}*
- 6 \D
- 7 7 Ket
- 10 End
+ Bra 0
+ \x{100}*
+ \D
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Partial matching not supported
@@ -1176,13 +1172,13 @@ Options: utf8
No first char
No need char
-/\x{100}*\S/8D
+/\x{100}*\S/8DZ
------------------------------------------------------------------
- 0 7 Bra 0
- 3 \x{100}*
- 6 \S
- 7 7 Ket
- 10 End
+ Bra 0
+ \x{100}*
+ \S
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Partial matching not supported
@@ -1190,13 +1186,13 @@ Options: utf8
No first char
No need char
-/\x{100}*\W/8D
+/\x{100}*\W/8DZ
------------------------------------------------------------------
- 0 7 Bra 0
- 3 \x{100}*
- 6 \W
- 7 7 Ket
- 10 End
+ Bra 0
+ \x{100}*
+ \W
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Partial matching not supported
@@ -1204,13 +1200,13 @@ Options: utf8
No first char
No need char
-/\x{100}+\x{200}/8D
+/\x{100}+\x{200}/8DZ
------------------------------------------------------------------
- 0 9 Bra 0
- 3 \x{100}++
- 6 \x{200}
- 9 9 Ket
- 12 End
+ Bra 0
+ \x{100}++
+ \x{200}
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Partial matching not supported
@@ -1218,13 +1214,13 @@ Options: utf8
First char = 196
Need char = 128
-/\x{100}+X/8D
+/\x{100}+X/8DZ
------------------------------------------------------------------
- 0 8 Bra 0
- 3 \x{100}++
- 6 X
- 8 8 Ket
- 11 End
+ Bra 0
+ \x{100}++
+ X
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Partial matching not supported
@@ -1232,13 +1228,13 @@ Options: utf8
First char = 196
Need char = 'X'
-/X+\x{200}/8D
+/X+\x{200}/8DZ
------------------------------------------------------------------
- 0 8 Bra 0
- 3 X++
- 5 \x{200}
- 8 8 Ket
- 11 End
+ Bra 0
+ X++
+ \x{200}
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Partial matching not supported
diff --git a/testdata/testoutput6 b/testdata/testoutput6
index 3b907a4..d09f038 100644
--- a/testdata/testoutput6
+++ b/testdata/testoutput6
@@ -548,73 +548,73 @@ No match
WXYZ
No match
-/[\p{L}]/D
+/[\p{L}]/DZ
------------------------------------------------------------------
- 0 11 Bra 0
- 3 [\p{L}]
- 11 11 Ket
- 14 End
+ Bra 0
+ [\p{L}]
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
No options
No first char
No need char
-/[\p{^L}]/D
+/[\p{^L}]/DZ
------------------------------------------------------------------
- 0 11 Bra 0
- 3 [\P{L}]
- 11 11 Ket
- 14 End
+ Bra 0
+ [\P{L}]
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
No options
No first char
No need char
-/[\P{L}]/D
+/[\P{L}]/DZ
------------------------------------------------------------------
- 0 11 Bra 0
- 3 [\P{L}]
- 11 11 Ket
- 14 End
+ Bra 0
+ [\P{L}]
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
No options
No first char
No need char
-/[\P{^L}]/D
+/[\P{^L}]/DZ
------------------------------------------------------------------
- 0 11 Bra 0
- 3 [\p{L}]
- 11 11 Ket
- 14 End
+ Bra 0
+ [\p{L}]
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
No options
No first char
No need char
-/[abc\p{L}\x{0660}]/8D
+/[abc\p{L}\x{0660}]/8DZ
------------------------------------------------------------------
- 0 46 Bra 0
- 3 [a-c\p{L}\x{660}]
- 46 46 Ket
- 49 End
+ Bra 0
+ [a-c\p{L}\x{660}]
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: utf8
No first char
No need char
-/[\p{Nd}]/8DM
+/[\p{Nd}]/8DZM
Memory allocation (code space): 15
------------------------------------------------------------------
- 0 11 Bra 0
- 3 [\p{Nd}]
- 11 11 Ket
- 14 End
+ Bra 0
+ [\p{Nd}]
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: utf8
@@ -623,13 +623,13 @@ No need char
1234
0: 1
-/[\p{Nd}+-]+/8DM
+/[\p{Nd}+-]+/8DZM
Memory allocation (code space): 48
------------------------------------------------------------------
- 0 44 Bra 0
- 3 [+\-\p{Nd}]+
- 44 44 Ket
- 47 End
+ Bra 0
+ [+\-\p{Nd}]+
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Partial matching not supported
@@ -779,48 +779,48 @@ No match
A\x{391}\x{10427}\x{ff3a}\x{1fb8}
0: A\x{391}\x{10427}\x{ff3a}\x{1fb8}
-/A\x{391}\x{10427}\x{ff3a}\x{1fb0}/8iD
+/A\x{391}\x{10427}\x{ff3a}\x{1fb0}/8iDZ
------------------------------------------------------------------
- 0 21 Bra 0
- 3 NC A\x{391}\x{10427}\x{ff3a}\x{1fb0}
- 21 21 Ket
- 24 End
+ Bra 0
+ NC A\x{391}\x{10427}\x{ff3a}\x{1fb0}
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: caseless utf8
First char = 'A' (caseless)
No need char
-/A\x{391}\x{10427}\x{ff3a}\x{1fb0}/8D
+/A\x{391}\x{10427}\x{ff3a}\x{1fb0}/8DZ
------------------------------------------------------------------
- 0 21 Bra 0
- 3 A\x{391}\x{10427}\x{ff3a}\x{1fb0}
- 21 21 Ket
- 24 End
+ Bra 0
+ A\x{391}\x{10427}\x{ff3a}\x{1fb0}
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: utf8
First char = 'A'
Need char = 176
-/AB\x{1fb0}/8D
+/AB\x{1fb0}/8DZ
------------------------------------------------------------------
- 0 11 Bra 0
- 3 AB\x{1fb0}
- 11 11 Ket
- 14 End
+ Bra 0
+ AB\x{1fb0}
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: utf8
First char = 'A'
Need char = 176
-/AB\x{1fb0}/8Di
+/AB\x{1fb0}/8DZi
------------------------------------------------------------------
- 0 11 Bra 0
- 3 NC AB\x{1fb0}
- 11 11 Ket
- 14 End
+ Bra 0
+ NC AB\x{1fb0}
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: caseless utf8
@@ -857,12 +857,12 @@ Need char = 'B' (caseless)
\x{e0}
0: \x{e0}
-/[\x{105}-\x{109}]/8iD
+/[\x{105}-\x{109}]/8iDZ
------------------------------------------------------------------
- 0 13 Bra 0
- 3 [\x{104}-\x{109}]
- 13 13 Ket
- 16 End
+ Bra 0
+ [\x{104}-\x{109}]
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: caseless utf8
@@ -881,12 +881,12 @@ No match
\x{10a}
No match
-/[z-\x{100}]/8iD
+/[z-\x{100}]/8iDZ
------------------------------------------------------------------
- 0 20 Bra 0
- 3 [Z\x{39c}\x{178}z-\x{101}]
- 20 20 Ket
- 23 End
+ Bra 0
+ [Z\x{39c}\x{178}z-\x{101}]
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: caseless utf8
@@ -919,12 +919,12 @@ No match
y
No match
-/[z-\x{100}]/8Di
+/[z-\x{100}]/8DZi
------------------------------------------------------------------
- 0 20 Bra 0
- 3 [Z\x{39c}\x{178}z-\x{101}]
- 20 20 Ket
- 23 End
+ Bra 0
+ [Z\x{39c}\x{178}z-\x{101}]
+ Ket
+ End
------------------------------------------------------------------
Capturing subpattern count = 0
Options: caseless utf8