Beefy Boxes and Bandwidth Generously Provided by pair Networks
Do you know where your variables are?
 
PerlMonks  

Re: Building dynamic nested hash references with map

by l3nz (Friar)
on Jan 21, 2004 at 12:15 UTC ( [id://322854]=note: print w/replies, xml ) Need Help??


in reply to Building dynamic nested hash references

This version is slightly more compact by using map to navigate through the tree. A wrong path will return undef. I use the grep because so you can add empty "/" at the beginning or end of the filename, at your will.
use Data::Dumper; $VAR1 = { 'misc' => {}, 'docs' => { 'howtos' => { 'email' => { 'index.html' => { 'date' => '21-1-2004', 'size' => '691' } }, 'ftp' => {}, 'ssh' => {} } } }; $fs = "/docs/howtos/email/"; $v = $VAR1; # this is the actual processing map { $v = $v->{$_} } grep { length > 0 } split m./., $fs ; print Dumper $v;
Enjoy!

Note. I have been reading Paul Graham's On Lisp lately, does it show? :)

Note: I submitted this comment before seeing's BrowserUk's, looks like we had the same idea.

Log In?
Username:
Password:

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

How do I use this?Last hourOther CB clients
Other Users?
Others imbibing at the Monastery: (5)
As of 2024-03-28 14:22 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found