$_ = "ATGCCCGATATATATCCCNNNATATATGCGCATGCTGCT"; my ($l, $m) = (-2, 0); $m = length $', say -$l - 2 + ($l = length($`)) while /AT/g; say $m; __END__ 0 5 0 0 0 6 0 0 4 6