I think you missed the point to the followup question. Not a Number was asking if you want overlapping matches to count too. In other words, we already know you want to count all of the "GUAUG"'s in a string like: "GUAUGGUAUG".
But do you also want to find two matches in a string with overlapping keywords? Like this: "GUAUGUAUG"...
If that's the case, your RE will need zero-width lookahead. Something like this:
/G(?=UAUG)/g
That way the "pointer" is advanced one character at a time rather than one keyword at a time, thus allowing for overlapping matches.
You can find the position (in list context) with pos. In scalar context, the special variables @+ and @- will be helpful. See perlvar for a description of them.
On the other hand, if you want to find only one match in cases where the sequence appears to overlap, you'll have to define whether you want the left-side of the overlap to match, or the right side.
| [reply] [Watch: Dir/Any] [d/l] |