Compiling REx `(a(?{$a_counter ++;}))+(b(?{$b_counter ++;}))+' size 25 Got 204 bytes for offset annotations. first at 5 1: CURLYX[0] {1,32767}(12) 3: OPEN1(5) 5: EXACT (7) 7: EVAL(9) 9: CLOSE1(11) 11: WHILEM[1/2](0) 12: NOTHING(13) 13: CURLYX[1] {1,32767}(24) 15: OPEN2(17) 17: EXACT (19) 19: EVAL(21) 21: CLOSE2(23) 23: WHILEM[2/2](0) 24: NOTHING(25) 25: END(0) anchored "a" at 0 floating "ab" at 0..2147483647 (checking floating) minlen 2 with eval Offsets: [25] 23[1] 0[0] 1[1] 0[0] 2[1] 0[0] 3[19] 0[0] 22[1] 0[0] 23[0] 23[0] 46[1] 0[0] 24[1] 0[0] 25[1] 0[0] 26[19] 0[0] 45[1] 0[0] 46[0] 46[0] 47[0] Guessing start of match, REx "(a(?{$a_counter ++;}))+(b(?{$b_counter ++;}))+" against "aaabbbb"... Found floating substr "ab" at offset 2... Found anchored substr "a" at offset 0... Guessed: match at offset 0 Matching REx "(a(?{$a_counter ++;}))+(b(?{$b_counter ++;}))+" against "aaabbbb" Setting an EVAL scope, savestack=28 0 <> | 1: CURLYX[0] {1,32767} 0 <> | 11: WHILEM[1/2] 0 out of 1..32767 cc=140f960 0 <> | 3: OPEN1 0 <> | 5: EXACT 1 | 7: EVAL re_eval 0x18472a4 1 | 9: CLOSE1 1 | 11: WHILEM[1/2] 1 out of 1..32767 cc=140f960 Setting an EVAL scope, savestack=41 1 | 3: OPEN1 1 | 5: EXACT 2 | 7: EVAL re_eval 0x18472a4 2 | 9: CLOSE1 2 | 11: WHILEM[1/2] 2 out of 1..32767 cc=140f960 Setting an EVAL scope, savestack=54 2 | 3: OPEN1 2 | 5: EXACT 3 | 7: EVAL re_eval 0x18472a4 3 | 9: CLOSE1 3 | 11: WHILEM[1/2] 3 out of 1..32767 cc=140f960 Setting an EVAL scope, savestack=67 3 | 3: OPEN1 3 | 5: EXACT failed... restoring \1 to 2(2)..3 restoring \2..\2 to undef failed, try continuation... 3 | 12: NOTHING 3 | 13: CURLYX[1] {1,32767} 3 | 23: WHILEM[2/2] 0 out of 1..32767 cc=140f384 3 | 15: OPEN2 3 | 17: EXACT 4 | 19: EVAL re_eval 0x18471e8 4 | 21: CLOSE2 4 | 23: WHILEM[2/2] 1 out of 1..32767 cc=140f384 Setting an EVAL scope, savestack=70 4 | 15: OPEN2 4 | 17: EXACT 5 | 19: EVAL re_eval 0x18471e8 5 | 21: CLOSE2 5 | 23: WHILEM[2/2] 2 out of 1..32767 cc=140f384 Setting an EVAL scope, savestack=83 5 | 15: OPEN2 5 | 17: EXACT 6 | 19: EVAL re_eval 0x18471e8 6 | 21: CLOSE2 6 | 23: WHILEM[2/2] 3 out of 1..32767 cc=140f384 Setting an EVAL scope, savestack=96 6 | 15: OPEN2 6 | 17: EXACT 7 <> | 19: EVAL re_eval 0x18471e8 7 <> | 21: CLOSE2 7 <> | 23: WHILEM[2/2] 4 out of 1..32767 cc=140f384 Setting an EVAL scope, savestack=109 7 <> | 15: OPEN2 7 <> | 17: EXACT failed... restoring \2 to 6(6)..7 failed, try continuation... 7 <> | 24: NOTHING 7 <> | 25: END Match successful! Guessing start of match, REx "(a(?{$a_counter ++;}))+(b(?{$b_counter ++;}))+" against "ab"... Found floating substr "ab" at offset 0... Found anchored substr "a" at offset 0... Guessed: match at offset 0 Matching REx "(a(?{$a_counter ++;}))+(b(?{$b_counter ++;}))+" against "ab" Setting an EVAL scope, savestack=28 0 <> | 1: CURLYX[0] {1,32767} 0 <> | 11: WHILEM[1/2] 0 out of 1..32767 cc=140f960 0 <> | 3: OPEN1 0 <> | 5: EXACT 1 | 7: EVAL re_eval 0x18472a4 1 | 9: CLOSE1 1 | 11: WHILEM[1/2] 1 out of 1..32767 cc=140f960 Setting an EVAL scope, savestack=41 1 | 3: OPEN1 1 | 5: EXACT failed... restoring \1 to 0(0)..1 restoring \2..\2 to undef failed, try continuation... 1 | 12: NOTHING 1 | 13: CURLYX[1] {1,32767} 1 | 23: WHILEM[2/2] 0 out of 1..32767 cc=140f5dc 1 | 15: OPEN2 1 | 17: EXACT 2 <> | 19: EVAL re_eval 0x18471e8 2 <> | 21: CLOSE2 2 <> | 23: WHILEM[2/2] 1 out of 1..32767 cc=140f5dc Setting an EVAL scope, savestack=44 2 <> | 15: OPEN2 2 <> | 17: EXACT failed... restoring \2 to 1(1)..2 failed, try continuation... 2 <> | 24: NOTHING 2 <> | 25: END Match successful! Guessing start of match, REx "(a(?{$a_counter ++;}))+(b(?{$b_counter ++;}))+" against "abb"... Found floating substr "ab" at offset 0... Found anchored substr "a" at offset 0... Guessed: match at offset 0 Matching REx "(a(?{$a_counter ++;}))+(b(?{$b_counter ++;}))+" against "abb" Setting an EVAL scope, savestack=28 0 <> | 1: CURLYX[0] {1,32767} 0 <> | 11: WHILEM[1/2] 0 out of 1..32767 cc=140f960 0 <> | 3: OPEN1 0 <> | 5: EXACT 1 | 7: EVAL re_eval 0x18472a4 1 | 9: CLOSE1 1 | 11: WHILEM[1/2] 1 out of 1..32767 cc=140f960 Setting an EVAL scope, savestack=41 1 | 3: OPEN1 1 | 5: EXACT failed... restoring \1 to 0(0)..1 restoring \2..\2 to undef failed, try continuation... 1 | 12: NOTHING 1 | 13: CURLYX[1] {1,32767} 1 | 23: WHILEM[2/2] 0 out of 1..32767 cc=140f5dc 1 | 15: OPEN2 1 | 17: EXACT 2 | 19: EVAL re_eval 0x18471e8 2 | 21: CLOSE2 2 | 23: WHILEM[2/2] 1 out of 1..32767 cc=140f5dc Setting an EVAL scope, savestack=44 2 | 15: OPEN2 2 | 17: EXACT 3 <> | 19: EVAL re_eval 0x18471e8 3 <> | 21: CLOSE2 3 <> | 23: WHILEM[2/2] 2 out of 1..32767 cc=140f5dc Setting an EVAL scope, savestack=57 3 <> | 15: OPEN2 3 <> | 17: EXACT failed... restoring \2 to 2(2)..3 failed, try continuation... 3 <> | 24: NOTHING 3 <> | 25: END Match successful! Guessing start of match, REx "(a(?{$a_counter ++;}))+(b(?{$b_counter ++;}))+" against "aabb"... Found floating substr "ab" at offset 1... Found anchored substr "a" at offset 0... Guessed: match at offset 0 Matching REx "(a(?{$a_counter ++;}))+(b(?{$b_counter ++;}))+" against "aabb" Setting an EVAL scope, savestack=28 0 <> | 1: CURLYX[0] {1,32767} 0 <> | 11: WHILEM[1/2] 0 out of 1..32767 cc=140f960 0 <> | 3: OPEN1 0 <> | 5: EXACT 1 | 7: EVAL re_eval 0x18472a4 1 | 9: CLOSE1 1 | 11: WHILEM[1/2] 1 out of 1..32767 cc=140f960 Setting an EVAL scope, savestack=41 1 | 3: OPEN1 1 | 5: EXACT 2 | 7: EVAL re_eval 0x18472a4 2 | 9: CLOSE1 2 | 11: WHILEM[1/2] 2 out of 1..32767 cc=140f960 Setting an EVAL scope, savestack=54 2 | 3: OPEN1 2 | 5: EXACT failed... restoring \1 to 1(1)..2 restoring \2..\2 to undef failed, try continuation... 2 | 12: NOTHING 2 | 13: CURLYX[1] {1,32767} 2 | 23: WHILEM[2/2] 0 out of 1..32767 cc=140f4b0 2 | 15: OPEN2 2 | 17: EXACT 3 | 19: EVAL re_eval 0x18471e8 3 | 21: CLOSE2 3 | 23: WHILEM[2/2] 1 out of 1..32767 cc=140f4b0 Setting an EVAL scope, savestack=57 3 | 15: OPEN2 3 | 17: EXACT 4 <> | 19: EVAL re_eval 0x18471e8 4 <> | 21: CLOSE2 4 <> | 23: WHILEM[2/2] 2 out of 1..32767 cc=140f4b0 Setting an EVAL scope, savestack=70 4 <> | 15: OPEN2 4 <> | 17: EXACT failed... restoring \2 to 3(3)..4 failed, try continuation... 4 <> | 24: NOTHING 4 <> | 25: END Match successful! Guessing start of match, REx "(a(?{$a_counter ++;}))+(b(?{$b_counter ++;}))+" against "aaabb"... Found floating substr "ab" at offset 2... Found anchored substr "a" at offset 0... Guessed: match at offset 0 Matching REx "(a(?{$a_counter ++;}))+(b(?{$b_counter ++;}))+" against "aaabb" Setting an EVAL scope, savestack=28 0 <> | 1: CURLYX[0] {1,32767} 0 <> | 11: WHILEM[1/2] 0 out of 1..32767 cc=140f960 0 <> | 3: OPEN1 0 <> | 5: EXACT 1 | 7: EVAL re_eval 0x18472a4 1 | 9: CLOSE1 1 | 11: WHILEM[1/2] 1 out of 1..32767 cc=140f960 Setting an EVAL scope, savestack=41 1 | 3: OPEN1 1 | 5: EXACT 2 | 7: EVAL re_eval 0x18472a4 2 | 9: CLOSE1 2 | 11: WHILEM[1/2] 2 out of 1..32767 cc=140f960 Setting an EVAL scope, savestack=54 2 | 3: OPEN1 2 | 5: EXACT 3 | 7: EVAL re_eval 0x18472a4 3 | 9: CLOSE1 3 | 11: WHILEM[1/2] 3 out of 1..32767 cc=140f960 Setting an EVAL scope, savestack=67 3 | 3: OPEN1 3 | 5: EXACT failed... restoring \1 to 2(2)..3 restoring \2..\2 to undef failed, try continuation... 3 | 12: NOTHING 3 | 13: CURLYX[1] {1,32767} 3 | 23: WHILEM[2/2] 0 out of 1..32767 cc=140f384 3 | 15: OPEN2 3 | 17: EXACT 4 | 19: EVAL re_eval 0x18471e8 4 | 21: CLOSE2 4 | 23: WHILEM[2/2] 1 out of 1..32767 cc=140f384 Setting an EVAL scope, savestack=70 4 | 15: OPEN2 4 | 17: EXACT 5 <> | 19: EVAL re_eval 0x18471e8 5 <> | 21: CLOSE2 5 <> | 23: WHILEM[2/2] 2 out of 1..32767 cc=140f384 Setting an EVAL scope, savestack=83 5 <> | 15: OPEN2 5 <> | 17: EXACT failed... restoring \2 to 4(4)..5 failed, try continuation... 5 <> | 24: NOTHING 5 <> | 25: END Match successful! Guessing start of match, REx "(a(?{$a_counter ++;}))+(b(?{$b_counter ++;}))+" against "aabbb"... Found floating substr "ab" at offset 1... Found anchored substr "a" at offset 0... Guessed: match at offset 0 Matching REx "(a(?{$a_counter ++;}))+(b(?{$b_counter ++;}))+" against "aabbb" Setting an EVAL scope, savestack=28 0 <> | 1: CURLYX[0] {1,32767} 0 <> | 11: WHILEM[1/2] 0 out of 1..32767 cc=140f960 0 <> | 3: OPEN1 0 <> | 5: EXACT 1 | 7: EVAL re_eval 0x18472a4 1 | 9: CLOSE1 1 | 11: WHILEM[1/2] 1 out of 1..32767 cc=140f960 Setting an EVAL scope, savestack=41 1 | 3: OPEN1 1 | 5: EXACT 2 | 7: EVAL re_eval 0x18472a4 2 | 9: CLOSE1 2 | 11: WHILEM[1/2] 2 out of 1..32767 cc=140f960 Setting an EVAL scope, savestack=54 2 | 3: OPEN1 2 | 5: EXACT failed... restoring \1 to 1(1)..2 restoring \2..\2 to undef failed, try continuation... 2 | 12: NOTHING 2 | 13: CURLYX[1] {1,32767} 2 | 23: WHILEM[2/2] 0 out of 1..32767 cc=140f4b0 2 | 15: OPEN2 2 | 17: EXACT 3 | 19: EVAL re_eval 0x18471e8 3 | 21: CLOSE2 3 | 23: WHILEM[2/2] 1 out of 1..32767 cc=140f4b0 Setting an EVAL scope, savestack=57 3 | 15: OPEN2 3 | 17: EXACT 4 | 19: EVAL re_eval 0x18471e8 4 | 21: CLOSE2 4 | 23: WHILEM[2/2] 2 out of 1..32767 cc=140f4b0 Setting an EVAL scope, savestack=70 4 | 15: OPEN2 4 | 17: EXACT 5 <> | 19: EVAL re_eval 0x18471e8 5 <> | 21: CLOSE2 5 <> | 23: WHILEM[2/2] 3 out of 1..32767 cc=140f4b0 Setting an EVAL scope, savestack=83 5 <> | 15: OPEN2 5 <> | 17: EXACT failed... restoring \2 to 4(4)..5 failed, try continuation... 5 <> | 24: NOTHING 5 <> | 25: END Match successful! In aaabbbb there were 3 'a's and 4 'b's. In ab there were 0 'a's and 0 'b's. In abb there were 0 'a's and 0 'b's. In aabb there were 0 'a's and 0 'b's. In aaabb there were 0 'a's and 0 'b's. In aabbb there were 0 'a's and 0 'b's. Freeing REx: `"(a(?{$a_counter ++;}))+(b(?{$b_counter ++;}))+"'