Beefy Boxes and Bandwidth Generously Provided by pair Networks
"be consistent"
 
PerlMonks  

Re: Comparing hashes without sorting the keys

by jonadab (Parson)
on Feb 18, 2004 at 20:22 UTC ( [id://330046]=note: print w/replies, xml ) Need Help??


in reply to Comparing hashes without sorting the keys

eq in Perl is not like eq in lisp, nor is it like equal. It's more like (Perl's) ==, except that it compares strings instead of numbers. What you're doing is evaluating the two hashes in string context and comparing the results. Hashes in string context (or any scalar context) return a piece of technical information you don't care about, so this isn't what you want to do.

Perl5 doesn't have a built-in operator for what you do want, so you can either write your own hash comparison routine or (preferably) look into using the module that the other monks have suggested. (I believe Perl6 will be fixing this, but you don't want to wait for that, because it'll be a while.)


;$;=sub{$/};@;=map{my($a,$b)=($_,$;);$;=sub{$a.$b->()}} split//,".rekcah lreP rehtona tsuJ";$\=$;[-1]->();print

Log In?
Username:
Password:

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

How do I use this?Last hourOther CB clients
Other Users?
Others having a coffee break in the Monastery: (2)
As of 2024-04-19 20:55 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found