Alan Campbell wrote:
> hello folks,

Hello,

> Thanks for all the advice. As several of you suggested, the winning ticket
> turned out to be flipping to line-by-line regex from an array-slurped
> input i.e.
> 
> # look for potentially problematic dissassembly of the following form: -
> # 8004b980   003c34f4           STW.D2T1      A0,*B15--[1]
> my @dis_lines = <>;
> foreach my $ln (@dis_lines) {
>    if ($ln =~ m/.*ST[A-Z].*B15--.*[13579]]/) {
>       print $ln;
>    }
> }
> 
> I think I got carried away by last problem I had which *required* a multi-
> line match & scalar slurp without line-by-line was faster.

Because you now have one line in $ln you can remove '.*' at the beginning of
the pattern and you should probably use non-greedy quantifiers for the others:

   if ( $ln =~ /ST[A-Z].*?B15--.*?[13579]]/ ) {


John
-- 
use Perl;
program
fulfillment

-- 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
<http://learn.perl.org/> <http://learn.perl.org/first-response>


Reply via email to