my @sortedKeys = map { $_->[0] } sort { $a->[1] <=> $b->[1] } map { [ $_, join("", # xx.XXX.xx.X => xxxXXXxxxXXX map { sprintf("%03d", $_) } ( /^(\d+)\.(\d+)\.(\d+)\.(\d+)$/ ) ) ] } keys %hash;