Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl: the Markov chain saw

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]
[marto]: good morning all

How do I use this? | Other CB clients
Other Users?
Others scrutinizing the Monastery: (4)
As of 2017-04-25 09:41 GMT
Find Nodes?
    Voting Booth?
    I'm a fool:

    Results (449 votes). Check out past polls.