Beefy Boxes and Bandwidth Generously Provided by pair Networks
XP is just a number
 
PerlMonks  

Re^2: Understanding Split and Join

by ferreira (Chaplain)
on Dec 30, 2006 at 19:34 UTC ( #592363=note: print w/replies, xml ) Need Help??


in reply to Re: Understanding Split and Join
in thread Understanding Split and Join

Both exceptions, the special treatment of // and /^/ by split, are documented in split. Both may deserve to be mentioned in the tutorial quickly for the profit of the unaware. The last remark by ysth about the non-equivalence of /^(?#)/ and /^ /x with // for split purposes is a subtle thing. More subtle if you compare to the fact that / /x, / # /x or even / (?#)/x have the same treatment as // when passed to this function. Looks like a case to be fixed either in the docs or in the code of the Perl interpreter itself (if not barred by compatibility issues).

Replies are listed 'Best First'.
Re^3: Understanding Split and Join
by ysth (Canon) on Dec 31, 2006 at 01:44 UTC
    Looks like a case to be fixed either in the docs or in the code of the Perl interpreter itself
    I'm not sure what you mean by "fixed"? split doesn't have the special logic for // that match and substitution do, but even those operations don't have special logic for / /x, / # /x or / (?#)/x.
      I think I have misunderstood that behavior:
      $ perl -e '@a = split //, 'abc'; print "@a"' a b c $ perl -e '@a = split / /x, 'abc'; print "@a"' a b c $ perl -e '@a = split / # /x, 'abc'; print "@a"' a b c $ perl -e '@a = split / (?#) /x, 'abc'; print "@a"' a b c

      The logic of split does not need to be special for this to work. These are real empty patterns and split understand they are meant to split characters as they return empty delimiters. But you were saying that the same is not automatic for patterns equivalente to /^/. Sorry for the confusion I made.

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://592363]
help
Chatterbox?
[ambrus]: Corion: ah, so you want a library that parses HTTP, and you want to do the IO yourself, and don't want a full AnyEvent wrapper.

How do I use this? | Other CB clients
Other Users?
Others pondering the Monastery: (8)
As of 2016-12-07 15:57 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    On a regular basis, I'm most likely to spy upon:













    Results (130 votes). Check out past polls.