I wasn't going to reply after merlyn took all the fun out of it by pointing at somebody else's wheel. (: Beside, the first thing that popped into my head required that you have a character that you knew wasn't in the string (a sure sign of a bad hack). Then I had a flash...
s#"([^"]*)"# my $i= $1; $i =~ tr/ /"/ #ge;
my @list= grep { tr/"/ / || 1 } split / +/;
Note that this has several disadvantages over a good module:
- You can't escape quotes (neither inside nor out).
- Unmatched quotes are silently processed in a rather strange way.
- tabs do not separate fields.
- Only one type of quoting is supported.
So it is probably still a bad hack.
-
tye
(but my friends call me "Tye")