pos SCALARReturns the location in SCALAR where the last m//g search
over SCALAR left off.  It returns the offset of
the character after the last one matched.  (That is, it's equivalent to
length($`) + length($&).)  This is the offset where the next
m//g search on that string will start.  Remember that
the offset of the beginning of the string is 0.  For example:
$grafitto = "fee fie foe foo";
while ($grafitto =~ m/e/g) {
    print pos $grafitto, "\n";
}prints 2, 3, 7, and
11, the offsets of each of the characters following an "e".
The pos function may be assigned a value to
tell the next m//g where to start:
$grafitto = "fee fie foe foo";
pos $grafitto = 4;  # Skip the fee, start at fie
while ($grafitto =~ m/e/g) {
        print pos $grafitto, "\n";
}This prints only 7 and 11.  (Thank
heaven.)  The regular expression assertion, \G, matches only
at the location currently specified by pos
for the string being searched.