Beefy Boxes and Bandwidth Generously Provided by pair Networks
Your skill will accomplish
what the force of many cannot

Re: regular expressions with !

by explorer (Chaplain)
on Sep 14, 2006 at 14:32 UTC ( #572931=note: print w/replies, xml ) Need Help??

in reply to regular expressions with !

If you want "no match", use it:

if ( $test_string !~ /$regex/) {
unless ( $test_string =~ /$regex/) {

Replies are listed 'Best First'.
Re^2: regular expressions with !
by ysth (Canon) on Sep 14, 2006 at 14:49 UTC
    Or even unless ( ! ( $test_string !~ /$regex/ ) ) {. Once you've taken the first step down the unless road, madness ensues. Don't use unless; it makes it too easy to misunderstand code.

      Don't use unless; it makes it too easy to misunderstand code.

      I dislike overgeneralizations like this, personally. The following code is perfectly clear:

      do_something() unless $big_honkin_error;

      I'm not saying that you can't avoid unless and make the code still clear, of course:

      do_something() if not $big_honkin_error:

      but the unless version is just fine.

      I wouldn't use unless at the beginning of a condition, however. But that's related to putting the important parts at the beginning of the statement as per perlstyle recommendations. Specifically:

      Just because you *CAN* do something a particular way doesn't mean that you *SHOULD* do it that way. Perl is designed to give you several ways to do anything, so consider picking the most readable one. For instance

      PrivoxyWindowOpen(FOO,$foo) || die "Can't open $foo: $!";

      is better than

      die "Can't open $foo: $!" unless open(FOO,$foo);

      because the second way hides the main point of the statement in a modifier.

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://572931]
[ozboomer]: There's a text file with lots of sections in it, like an '.ini/.conf' file. Each section can be 'used' or 'unused' by its application (more...)
[ozboomer]: Some folk want to use the text file as 'storage', keeping ALL items in it (a database); others call it an 'active document' that should only contain 'in-use' sections. Is there a 'good practice' for this sort of thing?

How do I use this? | Other CB clients
Other Users?
Others musing on the Monastery: (3)
As of 2018-05-21 00:29 GMT
Find Nodes?
    Voting Booth?