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

Re: simple perl regex question (or is it?)

by ww (Archbishop)
on Nov 11, 2013 at 00:12 UTC ( #1061938=note: print w/replies, xml ) Need Help??

in reply to simple perl regex question (or is it?)

#!/usr/bin/perl use 5.016; use warnings; #1061936 my $str = q!AND (random text) AND (more random text) AND (yet more)!; my $str2 = q!OR (random text) OR (more random text) OR (yet more)!; while ( $str =~ /(AND )(\(.*\))?( AND|$)/ig ) { say $2; } while ( $str2 =~ /(OR )(\(.*\))?( OR|$)/ig ) { say "Rowing: $2"; } =head C:\>D:\ (random text) AND (more random text) AND (yet more) Rowing: (random text) OR (more random text) OR (yet more) =cut

Combining the regexen into a single regex left as a learning opportunity for OP.... except that whilst I posted this, LanX has taken care of the matter. :-(

As to the paren problem, run this after modifying a string with nested parens; then see regex docs re escaping.

Last para is an afterthought/update.

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1061938]
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others musing on the Monastery: (8)
As of 2018-03-21 15:21 GMT
Find Nodes?
    Voting Booth?
    When I think of a mole I think of:

    Results (268 votes). Check out past polls.