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

Re: Confusing grep behavior

by grep (Monsignor)
on Dec 04, 2007 at 21:19 UTC ( #654958=note: print w/ replies, xml ) Need Help??


in reply to Confusing grep behavior

You need to reread grep

my @res = grep $_ split(",", "a,b,c,d,,f,,h"); #is a syntax error.

According to the POD when grep is not called with a block it requires a comma before the list you are working on.
grep EXPR,LIST

So this will work as you expect.

my @res = grep $_, split(",", "a,b,c,d,,f,,h");
grep
One dead unjugged rabbit fish later...


Comment on Re: Confusing grep behavior
Select or Download Code
Re^2: Confusing grep behavior
by dextius (Monk) on Dec 04, 2007 at 23:33 UTC
    You are quite right.. I should rephrase my question... On Mac OS X, the comma isn't required, and has far different behavior. Anyone happen to know what that is?
      It's not a Mac thing. 5.8.5 on Linux allows it as well. I'm guessing it's a bug that was fixed in 5.8.7 or 5.8.8.
        Thanks, I wasn't aware of the bug, and was just confused since I wasn't getting a syntax error.

      No matter what OS you run it on the comma is still required, as noted by the POD and (quite noticeably) by the incorrect performance. The only difference(bug) is that it didn't throw an error. A crime is still a crime, whether you get caught or not :).

      grep
      One dead unjugged rabbit fish later...

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others cooling their heels in the Monastery: (12)
As of 2014-12-18 20:17 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    Is guessing a good strategy for surviving in the IT business?





    Results (61 votes), past polls