in reply to Re: Matching condition for two files
in thread Matching condition for two files

Your regex will also match filenames with more than one digit different.

Also it will match filenames which will begin with anything else and which have different extensions. To avoid that you will need to anchor the regex:

/^M8BBABONP\wM10\d\.dat$/

CountZero

A program should be light and agile, its subroutines connected like a string of pearls. The spirit and intent of the program should be retained throughout. There should be neither too little or too much, neither needless loops nor useless variables, neither lack of structure nor overwhelming rigidity." - The Tao of Programming, 4.1 - Geoffrey James

Replies are listed 'Best First'.
Re^3: Matching condition for two files
by Khen1950fx (Canon) on May 02, 2011 at 16:28 UTC
    CountZero++. I had tried it and got stuck in some muck, but I used your regex and a foreach:
    #!/usr/bin/perl use strict; use warnings; use Data::Dumper::Concise; my(@array) = ('M8BBABONPGM100.dat', 'M8BBABONPYM101.dat'); foreach my $array(@array) { if ($array =~ /^M8BBABONP\wM10\d\.dat$/){ print "We have a match: \n"; print Dumper($array); } }