Beefy Boxes and Bandwidth Generously Provided by pair Networks
P is for Practical
 
PerlMonks  

Re: does split(".") work?

by Joost (Canon)
on Nov 15, 2009 at 23:23 UTC ( [id://807329]=note: print w/replies, xml ) Need Help??


in reply to does split(".") work?

split does not split on a string but on a regular expression. Dot "." is the "match-all" character in a regex so your split won't return anything.

You want my @values = split /\./, $ip instead.

Replies are listed 'Best First'.
Re^2: does split(".") work?
by jwkrahn (Abbot) on Nov 16, 2009 at 00:23 UTC
    Dot "." is the "match-all" character in a regex so your split won't return anything.

    Actually split returns a lot of things, it's just that the way list assignment works there is nothing left to put in the array.    If you make a slight change you can see everything that split returns:

    $ perl -le'my $ip="158.21.17.45"; my @values = split(".", $ip, -1); pr +int $ip,"\t\t",$#values,"\n";' 158.21.17.45 12
      Not sure what you mean about list assignment; the difference is that a third parameter of -1 makes split keep trailing empty strings where by default it discards them. In your example, split returns 13 empty strings (one from before the first character of $ip, one for each position between characters, and one from after the last character.)
      --
      A math joke: r = | |csc(θ)|+|sec(θ)|-||csc(θ)|-|sec(θ)|| |
      Online Fortune Cookie Search
      Office Space merchandise

Log In?
Username:
Password:

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

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

    No recent polls found