#!/bin/perl $hash{0}="00|01|02|03"; $hash{1}="10|11|12|13"; $hash{2}="20|21|22|23"; $hash{3}="30|31|32|33"; foreach (keys %hash) { ($a,$b,$c,$d) = split /\|/,$hash{$_}; @arr=($a,$b,$c,$d); #push @{$hash2{$_}}=@arr; #$hash2{$_} = [$a, $b, $c ,$d]; $hash2{$_} = [@arr]; } print %hash2;