Or:$_ = "ATGCCCGATATATATCCCNNNATATATGCGCATGCTGCT"; say length $1 while /\G(.*?)AT/g; say length $'; __END__ 0 5 0 0 0 6 0 0 4 6
For those readers who get trigger happy when they see a use of $' or $`, feel free to use /p instead if you're going to use the above code.$_ = "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
|
|---|