in reply to Re: Pattern Matching - a Tricky one
in thread Pattern Matching - a Tricky one
my $found = 0; while ($found < 2) { my $line = <DATA>; if ($line =~ /customer2/) { $found++; my @customer2_data = split(/=/, $line); print "$found- $customer2_data[1]"; } }
Don't you run into a infinite loop with this? In case $found is less than 2 and <DATA> has reached its end-of-file, there will be no more matches and $found won't be incremented... So it will loop quite a while ;o))
So, maybe this would be better:
my $found = 0; while ( $found < 2 and my $line = <DATA> ) { if ( $line =~ m/customer2/ ) { # ... } }
Even if this case only appears, if the input data is corrupt, I would try to avoid such construct.
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^3: Pattern Matching - a Tricky one
by kdj (Friar) on Jan 02, 2009 at 16:32 UTC |