my %elements; foreach (@lines) { my ($key, @items); chomp; ($key, @items) = split(/,/, $_); push @{ $elements{$key} }, [ @items ]; }