vacant has asked for the wisdom of the Perl Monks concerning the following question:
Dear monks:
I have the following pretty simple subroutine which finds and returns the next non-empty, non-comment line in an input text file. Comments are lines beginning with "#". dprint() is a printing sub for debugging.
This code works perfectly, but for every comment in the input file, Perl complains (even without strict):sub nextline { my $fh = shift; my $l; do { $l = <$fh>; if (!defined($l)) { dprint "end of file\n"; return undef } dprint "line is: $l"; next if ($l =~ /^#/); # skip comments $l = clean($l); } until ($l ne ''); # skip blank lines return $l; } ## end sub nextline
Exiting subroutine via next...What kind of trouble can doing it this way cause, or why is Perl complaining?
Thanks kindly,
Vacant
|
---|
Back to
Seekers of Perl Wisdom