use strict; use warnings; use Data::Dumper; use utf8; my %hash ; while() { my @arr = split(/\s+/, $_); $hash{$arr[1]}= $_; } print Dumper \%hash; __DATA__ 1/2/2013 cgoo nreuiheru 1/4/2013 doow reiqrqueih 1/5/2013 hellio ruieqrhfuepqh 1/20/2013 cgoo 3rhquh4ureyh 1/30/2013 yetil jerqohgqrij 2/13/2013 hellio rueqipheruh 2/14/2013 cgoo wehrig4r74378