[ILUG] Perl Regex Help Needed
kae at verens.com
kae at verens.com
Sun Sep 11 18:45:52 IST 2005
> while ( $trivia =~ m/^[QA] (\d)+\) (.*)/gms) {
> print "Matched ($1) and ($2)\n";
> }
>
> But that doesn't work either. It greedily grabs *everything*.
The problem is that you're not telling it where to stop matching.
Maybe this?
while ( $trivia =~ m/^Q (.*?)^A (.*?)^Q/gms) {
print "Matched ($1) and ($2)\n";
}
that might work, but it will fall down on the last one. I don't know what
the character for "EOF" is. If you do, then substitute the last ^Q for
(^Q|EOF) with the EOF obviously fixed, and that /might/ do it (been a
while since I wrote Perl).
Kae
More information about the ILUG
mailing list