Your suspicion about the persistence of $3 is correct. If the pattern doesn't match $3 is not modified. You might consider something like the following:
use strict; use warnings; my @array = ('<Band:3>40M <Call:5>KD4RR <QSL_Rcvd:1>Y <QSL_Sent:1>Y', '<Band:3>40M <Call:5>K7RRR <QSL_Sent:1>Y', '<Band:3>40M <Call:5>W7FAL <QSL_Rcvd:1>Y <QSL_Sent:1>Y'); foreach (@array) { if(/<QSL_Rcvd:\d+>Y/i) { print "Good Record: $_\n"; } else { print "Bad Record: $_\n"; } }
In reply to Re: Problem with regexp or saved match variable.
by ig
in thread Problem with regexp or saved match variable.
by steve077
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |