in reply to Re: Re: Re: split/map weirdness: empty strings vs undef
in thread split/map weirdness: empty strings vs undef
That second line can get a bit simpler if you define an empty string to have zero fields instead of having a single null field.my @fields = $string =~ m/([^|]*)\|?/g; $string && $string !~ /\|$/ && pop @fields;
Congrats, your solution is better than mine even though it looks unnecessarily complicated.
I think the best suggestion so far is to tell split how many fields you want:
Though I'd probably break it up into two lines:my @fields = split(/\|/,$string,$string =~ tr/|/|/ + 1);
my $fieldcount = $string =~ tr/|/|/ + 1; my @fields = split(/\|/, $string, $fieldcount);
-Blake
|
|---|