in reply to !~ /\w/ challenge, anyone?

perl -lpe'}{$_=$.' file
I mean really, just because underscore is matched by \w is no reason to exclude it from this challenge. (And yes, i too missed that requirement.)

Oh drat ... i just realized that mine is very similar to thelenm's and his just beat mine up ...

Oh double drat ... i just realized that this isn't mine at all ... i sub-consciously lifted it from Abigail-II over at Re: How To Count Lines In File?. My apologies, Abigail-II (and i finally figured out why you used the globs :)).

jeffa

L-LL-L--L-LL-L--L-LL-L--
-R--R-RR-R--R-RR-R--R-RR
B--B--B--B--B--B--B--B--
H---H---H---H---H---H---
(the triplet paradiddle with high-hat)

Replies are listed 'Best First'.
Re: (jeffa) Re: !~ /\w/ challenge, anyone?
by thelenm (Vicar) on Feb 05, 2003 at 18:53 UTC
    Your solution has a '_' in it, so unfortunately it matches /\w/ ...

    -- Mike

    --
    just,my${.02}

Re: No ... but how about a !~ /[a-z0-9]/i challenge?
by John M. Dlugosz (Monsignor) on Feb 05, 2003 at 20:39 UTC
    Care to share the insight as to why he used the globs?
      Sure, but this is just a hunch ...

      The problem with one-liners (;)) is that Unix prefers the -e argument (the code) to be quoted with double quotes, while Win32 requires that is it be quoted with single quotes. Unix allows single quotes, but most (if not all) shells will try to interpolate the dollar signs. The following code should work on Win32, but not in UNIX:

      # bash and sh [jeffa@trinity perl]$ perl -ple "}{$_=$." foo.pl Can't modify constant item in scalar assignment ... # csh and tcsh [jeffa@trinity ~/perl]$ perl -ple "}{$_=$." foo.pl Illegal variable name. # ksh $ perl -ple "}{$_=$." foo.pl Bareword found where operator expected ...
      In all of these cases, single quotes instead of double quotes would alleviate these errors. But .. it's not necessarily the double quotes themselves that cause the trouble, it's the dollar signs. So ... use globs.
      perl -ple "}{*_=*." foo.pl
      Now, Abigail-II never confirmed nor denied this, so i'll treat that as a successfully executed Unix command. ;)

      Update:
      Of course (as jmcnamara pointed out to me via /msg), Abigail-II appears to never use Windows ... kinda throws a monkey wrench in the theory, but ... globs still get around that quoting problem.

      jeffa

      L-LL-L--L-LL-L--L-LL-L--
      -R--R-RR-R--R-RR-R--R-RR
      B--B--B--B--B--B--B--B--
      H---H---H---H---H---H---
      (the triplet paradiddle with high-hat)