m!([\S]+)\t(\d+)(?{$hash{$1} +=$2})! while (); print "$_ -> $hash{$_}\n" foreach (keys %hash); __DATA__ 192.168.1 23 192.168.1 14 192.168.4 8 192.168.3 13 192.168.3 12