Phoenix.pm: Regex question
Anthony Nemmer
edelweiss at qwest.net
Mon Feb 5 14:30:42 CST 2001
Jesus, Doug. =)
At 01:07 PM 2/5/01 -0700, you wrote:
>tcpeter at mindspring.com wrote:
>>
>> On Fri, 2 Feb 2001, Doug Miles wrote:
>>
>> > This is probably something obvious,
>>
>> I don't think so...
>>
>> > but I don't have my regex book with
>> > me, and can't seem to figure it out. I'm trying to parse space
>> > delimited information, somewhat like the UNIX command line. Whitespace
>> > delimits parameters, but parameters can containg whitespace if
>> > surrounded by quotes. Here's the code:
>> >
>> > #!/usr/bin/perl
>> >
>> > my $string = qq(DailyNAV "Class C" nav);
>> >
>> > my @tokens = $string =~ /(\S+)/g;
>> > my @tokens = $string =~ /"([^"]+)"/g;
>>
>> > my @tokens = $string =~ /"([^"]+)"|(\S+)/g;
>> > print join('|', @tokens) . "\n";
>> >
>> > here is the output:
>> >
>> > DailyNAV|"Class|C"|nav
>> > Class C
>> > |DailyNAV|Class C|||nav
>>
>> Doug,
>> I've been sorta lurking here a long time reading, but this is the first
time I've contributed. This seems to work. It's really the same as one of
yours, with just a bit of tweaking.
>
>I'll be nice since you're a first time poster. :)
>
>>
>> #!/usr/bin/perl
>>
>> my $string = qq(DailyNAV "Class C" nav);
>> print join('|', split(/\s?"([^"]+)"\s?/, $string))."\n";
>
>--
>- Doug
>
>Encrypted with ROT-26 - all attempts to decrypt are illegal under the
>DMCA!
>
>
More information about the Phoenix-pm
mailing list