in reply to UPDATE: Variable number of words/fields in a line/record
in thread Variable number of words/fields in a line/record
Don't use variables, but an array or hash.
Would do something like:
If you really want to name the items, use a hash. Define the names first:while( <> ){ split; splice @_, 0, 2; #removes first two elements store_elements_function( @_ ); #sub to store the remainder }
Hope this helps. You can read up on it in perldata.my @std_keys = qw/proto .../; my @ext_keys = qw/name9 name10 name11/; .. #and in loop: my %hash; if( @_ < 9 ){ @hash{@std_keys} = @_; } else { @hash{(@std_keys, @ext_keys)} = @_; } print "My proto is: ",$hash{'proto'},"\n"; ...
Jeroen
"We are not alone"(FZ)
|
---|
In Section
Seekers of Perl Wisdom