banesong has asked for the wisdom of the Perl Monks concerning the following question:
I would like to later process the array and pull individual results out of the parent hash on the fly, al la:my @array = ( '{title}', '{Rule}{Severity}', '{Rule}{weight}', '{Rule}{id}', '{Rule}{version}', '{Rule}{title}', '{Rule}{detailedDescription}{VulnDiscussion}', '{Rule}{detailedDescription}{Responsibility}', '{Rule}{detailedDescription}{IAControls}', '{Rule}{check}{check-content}', '{Rule}{fixtext}{content}', );
foreach my $firstKey (sort keys %hashData) { foreach my $arrayKey (@array) { print $hashData{$firstKey}$arrayKey; } }
With '$hashData{$firstKey}$arrayKey' being treated like '$hashData{$firstKey}{Rule}{detailedDescription}{VulnDiscussion}'.
The problem is that I don't know how deep the array key may get on the fly, and at a certain point can just write a block of code quicker for each item in the array rather than try and make it more malleable. However, I really want to make the configuration (order of items to extract, etc) more, well, configurable, and not have to add a block of code each time the group wants a new piece of data added.
Thanks in advance! T
|
|---|