"Jenda Krynicky" <[EMAIL PROTECTED]> wrote in message 3E01E02F.17624.1ED52A1C@localhost">news:3E01E02F.17624.1ED52A1C@localhost... > From: "Perl" <[EMAIL PROTECTED]> > > This should work (but beware - it is untested :) > > > > Rob > > > > my @required = qw(head1 head6 head8); > > my $line; > > > > for (<DATA>) > > It's much better to use > while (<DATA>) > > This "for (<DATA>)" forces Perl to read the whole file into an array > in memory. (Well ... unless the optimizer is bright enough to change > the command to "while (<DATA>)". Not sure it is. You should not > depend on the optimizer.)
I agree completely. Also the optimiser shouldn't translate this to a while() as optimisers aren't supposed to change code semantics at all. > > { > > chomp; > > my @field = split /,/; > > While this may be fine for column headers I would not recommend doing > this with actual data. What if some of the fields are quoted and what > if they contain commas? use Text::CSV_XS instead. > Also true, but the problem was vaguely defined and I was coding for the simplest case. [snip code] > > P.S.: Rob, could you change the comment part of your mail address? > It's kinda strange to see a post comming from "Perl". :-) Yes, my apologies for this. I used to receive and send the newsgroup posts as emails and just today set up the perl.org NNTP server - wrongly! Things should be correct now. Cheers, Rob -- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]