in reply to A question in grep

You're mistaken about the content of the variables. What's the output of the following:

{ use Data::Dumper; local $Data::Dumper::Useqq = 1; print Dumper \@temp; print Dumper $_jobcard_basename; print Dumper \@found_files; }

Maybe your input hasn't been chomped? It behaves as you think it should:

use strict; use warnings; my @temp = '/iri/irs-dev2/dairyassoc/job.trigger/RUNNING.sub-D625448-1 +.pdi_chs.xml'; my $_jobcard_basename = 'pdi_chs'; my @found_files = grep (/$_jobcard_basename/,@temp); print("Found ", scalar(@found_files), " file(s):\n"); print("$_\n") for @found_files;
Found 1 file(s): /iri/irs-dev2/dairyassoc/job.trigger/RUNNING.sub-D625448-1.pdi_chs.xml

By the way /$_jobcard_basename/ should be /\Q$_jobcard_basename\E/ if $_jobcard_basename contains a string rather than a regexp pattern. It happens to not matter for the particular value it has at the moment.

Replies are listed 'Best First'.
A reply falls below the community's threshold of quality. You may see it by logging in.