We have to guess how '$token' and '$line' look like, and I have no idea why the (undemonstrated) while loop should not terminate.¹
(see How (Not) To Ask A Question and How do I post a question effectively?)
But pos will tell you where the last match paused, the rest should be easily calculated with 'length($token)' (IF token is just a simple string)
DB<127> $str= "a b " x 4 => "a b a b a b a b " DB<128> $token="a" => "a" DB<129> print pos($str),": $1\n" while $str =~ /($token)/g 1: a 7: a 13: a 19: a
¹) well except the fact that lc always creates a new string which resets the search-position. Simply lowercase once '$line' before you loop!
Cheers Rolf
( addicted to the Perl Programming Language)
In reply to Re: Special Variables and Multiple Regexp Matching
by LanX
in thread Special Variables and Multiple Regexp Matching
by nathaniels
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |