On Tuesday, April 30, 2002, at 05:51 , David Ulevitch wrote:
[..]
>   I was just checking to see if the first char was a number or a digit
>   but there are some cases where a hostname can start with a number.
>   (like 3.14159.com for example)
>
>   So the question is, if I have a variable like $nameserver
>   how can I test to see if it's a hostname or an IP?

how about:

        the premise is that 'hostnames' in your example are what
        we would call fully qualified 'network names' - I of course
        do not deal with resolving the 'bob' - but that would be
        where you would want to do the

                perldoc -f gethostbyname

to check if these are valid hostnames ...

### #!/usr/bin/perl -w
### use strict;
###
### # ipaddr_or_hostname.pl- is for
###
### my @whatAreThese = qw/ 3.14159.com 192.168.2.1 wetware.com bob/;
### my $type;
###
### foreach my $nameserver (@whatAreThese) {
###     if ( $nameserver =~ m/\.[a-zA-Z]+$/ ) {
###             $type = "possible Hostname";
###     }elsif ($nameserver =~  m/^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$/){
###             $type = "possible IP_ADDR";
###     }else{
###             $type = "UNK"
###     }
###     
###     print "It appears that $nameserver is a $type\n";
### }
###
### =cut
### which gens:
### It appears that 3.14159.com is a possible Hostname
### It appears that 192.168.2.1 is a possible IP_ADDR
### It appears that wetware.com is a possible Hostname
### It appears that bob is a UNK
### =cut
###
### # end of the world as I knew it [EMAIL PROTECTED] all rights reserved
### # ginned On 30-Apr-02
### #
###

ciao
drieux

---


-- 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to