http://qs321.pair.com?node_id=984061


in reply to Re^2: Traverse an unknown multi-dimensional hash
in thread Traverse an unknown multi-dimensional hash

How would i print the output like this : 1 => a =>i =>level 3 1=> a=> =>ii => level3 1=>a=>iii=>level3 etc I could not workout the code to go back to the start and traverse back.
  • Comment on Re^3: Traverse an unknown multi-dimensional hash

Replies are listed 'Best First'.
Re^4: Traverse an unknown multi-dimensional hash
by Anonymous Monk on Jul 28, 2012 at 08:39 UTC
      traversing is fine. i replyed to the same post i want it to print as 1 => a =>i =>level 3
      1=> a=> =>ii => level3
      1=>a=>iii=>level3
      as after traversing till level 3 in firs line.....how reset the patent to 1->a?
Re^4: Traverse an unknown multi-dimensional hash
by Anonymous Monk on Jul 28, 2012 at 22:37 UTC
    ub dumpHash { my ($element, $indent) = @_; $indent ||= ''; return " = $indent$element\n" unless 'HASH' eq ref $element; my $str= ''; for my $key (sort keys %$element) { $str .= "$indent$key :"; $str .= dumpHash ($element->{$key}, $indent . ' '); } return $str;
    output :
    toplevel-1 : sublevel1a : = value-1a sublevel1b : = value-1b toplevel-2 : sublevel1c : value-1c.1 : = replace +ment-1c.1 value-1c.2 : = replacement-1c.2 sublevel1d : = value-1d
    but i want
    toplevel-1 : sublevel1a : = value-1a toplevel-1 : sublevel1b : = value-1b
      Yes, I understand by now that you're trying to get rid of newlines, that is great, but where is your modification of dumpHash, with code tags, where you try?