in reply to Parsing complex data
Hi,
I'ld do it like this:
I'ld do it like this:
Note that I was unsure which the correct data struct was, so I made some changes in it as you can see. This would work for any struct with the three basic data types.#!/usr/bin/perl -w use strict; sub printstruct { my $struct=shift; my $main=shift||0; my $ret=$main?"\n":" "; my $item; if (ref $struct eq "ARRAY") { for $item (sort @$struct) { printstruct($item); } } elsif (ref $struct eq "HASH") { for $item (sort keys %$struct) { print $item," " if $main; printstruct($struct->{$item}); print $ret; } } else { print $struct,$ret; } } my $struct={ mykey1 => { 'firstkey' => 'firstvalue', 'secondkey' => 'secondval' + }, mykey2 => { 'ninza' => 'turtle', 'Hurricane' => 'Dennis' }, mykey3 => [ [ 'one', 'two', 'three' ] ], mykey4 => [ [ 4, 5, 'three' ], [ 6, 7, 'four' ], [ 8, 9, 'five' ] +], }; printstruct($struct,1);
TheMage
http://themage.bliker.com
http://themage.bliker.com
|
---|
In Section
Seekers of Perl Wisdom