Beefy Boxes and Bandwidth Generously Provided by pair Networks
There's more than one way to do things
 
PerlMonks  

Re^3: Making an LDAP filter more readable

by BrowserUk (Pope)
on Jan 11, 2006 at 16:01 UTC ( #522476=note: print w/replies, xml ) Need Help??


in reply to Re^2: Making an LDAP filter more readable
in thread Making an LDAP filter more readable

Sure.

my $tab = 0; ## Number of 'tabs' to insert starts at zero $input =~ s[ ( ## Capture to $1 [()] ## All open or close parens ) ]{ ## /e-xecute turns the second half into a code block. ## Decrement teh tab count if this is a close paren $tab-- if $1 eq ')'; ## Insert a newline + $tab tabs before the paren (open or close) my $modified = "\n" . ( " " x $tab ) . $1; ## Increment the tab count if this is an open paren $tab++ if $1 eq '('; ## And 'return' the modified text for substitution $modified; }xge; ## Late addition: ## Second pass strips out any 'lone' close parens ## to compact the results a little. $input =~ s[\n\s+\)][)]g;

Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
Lingua non convalesco, consenesco et abolesco. -- Rule 1 has a caveat! -- Who broke the cabal?
"Science is about questioning the status quo. Questioning authority".
In the absence of evidence, opinion is indistinguishable from prejudice.

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others examining the Monastery: (3)
As of 2020-10-22 15:25 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    My favourite web site is:












    Results (227 votes). Check out past polls.

    Notices?