chomp(@raw_data, @fileb);
You might need to use quotemeta on your regex:
$testit = quotemeta $_;
Misc advice:
| [reply] [d/l] [select] |
Are you looking for lines exactly the same or just prefixes? If the latter, the "\n" at the end of $testit will get in the way.
In any case, you are overwriting @grepnames each time through the loop, so you will only return the matches from the last line of FILEA.
Try push @grepnames, grep... instead.
And use strict and warnings! | [reply] [d/l] |
Here's the data that I should have added earlier...
Also, the goal is to print the matching 7 digit line. If I found 7770005 I would get the full line from fileB.
(And I change the grep line to a push)
push(@grepnames,grep/$testit/,@fileb);
fileA:
7770005
7770012
fileB:
7770001 ABA BANKING JOURNAL.RECORD # = b12822826. OK
7770002 THE ABNF JOURNAL.RECORD # = b13671558. ok
7770003 ACADEMIC EXCHANGE QUARTERLY : AEQ.RECORD # = b14618114. ok
7770004 THE ACADEMY OF MANAGEMENT REVIEW.RECORD # = b12691070. ok
7770005 THE ACCOUNTING REVIEW.RECORD # = b13123269. ok
7770006 "ACCOUNTING, ORGANIZATIONS AND SOCIETY.RECORD " # = b15123236. ok
7770007 "ACTA CRYSTALLOGRAPHICA. SECTION A: CRYSTAL PHYSICS, DIFFRACTION,
7770008 ADAPTED PHYSICAL ACTIVITY QUARTERLY : APAQ.RECORD # = b13274272. ok
7770009 ADMINISTRATION IN SOCIAL WORK.RECORD # = b12754225. ok
7770010 ADMINISTRATIVE SCIENCE QUARTERLY.RECORD # = b13123415.
7770011 ADOLESCENCE.RECORD # = b13171288. ok
7770012 ADVANCES IN NURSING SCIENCE.RECORD # = b12795896. ok
| [reply] |
| [reply] |