in reply to Special Variables and Multiple Regexp Matching
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)
|
|---|