1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018 |
- # There are two sorts of patterns in this test. A number of them are
- # representative patterns whose lengths and offsets are checked. This is just a
- # doublecheck test to ensure the sizes don't go horribly wrong when something
- # is changed. The operation of these patterns is checked in other tests.
- #
- # This file also contains tests whose output varies with code unit size and/or
- # link size. Unicode support is required for these tests. There are separate
- # output files for each code unit size and link size.
- #pattern fullbincode,memory
- /((?i)b)/
- Memory allocation (code space): 48
- ------------------------------------------------------------------
- 0 9 Bra
- 2 5 CBra 1
- 5 /i b
- 7 5 Ket
- 9 9 Ket
- 11 End
- ------------------------------------------------------------------
- /(?s)(.*X|^B)/
- Memory allocation (code space): 76
- ------------------------------------------------------------------
- 0 16 Bra
- 2 7 CBra 1
- 5 AllAny*
- 7 X
- 9 5 Alt
- 11 ^
- 12 B
- 14 12 Ket
- 16 16 Ket
- 18 End
- ------------------------------------------------------------------
- /(?s:.*X|^B)/
- Memory allocation (code space): 72
- ------------------------------------------------------------------
- 0 15 Bra
- 2 6 Bra
- 4 AllAny*
- 6 X
- 8 5 Alt
- 10 ^
- 11 B
- 13 11 Ket
- 15 15 Ket
- 17 End
- ------------------------------------------------------------------
- /^[[:alnum:]]/
- Memory allocation (code space): 60
- ------------------------------------------------------------------
- 0 12 Bra
- 2 ^
- 3 [0-9A-Za-z]
- 12 12 Ket
- 14 End
- ------------------------------------------------------------------
- /#/Ix
- Memory allocation (code space): 20
- ------------------------------------------------------------------
- 0 2 Bra
- 2 2 Ket
- 4 End
- ------------------------------------------------------------------
- Capture group count = 0
- May match empty string
- Options: extended
- Subject length lower bound = 0
- /a#/Ix
- Memory allocation (code space): 28
- ------------------------------------------------------------------
- 0 4 Bra
- 2 a
- 4 4 Ket
- 6 End
- ------------------------------------------------------------------
- Capture group count = 0
- Options: extended
- First code unit = 'a'
- Subject length lower bound = 1
- /x?+/
- Memory allocation (code space): 28
- ------------------------------------------------------------------
- 0 4 Bra
- 2 x?+
- 4 4 Ket
- 6 End
- ------------------------------------------------------------------
- /x++/
- Memory allocation (code space): 28
- ------------------------------------------------------------------
- 0 4 Bra
- 2 x++
- 4 4 Ket
- 6 End
- ------------------------------------------------------------------
- /x{1,3}+/
- Memory allocation (code space): 40
- ------------------------------------------------------------------
- 0 7 Bra
- 2 x
- 4 x{0,2}+
- 7 7 Ket
- 9 End
- ------------------------------------------------------------------
- /(x)*+/
- Memory allocation (code space): 52
- ------------------------------------------------------------------
- 0 10 Bra
- 2 Braposzero
- 3 5 CBraPos 1
- 6 x
- 8 5 KetRpos
- 10 10 Ket
- 12 End
- ------------------------------------------------------------------
- /^((a+)(?U)([ab]+)(?-U)([bc]+)(\w*))/
- Memory allocation (code space): 220
- ------------------------------------------------------------------
- 0 52 Bra
- 2 ^
- 3 47 CBra 1
- 6 5 CBra 2
- 9 a+
- 11 5 Ket
- 13 13 CBra 3
- 16 [ab]+?
- 26 13 Ket
- 28 13 CBra 4
- 31 [bc]+
- 41 13 Ket
- 43 5 CBra 5
- 46 \w*+
- 48 5 Ket
- 50 47 Ket
- 52 52 Ket
- 54 End
- ------------------------------------------------------------------
- "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"
- Memory allocation (code space): 3296
- ------------------------------------------------------------------
- 0 821 Bra
- 2 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
- 820 \b
- 821 821 Ket
- 823 End
- ------------------------------------------------------------------
- "\$\<\.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"
- Memory allocation (code space): 3256
- ------------------------------------------------------------------
- 0 811 Bra
- 2 $<.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
- 810 \b
- 811 811 Ket
- 813 End
- ------------------------------------------------------------------
- /(a(?1)b)/
- Memory allocation (code space): 64
- ------------------------------------------------------------------
- 0 13 Bra
- 2 9 CBra 1
- 5 a
- 7 2 Recurse
- 9 b
- 11 9 Ket
- 13 13 Ket
- 15 End
- ------------------------------------------------------------------
- /(a(?1)+b)/
- Memory allocation (code space): 80
- ------------------------------------------------------------------
- 0 17 Bra
- 2 13 CBra 1
- 5 a
- 7 4 SBra
- 9 2 Recurse
- 11 4 KetRmax
- 13 b
- 15 13 Ket
- 17 17 Ket
- 19 End
- ------------------------------------------------------------------
- /a(?P<name1>b|c)d(?P<longername2>e)/
- Memory allocation (code space): 108
- ------------------------------------------------------------------
- 0 24 Bra
- 2 a
- 4 5 CBra 1
- 7 b
- 9 4 Alt
- 11 c
- 13 9 Ket
- 15 d
- 17 5 CBra 2
- 20 e
- 22 5 Ket
- 24 24 Ket
- 26 End
- ------------------------------------------------------------------
- /(?:a(?P<c>c(?P<d>d)))(?P<a>a)/
- Memory allocation (code space): 128
- ------------------------------------------------------------------
- 0 29 Bra
- 2 18 Bra
- 4 a
- 6 12 CBra 1
- 9 c
- 11 5 CBra 2
- 14 d
- 16 5 Ket
- 18 12 Ket
- 20 18 Ket
- 22 5 CBra 3
- 25 a
- 27 5 Ket
- 29 29 Ket
- 31 End
- ------------------------------------------------------------------
- /(?P<a>a)...(?P=a)bbb(?P>a)d/
- Memory allocation (code space): 108
- ------------------------------------------------------------------
- 0 24 Bra
- 2 5 CBra 1
- 5 a
- 7 5 Ket
- 9 Any
- 10 Any
- 11 Any
- 12 \1
- 14 bbb
- 20 2 Recurse
- 22 d
- 24 24 Ket
- 26 End
- ------------------------------------------------------------------
- /abc(?C255)de(?C)f/
- Memory allocation (code space): 100
- ------------------------------------------------------------------
- 0 22 Bra
- 2 abc
- 8 Callout 255 10 1
- 12 de
- 16 Callout 0 16 1
- 20 f
- 22 22 Ket
- 24 End
- ------------------------------------------------------------------
- /abcde/auto_callout
- Memory allocation (code space): 156
- ------------------------------------------------------------------
- 0 36 Bra
- 2 Callout 255 0 1
- 6 a
- 8 Callout 255 1 1
- 12 b
- 14 Callout 255 2 1
- 18 c
- 20 Callout 255 3 1
- 24 d
- 26 Callout 255 4 1
- 30 e
- 32 Callout 255 5 0
- 36 36 Ket
- 38 End
- ------------------------------------------------------------------
- /\x{100}/utf
- Memory allocation (code space): 28
- ------------------------------------------------------------------
- 0 4 Bra
- 2 \x{100}
- 4 4 Ket
- 6 End
- ------------------------------------------------------------------
- /\x{1000}/utf
- Memory allocation (code space): 28
- ------------------------------------------------------------------
- 0 4 Bra
- 2 \x{1000}
- 4 4 Ket
- 6 End
- ------------------------------------------------------------------
- /\x{10000}/utf
- Memory allocation (code space): 28
- ------------------------------------------------------------------
- 0 4 Bra
- 2 \x{10000}
- 4 4 Ket
- 6 End
- ------------------------------------------------------------------
- /\x{100000}/utf
- Memory allocation (code space): 28
- ------------------------------------------------------------------
- 0 4 Bra
- 2 \x{100000}
- 4 4 Ket
- 6 End
- ------------------------------------------------------------------
- /\x{10ffff}/utf
- Memory allocation (code space): 28
- ------------------------------------------------------------------
- 0 4 Bra
- 2 \x{10ffff}
- 4 4 Ket
- 6 End
- ------------------------------------------------------------------
- /\x{110000}/utf
- Failed: error 134 at offset 9: character code point value in \x{} or \o{} is too large
- /[\x{ff}]/utf
- Memory allocation (code space): 28
- ------------------------------------------------------------------
- 0 4 Bra
- 2 \x{ff}
- 4 4 Ket
- 6 End
- ------------------------------------------------------------------
- /[\x{100}]/utf
- Memory allocation (code space): 28
- ------------------------------------------------------------------
- 0 4 Bra
- 2 \x{100}
- 4 4 Ket
- 6 End
- ------------------------------------------------------------------
- /\x80/utf
- Memory allocation (code space): 28
- ------------------------------------------------------------------
- 0 4 Bra
- 2 \x{80}
- 4 4 Ket
- 6 End
- ------------------------------------------------------------------
- /\xff/utf
- Memory allocation (code space): 28
- ------------------------------------------------------------------
- 0 4 Bra
- 2 \x{ff}
- 4 4 Ket
- 6 End
- ------------------------------------------------------------------
- /\x{0041}\x{2262}\x{0391}\x{002e}/I,utf
- Memory allocation (code space): 52
- ------------------------------------------------------------------
- 0 10 Bra
- 2 A\x{2262}\x{391}.
- 10 10 Ket
- 12 End
- ------------------------------------------------------------------
- Capture group count = 0
- Options: utf
- First code unit = 'A'
- Last code unit = '.'
- Subject length lower bound = 4
- /\x{D55c}\x{ad6d}\x{C5B4}/I,utf
- Memory allocation (code space): 44
- ------------------------------------------------------------------
- 0 8 Bra
- 2 \x{d55c}\x{ad6d}\x{c5b4}
- 8 8 Ket
- 10 End
- ------------------------------------------------------------------
- Capture group count = 0
- Options: utf
- First code unit = \x{d55c}
- Last code unit = \x{c5b4}
- Subject length lower bound = 3
- /\x{65e5}\x{672c}\x{8a9e}/I,utf
- Memory allocation (code space): 44
- ------------------------------------------------------------------
- 0 8 Bra
- 2 \x{65e5}\x{672c}\x{8a9e}
- 8 8 Ket
- 10 End
- ------------------------------------------------------------------
- Capture group count = 0
- Options: utf
- First code unit = \x{65e5}
- Last code unit = \x{8a9e}
- Subject length lower bound = 3
- /[\x{100}]/utf
- Memory allocation (code space): 28
- ------------------------------------------------------------------
- 0 4 Bra
- 2 \x{100}
- 4 4 Ket
- 6 End
- ------------------------------------------------------------------
- /[Z\x{100}]/utf
- Memory allocation (code space): 76
- ------------------------------------------------------------------
- 0 16 Bra
- 2 [Z\x{100}]
- 16 16 Ket
- 18 End
- ------------------------------------------------------------------
- /^[\x{100}\E-\Q\E\x{150}]/utf
- Memory allocation (code space): 52
- ------------------------------------------------------------------
- 0 10 Bra
- 2 ^
- 3 [\x{100}-\x{150}]
- 10 10 Ket
- 12 End
- ------------------------------------------------------------------
- /^[\QĀ\E-\QŐ\E]/utf
- Memory allocation (code space): 52
- ------------------------------------------------------------------
- 0 10 Bra
- 2 ^
- 3 [\x{100}-\x{150}]
- 10 10 Ket
- 12 End
- ------------------------------------------------------------------
- /^[\QĀ\E-\QŐ\E/utf
- Failed: error 106 at offset 13: missing terminating ] for character class
- /[\p{L}]/
- Memory allocation (code space): 48
- ------------------------------------------------------------------
- 0 9 Bra
- 2 [\p{L}]
- 9 9 Ket
- 11 End
- ------------------------------------------------------------------
- /[\p{^L}]/
- Memory allocation (code space): 48
- ------------------------------------------------------------------
- 0 9 Bra
- 2 [\P{L}]
- 9 9 Ket
- 11 End
- ------------------------------------------------------------------
- /[\P{L}]/
- Memory allocation (code space): 48
- ------------------------------------------------------------------
- 0 9 Bra
- 2 [\P{L}]
- 9 9 Ket
- 11 End
- ------------------------------------------------------------------
- /[\P{^L}]/
- Memory allocation (code space): 48
- ------------------------------------------------------------------
- 0 9 Bra
- 2 [\p{L}]
- 9 9 Ket
- 11 End
- ------------------------------------------------------------------
- /[abc\p{L}\x{0660}]/utf
- Memory allocation (code space): 88
- ------------------------------------------------------------------
- 0 19 Bra
- 2 [a-c\p{L}\x{660}]
- 19 19 Ket
- 21 End
- ------------------------------------------------------------------
- /[\p{Nd}]/utf
- Memory allocation (code space): 48
- ------------------------------------------------------------------
- 0 9 Bra
- 2 [\p{Nd}]
- 9 9 Ket
- 11 End
- ------------------------------------------------------------------
- /[\p{Nd}+-]+/utf
- Memory allocation (code space): 84
- ------------------------------------------------------------------
- 0 18 Bra
- 2 [+\-\p{Nd}]++
- 18 18 Ket
- 20 End
- ------------------------------------------------------------------
- /A\x{391}\x{10427}\x{ff3a}\x{1fb0}/i,utf
- Memory allocation (code space): 60
- ------------------------------------------------------------------
- 0 12 Bra
- 2 /i A\x{391}\x{10427}\x{ff3a}\x{1fb0}
- 12 12 Ket
- 14 End
- ------------------------------------------------------------------
- /A\x{391}\x{10427}\x{ff3a}\x{1fb0}/utf
- Memory allocation (code space): 60
- ------------------------------------------------------------------
- 0 12 Bra
- 2 A\x{391}\x{10427}\x{ff3a}\x{1fb0}
- 12 12 Ket
- 14 End
- ------------------------------------------------------------------
- /[\x{105}-\x{109}]/i,utf
- Memory allocation (code space): 48
- ------------------------------------------------------------------
- 0 9 Bra
- 2 [\x{104}-\x{109}]
- 9 9 Ket
- 11 End
- ------------------------------------------------------------------
- /( ( (?(1)0|) )* )/x
- Memory allocation (code space): 104
- ------------------------------------------------------------------
- 0 23 Bra
- 2 19 CBra 1
- 5 Brazero
- 6 13 SCBra 2
- 9 6 Cond
- 11 1 Cond ref
- 13 0
- 15 2 Alt
- 17 8 Ket
- 19 13 KetRmax
- 21 19 Ket
- 23 23 Ket
- 25 End
- ------------------------------------------------------------------
- /( (?(1)0|)* )/x
- Memory allocation (code space): 84
- ------------------------------------------------------------------
- 0 18 Bra
- 2 14 CBra 1
- 5 Brazero
- 6 6 SCond
- 8 1 Cond ref
- 10 0
- 12 2 Alt
- 14 8 KetRmax
- 16 14 Ket
- 18 18 Ket
- 20 End
- ------------------------------------------------------------------
- /[a]/
- Memory allocation (code space): 28
- ------------------------------------------------------------------
- 0 4 Bra
- 2 a
- 4 4 Ket
- 6 End
- ------------------------------------------------------------------
- /[a]/utf
- Memory allocation (code space): 28
- ------------------------------------------------------------------
- 0 4 Bra
- 2 a
- 4 4 Ket
- 6 End
- ------------------------------------------------------------------
- /[\xaa]/
- Memory allocation (code space): 28
- ------------------------------------------------------------------
- 0 4 Bra
- 2 \x{aa}
- 4 4 Ket
- 6 End
- ------------------------------------------------------------------
- /[\xaa]/utf
- Memory allocation (code space): 28
- ------------------------------------------------------------------
- 0 4 Bra
- 2 \x{aa}
- 4 4 Ket
- 6 End
- ------------------------------------------------------------------
- /[^a]/
- Memory allocation (code space): 28
- ------------------------------------------------------------------
- 0 4 Bra
- 2 [^a]
- 4 4 Ket
- 6 End
- ------------------------------------------------------------------
- /[^a]/utf
- Memory allocation (code space): 28
- ------------------------------------------------------------------
- 0 4 Bra
- 2 [^a]
- 4 4 Ket
- 6 End
- ------------------------------------------------------------------
- /[^\xaa]/
- Memory allocation (code space): 28
- ------------------------------------------------------------------
- 0 4 Bra
- 2 [^\x{aa}]
- 4 4 Ket
- 6 End
- ------------------------------------------------------------------
- /[^\xaa]/utf
- Memory allocation (code space): 28
- ------------------------------------------------------------------
- 0 4 Bra
- 2 [^\x{aa}]
- 4 4 Ket
- 6 End
- ------------------------------------------------------------------
- #pattern -memory
- /[^\d]/utf,ucp
- ------------------------------------------------------------------
- 0 9 Bra
- 2 [^\p{Nd}]
- 9 9 Ket
- 11 End
- ------------------------------------------------------------------
- /[[:^alpha:][:^cntrl:]]+/utf,ucp
- ------------------------------------------------------------------
- 0 13 Bra
- 2 [\P{L}\P{Cc}]++
- 13 13 Ket
- 15 End
- ------------------------------------------------------------------
- /[[:^cntrl:][:^alpha:]]+/utf,ucp
- ------------------------------------------------------------------
- 0 13 Bra
- 2 [\P{Cc}\P{L}]++
- 13 13 Ket
- 15 End
- ------------------------------------------------------------------
- /[[:alpha:]]+/utf,ucp
- ------------------------------------------------------------------
- 0 10 Bra
- 2 [\p{L}]++
- 10 10 Ket
- 12 End
- ------------------------------------------------------------------
- /[[:^alpha:]\S]+/utf,ucp
- ------------------------------------------------------------------
- 0 13 Bra
- 2 [\P{L}\P{Xsp}]++
- 13 13 Ket
- 15 End
- ------------------------------------------------------------------
- /abc(d|e)(*THEN)x(123(*THEN)4|567(b|q)(*THEN)xx)/
- ------------------------------------------------------------------
- 0 60 Bra
- 2 abc
- 8 5 CBra 1
- 11 d
- 13 4 Alt
- 15 e
- 17 9 Ket
- 19 *THEN
- 20 x
- 22 12 CBra 2
- 25 123
- 31 *THEN
- 32 4
- 34 24 Alt
- 36 567
- 42 5 CBra 3
- 45 b
- 47 4 Alt
- 49 q
- 51 9 Ket
- 53 *THEN
- 54 xx
- 58 36 Ket
- 60 60 Ket
- 62 End
- ------------------------------------------------------------------
- /(((a\2)|(a*)\g<-1>))*a?/
- ------------------------------------------------------------------
- 0 35 Bra
- 2 Brazero
- 3 28 SCBra 1
- 6 12 CBra 2
- 9 7 CBra 3
- 12 a
- 14 \2
- 16 7 Ket
- 18 11 Alt
- 20 5 CBra 4
- 23 a*
- 25 5 Ket
- 27 20 Recurse
- 29 23 Ket
- 31 28 KetRmax
- 33 a?+
- 35 35 Ket
- 37 End
- ------------------------------------------------------------------
- /((?+1)(\1))/
- ------------------------------------------------------------------
- 0 16 Bra
- 2 12 CBra 1
- 5 7 Recurse
- 7 5 CBra 2
- 10 \1
- 12 5 Ket
- 14 12 Ket
- 16 16 Ket
- 18 End
- ------------------------------------------------------------------
- "(?1)(?#?'){2}(a)"
- ------------------------------------------------------------------
- 0 13 Bra
- 2 6 Recurse
- 4 6 Recurse
- 6 5 CBra 1
- 9 a
- 11 5 Ket
- 13 13 Ket
- 15 End
- ------------------------------------------------------------------
- /.((?2)(?R)|\1|$)()/
- ------------------------------------------------------------------
- 0 24 Bra
- 2 Any
- 3 7 CBra 1
- 6 19 Recurse
- 8 0 Recurse
- 10 4 Alt
- 12 \1
- 14 3 Alt
- 16 $
- 17 14 Ket
- 19 3 CBra 2
- 22 3 Ket
- 24 24 Ket
- 26 End
- ------------------------------------------------------------------
- /.((?3)(?R)()(?2)|\1|$)()/
- ------------------------------------------------------------------
- 0 31 Bra
- 2 Any
- 3 14 CBra 1
- 6 26 Recurse
- 8 0 Recurse
- 10 3 CBra 2
- 13 3 Ket
- 15 10 Recurse
- 17 4 Alt
- 19 \1
- 21 3 Alt
- 23 $
- 24 21 Ket
- 26 3 CBra 3
- 29 3 Ket
- 31 31 Ket
- 33 End
- ------------------------------------------------------------------
- /(?1)()((((((\1++))\x85)+)|))/
- ------------------------------------------------------------------
- 0 50 Bra
- 2 4 Recurse
- 4 3 CBra 1
- 7 3 Ket
- 9 39 CBra 2
- 12 32 CBra 3
- 15 27 CBra 4
- 18 22 CBra 5
- 21 15 CBra 6
- 24 10 CBra 7
- 27 5 Once
- 29 \1+
- 32 5 Ket
- 34 10 Ket
- 36 15 Ket
- 38 \x{85}
- 40 22 KetRmax
- 42 27 Ket
- 44 2 Alt
- 46 34 Ket
- 48 39 Ket
- 50 50 Ket
- 52 End
- ------------------------------------------------------------------
- # Check the absolute limit on nesting (?| etc. This varies with code unit
- # width because the workspace is a different number of bytes. It will fail
- # with link size 2 in 8-bit and 16-bit but not in 32-bit.
- /(?|(?|(?J:(?|(?x:(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|(?|
- )))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
- /parens_nest_limit=1000,-fullbincode
- # Use "expand" to create some very long patterns with nested parentheses, in
- # order to test workspace overflow. Again, this varies with code unit width,
- # and even when it fails in two modes, the error offset differs. It also varies
- # with link size - hence multiple tests with different values.
- /(?'ABC'\[[bar](]{792}*THEN:\[A]{255}\[)]{793}/expand,-fullbincode,parens_nest_limit=1000
- /(?'ABC'\[[bar](]{793}*THEN:\[A]{255}\[)]{794}/expand,-fullbincode,parens_nest_limit=1000
- /(?'ABC'\[[bar](]{1793}*THEN:\[A]{255}\[)]{1794}/expand,-fullbincode,parens_nest_limit=2000
- Failed: error 186 at offset 12820: regular expression is too complicated
- /(?(1)(?1)){8,}+()/debug
- ------------------------------------------------------------------
- 0 79 Bra
- 2 70 Once
- 4 6 Cond
- 6 1 Cond ref
- 8 74 Recurse
- 10 6 Ket
- 12 6 Cond
- 14 1 Cond ref
- 16 74 Recurse
- 18 6 Ket
- 20 6 Cond
- 22 1 Cond ref
- 24 74 Recurse
- 26 6 Ket
- 28 6 Cond
- 30 1 Cond ref
- 32 74 Recurse
- 34 6 Ket
- 36 6 Cond
- 38 1 Cond ref
- 40 74 Recurse
- 42 6 Ket
- 44 6 Cond
- 46 1 Cond ref
- 48 74 Recurse
- 50 6 Ket
- 52 6 Cond
- 54 1 Cond ref
- 56 74 Recurse
- 58 6 Ket
- 60 10 SBraPos
- 62 6 SCond
- 64 1 Cond ref
- 66 74 Recurse
- 68 6 Ket
- 70 10 KetRpos
- 72 70 Ket
- 74 3 CBra 1
- 77 3 Ket
- 79 79 Ket
- 81 End
- ------------------------------------------------------------------
- Capture group count = 1
- Max back reference = 1
- May match empty string
- Subject length lower bound = 0
- abcd
- 0:
- 1:
- /(?(1)|a(?1)b){2,}+()/debug
- ------------------------------------------------------------------
- 0 43 Bra
- 2 34 Once
- 4 4 Cond
- 6 1 Cond ref
- 8 8 Alt
- 10 a
- 12 38 Recurse
- 14 b
- 16 12 Ket
- 18 16 SBraPos
- 20 4 SCond
- 22 1 Cond ref
- 24 8 Alt
- 26 a
- 28 38 Recurse
- 30 b
- 32 12 Ket
- 34 16 KetRpos
- 36 34 Ket
- 38 3 CBra 1
- 41 3 Ket
- 43 43 Ket
- 45 End
- ------------------------------------------------------------------
- Capture group count = 1
- Max back reference = 1
- May match empty string
- Subject length lower bound = 0
- abcde
- No match
- /((?1)(?2)(?3)(?4)(?5)(?6)(?7)(?8)(?9)(?9)(?8)(?7)(?6)(?5)(?4)(?3)(?2)(?1)(?0)){2,}()()()()()()()()()/debug
- ------------------------------------------------------------------
- 0 133 Bra
- 2 41 CBra 1
- 5 2 Recurse
- 7 88 Recurse
- 9 93 Recurse
- 11 98 Recurse
- 13 103 Recurse
- 15 108 Recurse
- 17 113 Recurse
- 19 118 Recurse
- 21 123 Recurse
- 23 123 Recurse
- 25 118 Recurse
- 27 113 Recurse
- 29 108 Recurse
- 31 103 Recurse
- 33 98 Recurse
- 35 93 Recurse
- 37 88 Recurse
- 39 2 Recurse
- 41 0 Recurse
- 43 41 Ket
- 45 41 SCBra 1
- 48 2 Recurse
- 50 88 Recurse
- 52 93 Recurse
- 54 98 Recurse
- 56 103 Recurse
- 58 108 Recurse
- 60 113 Recurse
- 62 118 Recurse
- 64 123 Recurse
- 66 123 Recurse
- 68 118 Recurse
- 70 113 Recurse
- 72 108 Recurse
- 74 103 Recurse
- 76 98 Recurse
- 78 93 Recurse
- 80 88 Recurse
- 82 2 Recurse
- 84 0 Recurse
- 86 41 KetRmax
- 88 3 CBra 2
- 91 3 Ket
- 93 3 CBra 3
- 96 3 Ket
- 98 3 CBra 4
- 101 3 Ket
- 103 3 CBra 5
- 106 3 Ket
- 108 3 CBra 6
- 111 3 Ket
- 113 3 CBra 7
- 116 3 Ket
- 118 3 CBra 8
- 121 3 Ket
- 123 3 CBra 9
- 126 3 Ket
- 128 3 CBra 10
- 131 3 Ket
- 133 133 Ket
- 135 End
- ------------------------------------------------------------------
- Capture group count = 10
- May match empty string
- Subject length lower bound = 0
- /([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00](*ACCEPT)/
- Failed: error 114 at offset 509: missing closing parenthesis
- /([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00](*ACCEPT)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))/-fullbincode
- #pattern -fullbincode
- /\[()]{65535}/expand
- # End of testinput8
|