Phoenix.pm: Regex question
Doug Miles
doug.miles at bpxinternet.com
Mon Feb 5 14:07:58 CST 2001
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