http://qs321.pair.com?node_id=83443


in reply to Re: Idiom for looping thru key/value pairs
in thread Idiom for looping thru key/value pairs

The problem with splice is that it would chop the values out of the original array, and he doesn't want to use a dupe.

This might be the time to use old-timey C-style for:

my @list = ('1','val','2','val2','1','val3'); my $self = { _subfields => [@list] }; my @subs; for (my $index = 1; $index < @{$self->{_subfields}}; $index+=2) { push @subs, ${$self->{_subfields}}[$index]; } # waa-la: print $_,"\n" foreach (@subs);
It's ugly, but it avoids the duplication. For the cost of a scalar you could always use
my $aryref = $self->{_subfields};
instead.

-- Frag.