in reply to How do I backtrack while reading a file line-by-line?
Then all you need is a c-style for loop a $save scalar and a %done hash.
Similar to:
my @array = qw/ foo bar baz blah bar blah baz/; my $save = 0; my %done; for (my $x = 0; $x <= $#array; $x++) { $save = $x if ($array[$x] eq 'bar' ); print "X:$x SAVE:$save $array[$x]\n"; if ( $array[$x] eq 'blah' and !defined($done{$x}) ) { $done{$x}++; $x = $save; } }
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^2: How do I backtrack while reading a file line-by-line?
by ikegami (Patriarch) on Oct 13, 2006 at 20:42 UTC | |
by grep (Monsignor) on Oct 13, 2006 at 21:26 UTC | |
by ikegami (Patriarch) on Oct 14, 2006 at 07:26 UTC |