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

Re: Net:Addr

by Zed_Lopez (Chaplain)
on Dec 07, 2004 at 02:38 UTC ( #412812=note: print w/replies, xml ) Need Help??


in reply to Net:Addr

I went to report the doc error, and found a major, easy-to-fix bug that's been ignored for two years. ipv4_chkip will pass any string of four or more integers between 0 and 255 connected by .'s. The deal-breaker here is the 'four or more' instead of 'exactly four.'

So I can't recommend it. Perhaps try Regexp::Common instead.

use Net::IPv4Addr qw(:all); use Regexp::Common qw(net); my @var = qw(23.23.109.103 12324.123.12.1 1.2.3.4.5.6); print "Net::IFv4Addr:\n"; ipv4_chkip($_) and print "$_ is good\n" for @var; print "Regexp::Common:\n"; /^$RE{net}{IPv4}$/ and print "$_ is good\n" for @var;

produces

Net::IFv4Addr: 23.23.109.103 is good 1.2.3.4.5.6 is good Regexp::Common: 23.23.109.103 is good

Note that you do need to anchor the start and end of the regexp with ^ and $, 'cause just /$RE{net}{IPv4}/ would match 312.45.32.4.

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others meditating upon the Monastery: (10)
As of 2021-01-26 12:27 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    Notices?