open my $fh, '<', $filename; while (<$fh>) { chomp; my ($id, @numbers) = split; for my $number (@numbers) { $result->{$id}{$number} = 1; } }