in reply to dumb regex question
I'd change the regex to exclude quotes, rather than match everything: m,"?(/[^"]*)"?,
Test script (including some lines where I tried to break the match):
#!/usr/bin/perl use strict; use warnings; while (my $line = <DATA>) { chomp $line; if ($line =~ m,"?(/[^"]*)"?,) { print "Line matched: $line ($1)\n"; } else { print "Line didn't match: $line\n"; } } __DATA__ "/moreIters 10" "/bootMe any text here" /fewIter /some stuff here "/albatross" foo bar baz monkeys leprechauns /not monkeys /gnomes "not leprechauns though"
Output:
Line matched: "/moreIters 10" (/moreIters 10) Line matched: "/bootMe any text here" (/bootMe any text here) Line matched: /fewIter (/fewIter) Line matched: /some stuff here (/some stuff here) Line matched: "/albatross" foo bar baz (/albatross) Line didn't match: monkeys Line matched: leprechauns /not monkeys (/not monkeys) Line matched: /gnomes "not leprechauns though" (/gnomes )
|
---|
Replies are listed 'Best First'. | |
---|---|
Re^2: dumb regex question
by linuxfan (Beadle) on Apr 07, 2009 at 00:38 UTC | |
by ikegami (Patriarch) on Apr 07, 2009 at 01:15 UTC | |
by Nkuvu (Priest) on Apr 07, 2009 at 01:25 UTC | |
by Nkuvu (Priest) on Apr 07, 2009 at 01:01 UTC | |
Re^2: dumb regex question
by linuxfan (Beadle) on Apr 07, 2009 at 00:24 UTC |
In Section
Seekers of Perl Wisdom