Beefy Boxes and Bandwidth Generously Provided by pair Networks
We don't bite newbies here... much
 
PerlMonks  

Re: Dereference Hash of Arrays

by halfcountplus (Hermit)
on Oct 03, 2010 at 17:28 UTC ( #863190=note: print w/ replies, xml ) Need Help??


in reply to Dereference Hash of Arrays

It would be nice if you:

  1. Indented properly.
  2. More significantly (this is a "teach a person to fish" principle): learn a basic premise of debugging/programming problem-solving whereby you come up with simple demos for a step you are not sure of. Eg, if you are uncertain about "hash of array" syntax in a specific case, write a standalone script using a similar data structure, but uncomplicated by extraneous elements such as the use of regexps. This way, you can separate your data structure management from your use of regexps and determine where your challenge/problem lies.

>>I would like to output the entire array for the match Untrust to DMZ.

So you have a hash of sections based on the id number after "set policy id ". That being the case, what's wrong with:

for my $id ( keys %id_policy ) { foreach (@{ $id_policy{$id} }) { if ( /set\spolicy\sid\s(\d+)\s(from|name\s\"[^"]+\"\sfrom)\s\" +Untrust\"\sto\s"DMZ/ ) { foreach my $line (@{$id_policy{$id}}) { print $line } } }
}


Comment on Re: Dereference Hash of Arrays
Download Code
Re^2: Dereference Hash of Arrays
by k_grdn (Novice) on Oct 05, 2010 at 08:00 UTC
      Thank you very much for your reply, sure I tried that but as suggested stripping back the code would have been the best method for a self explanatory result.

      Thanks Again

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others chanting in the Monastery: (4)
As of 2014-10-02 02:28 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    What is your favourite meta-syntactic variable name?














    Results (43 votes), past polls