#!/usr/bin/perl use strict; use warnings; use Data::Dumper; use feature 'say'; my @array = ("a1 b1", "a2 b2", "a3 b3", "a5 b5", "a4 b4"); my %hash; foreach my $element (@array) { my ($key, $value) = split(/ /, $element, 2); $hash{$key} = $value; } print Dumper \%hash; say $hash{'a5'}; __END__ $ perl test.pl $VAR1 = { 'a3' => 'b3', 'a5' => 'b5', 'a4' => 'b4', 'a2' => 'b2', 'a1' => 'b1' }; b5