develooper Front page | perl.beginners | Postings from April 2002

Re: 3 field hash, value lookup by key is 2nd field

Thread Previous
From:
bob ackerman
Date:
April 28, 2002 11:36
Subject:
Re: 3 field hash, value lookup by key is 2nd field
Message ID:
E8EDFD2C-5AD6-11D6-828E-003065428126@pacbell.net

On Friday, April 26, 2002, at 11:27  PM, r wrote:

> Goal- look up value in a hash of 3 fields where middle is key field for
> lookup. The build hash from text file part below is working fine.
> Then I read in a transaction file with field $sicode which should
> lookup/chain/match to the key ($sig)in the hash and find a weight (3rd 
> field
> in hash, $wgt), and a code, $type(1st field).
> I can't get the basic lookup on key $sig to work.
>
> I have created the hash from a text file thusly
>
> while (<INFILE>) {
>    ($type,$sig, $wgt) = split ','; # splits $_ by default
>    chomp $wgt;
>    print "2 $type   $sig   $wgt \n";# single-spaced output
>    $sigwgthash{$sig}{'type'} = $type;
>    $sigwgthash{$sig}{'wgt'} = $wgt;
>     }
> -------
> then verified its' existance in memory and can print each field by doing
>
>  foreach $key (sort keys %sigwgthash) {
>    print "$key has a wgt of $sigwgthash{$key}{'wgt'} \n";
> --------
> Now  why is it so hard to find a basic "lookup value by key" using key 
> field
> from another file??  But remember, the key I need to use is the MIDDLE of
> the 3 fields in the hash.
>
> When trying a distinct lookup within a "foreach" read of the non-hash
> transaction file, .  I tried..
> print "wgthash $wgthash     sigwgt $sigwgthash{$sicode}{'wgt'}     \n";
>
> where $sicode is the field from the other file to be matched in the hash
> keys.  The other words in front are just to describe field in that debug
> print line.
> I get blanks/nothing... no match evidently.

nothing wrong with your code that i can see.
what do you mean 'read of the non-hash' file? a different file than the 
one you created the hash from?
what is in that file?
maybe you need to give us the code where you get nothing. the one line you 
are showing is ok in itself.
assuming you have a valid key in $sicode.

> Most tutorials, Perl Monks, etc do not seem to cover many basics one notch
> above the most basic. I personally found the Programming Perl/Oreilly book
> to be NOT very helpful.
> Sure would appreciate any help.
> RS
>
>
>
>
> --
> To unsubscribe, e-mail: beginners-unsubscribe@perl.org
> For additional commands, e-mail: beginners-help@perl.org
>


Thread Previous


nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About