foreach my $rule ( keys %$rulelist ){
And some formatting suggestions, particularly as your list gets longer and more nested. Perhaps change these:
To this:if ( defined $rulelist->{$rulenum}->{REGION} ){ my $rule = $rulelist->{$rulenum}->{REGION}; if ( $rule =~ s/!// ){ # handles negation if ( $line -> {REGIONID} == $rule ){ next RULE }; } elsif ( $line -> {REGIONID} != $rule) { next RULE }; ...
if ( defined (my $rule = $rulelist->{$rulenum}->{REGION} )){ next RULE if ( $rule =~ s/!// && $line->{REGIONID} == $rule); next RULE if ( $line->{REGIONID} != $rule); ...
Update:Fixed a typo, I had omitted the close-paren in the first next RULE statement. In reply to Re: Algorithm To Select Lines Based On Attributes
by hbm
in thread Algorithm To Select Lines Based On Attributes
by ~~David~~
For:
Use:
& & < < > > [ [ ] ]