Input:
use strict; use warnings; my %HoA = ( 0 => [ split(/\n/, <<'__EOI__') ], 1;;;;;;; ;;;;;;;; ;;;;;;;; ;;LINE;;SVC;LINE;ACCT;VIEW; __EOI__ 1 => [ split(/\n/, <<'__EOI__') ], 1;; ;;; ;;; ;LINE;; __EOI__ 2 => [ split(/\n/, <<'__EOI__') ], 1;;;;; ;;;;;; ;;;LAST;;; ;UPDT;SRCE;UPDT;UPDT;WORK; __EOI__ ); local *FILE = *STDOUT;
Code:
my @keys = sort keys %HoA; my $num_elements = @{$HoA{$keys[0]}}; for (my $i=0; $i<$num_elements; $i++) { print FILE join('', map { $HoA{$_}[$i] } @keys), $/; }
Output:
1;;;;;;;1;;1;;;;; ;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;LAST;;; ;;LINE;;SVC;LINE;ACCT;VIEW;;LINE;;;UPDT;SRCE;UPDT;UPDT;WORK;
MapCar and MapCarU from Algorithm::Loops could be used as an alternative, but it would be overkill.
In reply to Re: stumped on a complex data structure
by ikegami
in thread stumped on a complex data structure
by kfarr2
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |