#!/usr/bin/perl use warnings; use strict; use Data::Dumper; my %xhash = ('a' => { 'b' => { 'e' => 'E', 'c' => 'C', 'content' => 'B ' }, 'content' => 'A ', 'd' => 'D' }); my $key = keys(%xhash); print $key; my %c_hash=('a' => { 'addval' => { 'b' => { 'addval' => { 'e' => { 'addval' => {}, 'repval' => '5' }, 'c' => { 'addval' => {}, 'repval' => '3' } }, 'repval' => '2' }, 'd' => { 'addval' => {}, 'repval' => '4' } }, 'repval' => '1' }); print $c_hash{'a'}{'repval'}; foreach keys($xhash){ keys(%xhash)=$c_hash{'$key'}{'repval'}; print Dumper $xhash;} #### %xhash = ('1' => { '2' => { '5' => 'E', '3' => 'C', 'content' => 'B ' }, 'content' => 'A ', '4' => 'D' });