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

Re^2: Split Decision

by Aragorn (Curate)
on Jan 06, 2005 at 14:37 UTC ( #419930=note: print w/replies, xml ) Need Help??


in reply to Re: Split Decision
in thread Split Decision

'\n' will also work:
#!/usr/bin/perl my $string = "Bla\nBlo\nBloe"; print join("|", split('\n', $string));
This works, and the reason becomes clear when you run it through B::Deparse:
$ perl -MO=Deparse split.pl my $string = "Bla\nBlo\nBloe"; print join('|', split(/\n/, $string, 0)); split.pl syntax OK

Arjen

Replies are listed 'Best First'.
Re^3: Split Decision
by BrowserUk (Pope) on Jan 06, 2005 at 14:47 UTC

    You live and learn :) What a stupid special exception!


    Examine what is said, not who speaks.
    Silence betokens consent.
    Love the truth but pardon error.

      It's not really a special exception, the first argument to split() is a regular expression, irrespective of what the delimiters are, the only special case there being the difference between / / and ' '.

      /J\

      Some playing around shows it's not an exception:
      #!/usr/bin/perl my $string = "Bla\nBlo\nBloe"; print join("|", split('something', $string));
      This code is parsed as
      ~$ perl -MO=Deparse split.pl my $string = "Bla\nBlo\nBloe"; print join('|', split(/something/, $string, 0)); split.pl syntax OK
      The same goes for double quotes. split() expects a regex, but apparently will settle for things in quotes and interpret the string as a regex. Indeed, you live and learn :-)

      Arjen

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others rifling through the Monastery: (5)
As of 2016-10-01 17:57 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    How many different varieties (color, size, etc) of socks do you have in your sock drawer?






    Results (3 votes). Check out past polls.