Beefy Boxes and Bandwidth Generously Provided by pair Networks
Pathologically Eclectic Rubbish Lister
 
PerlMonks  

Re^2: grep trouble

by LogMiner (Novice)
on Apr 17, 2011 at 14:04 UTC ( #899814=note: print w/replies, xml ) Need Help??


in reply to Re: grep trouble
in thread grep trouble

Thanks davido. I guess the grep-evaluated block should look like:

{$_ eq "" or "" =~ /$_/}

(of course the actual logic in my script is different, as there are easier ways to do the above)

Replies are listed 'Best First'.
Re^3: grep trouble
by LanX (Bishop) on Apr 17, 2011 at 15:45 UTC
    I'm still not sure what you're trying to achieve here, cause your grep returns the PATTERNs which matched.

    Are those patterns simple words? If yes you could consider constructing an or-regex:

    DB<100> @patterns=qw#one two three# DB<101> $str="one two" DB<102> $re=join "|",@patterns DB<103> print $str =~ m/($re)/g onetwo

    UPDATE:

    just noticed there are still subtle differences:

    DB<106> $str="two one two" DB<107> print $str =~ m/($re)/g twoonetwo DB<108> print grep {$str=~/$_/} @patterns onetwo

    Cheers Rolf

Re^3: grep trouble
by LanX (Bishop) on Apr 18, 2011 at 10:37 UTC
    you also have to check for undef:

    DB<120> print scalar grep {"a"=~/$_/} ("a","",undef) 3

    Cheers Rolf

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others chanting in the Monastery: (3)
As of 2018-05-22 02:57 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    Notices?