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

Re: does split(".") work?

by Joost (Canon)
on Nov 15, 2009 at 23:23 UTC ( #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 (Monsignor) 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
Node Status?
node history
Node Type: note [id://807329]
help
Chatterbox?
[atcroft]: .oO(Plus it was a little slow for a few minutes, at least... ;) )

How do I use this? | Other CB clients
Other Users?
Others rifling through the Monastery: (7)
As of 2018-02-24 20:47 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    When it is dark outside I am happiest to see ...














    Results (311 votes). Check out past polls.

    Notices?