Beefy Boxes and Bandwidth Generously Provided by pair Networks
go ahead... be a heretic
 
PerlMonks  

Re^2: Match all Non-0 and Letters

by AnomalousMonk (Archbishop)
on Jun 24, 2017 at 17:34 UTC ( [id://1193456]=note: print w/replies, xml ) Need Help??


in reply to Re: Match all Non-0 and Letters
in thread Match all Non-0 and Letters

... this was just to explain the error in your code ... /0{7}\d/ is much simpler and better.

I understand that the intended purpose of the code example is very limited, but I think it's very important to point out that the
    $D1 !~ /0+/
test ("if there is not at least one '0' in the first 7 digits") is also a fundamental error.


Give a man a fish:  <%-{-{-{-<

Replies are listed 'Best First'.
Re^3: Match all Non-0 and Letters
by Laurent_R (Canon) on Jun 24, 2017 at 17:58 UTC
    Yes, AnomalousMonk, you're right. I wanted to point out the logical error ("and" instead of "or" in the conditional), but you're absolutely right that the regexes should also be fixed.

    Perhaps something like:

    print "Word $Disc is corrupt!\n" if $D1 !~ /^0{7}$/ or $D2 !~ /[0-9]/;
    And the first part of the conditional could actually be replaced by a string inequality operator rather than a regex:
    print "Word $Disc is corrupt!\n" if ($D1 ne '0' x 7) or $D2 !~ /[0-9]/ +;
    Update: s/instead or "or"/instead of "or"/;. Thanks to Discipulus for pointing out the typo.
      ... the first part of the conditional could actually be replaced by a string inequality ...

      That's what I was thinking, but my idea was  $D1 ne '0000000' :)


      Give a man a fish:  <%-{-{-{-<

Log In?
Username:
Password:

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

How do I use this?Last hourOther CB clients
Other Users?
Others pondering the Monastery: (7)
As of 2024-04-25 08:19 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found