Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl Monk, Perl Meditation

Simple regex question

by zuma53 (Beadle)
on Sep 28, 2012 at 18:09 UTC ( #996261=perlquestion: print w/ replies, xml ) Need Help??
zuma53 has asked for the wisdom of the Perl Monks concerning the following question:

I am using \w+ to filter words in a syntax.
All letters: good Letters and numbers: good All numbers: bad
How can I set up a regex to say \w+ except \d+?

Comment on Simple regex question
Download Code
Replies are listed 'Best First'.
Re: Simple regex question
by BrowserUk (Pope) on Sep 28, 2012 at 18:13 UTC

    Almost exactly the way you described it:

    print "$_: ", /^\w+$/ && !/^\d+$/ ? 'Good' : 'Bad' for qw[ abc a1c 1b3 + 123 ];; abc: Good a1c: Good 1b3: Good 123: Bad

    Or if you insist on a single regex:

    print "$_: ", /^(?=.*[a-zA-z])\w+$/ ? 'Good' : 'Bad' for qw[ abc a1c 1 +b3 123 ];; abc: Good a1c: Good 1b3: Good 123: Bad

    Though it is doubtful if it is any more efficient; and is certainly less clear.

    With the rise and rise of 'Social' network sites: 'Computers are making people easier to use everyday'
    Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
    "Science is about questioning the status quo. Questioning authority".
    In the absence of evidence, opinion is indistinguishable from prejudice.

    RIP Neil Armstrong

Re: Simple regex question
by bart (Canon) on Sep 29, 2012 at 09:05 UTC
    (translation: all word characters, but at least a letter)

    You don't say if you think underscores are acceptable...

    (translation: All word characters, but at least a letter, an no underscore)


Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: perlquestion [id://996261]
Approved by BrowserUk
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others lurking in the Monastery: (5)
As of 2016-02-11 00:58 GMT
Find Nodes?
    Voting Booth?

    How many photographs, souvenirs, artworks, trophies or other decorative objects are displayed in your home?

    Results (357 votes), past polls