Beefy Boxes and Bandwidth Generously Provided by pair Networks
Just another Perl shrine

Re: How to check and compare data in 2 hashes based on date and conditions

by kcott (Canon)
on Apr 06, 2013 at 05:11 UTC ( #1027247=note: print w/replies, xml ) Need Help??

in reply to How to check and compare data in 2 hashes based on date and conditions

G'day myhome,

Welcome to the monastery.

Firstly, splitting CSV lines on /,/ is generally not a good idea: that technique falls flat on its face as soon as any data contains a comma. Take a look at: Text::CSV.

To access data in your hashes, you'll want something like $balance{$id}{due_date}. You'll probably want to use the keys function something like this:

for my $id (keys %account) { my $name = $account{$id}{name}; my $cdate = $account{$id}{cdate}; my $account = $account{$id}{account}; my $odue = $account{$id}{odue}; }

For a basic introduction to hashes see perlintro - Perl variable types. More complete details are in perldata. For complex data structures, such as Hashes of Hashes, which is what you're working with here, see perldsc (Perl Data Structures Cookbook).

Finally, please edit your post so that code and data are in <code>...</code> tags, paragraphs are in <p>...</p> tags, bullet lists are in <ul>...</ul> tags, and so on — full details are in Markup in the Monastery.

-- Ken

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1027247]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others examining the Monastery: (9)
As of 2016-09-28 10:24 GMT
Find Nodes?
    Voting Booth?
    Extraterrestrials haven't visited the Earth yet because:

    Results (525 votes). Check out past polls.