in reply to Everything BUT

With a ! before the match.

--
Steve Marvell

Replies are listed 'Best First'.
Re: Re: Everything BUT
by Joost (Canon) on Jun 12, 2002 at 15:43 UTC
    I also like curlies around the grep block - like this:
    @allfiles = grep { ! /^1021/ } readdir THEDIR;
    </code>
    -- Joost downtime n. The period during which a system is error-free and immune from user input.

      I also like curlies around the grep block

      Without curlies, it is not a block. The non-block version of grep is much faster.

      2;0 juerd@ouranos:~$ perl -MBenchmark=cmpthese -e'cmpthese(-1, { block + => sub { grep { /[13579]/ } 0..9 }, nonblock => sub { grep /[13579]/ +, 0..9 } })'
      Benchmark: running block, nonblock, each for at least 1 CPU seconds...
           block:  2 wallclock secs ( 1.06 usr +  0.00 sys =  1.06 CPU) @ 44436.79/s (n=47103)
        nonblock:  0 wallclock secs ( 1.01 usr +  0.00 sys =  1.01 CPU) @ 141940.59/s (n=143360)
                   Rate    block nonblock
      block     44437/s       --     -69%
      nonblock 141941/s     219%       --
      

      - Yes, I reinvent wheels.
      - Spam: Visit eurotraQ.
      

      Me too, I never leave home without them.

      In fact, I hardly ever us the comma form of grep or map.

      --
      Steve Marvell