[問題] 一次讀兩個檔以上
小弟又有個問題想請教各位朋友
A檔案內容是
10013240 臺灣省屏東縣滿州鄉
10013280 臺灣省屏東縣瑪家鄉
10014070 臺灣省臺東縣東河鄉
10014140 臺灣省臺東縣金峰鄉
10015060 臺灣省花蓮縣壽豐鄉
..
B檔案內容是
10014070
10015060
10015060
10013240
...
我想一次讀兩個檔,當B的內容比對到與A前面的數字相同時,
將B檔案的內容取代成A檔案後面的字串
所以B檔案會變成如下
臺灣省臺東縣東河鄉
臺灣省花蓮縣壽豐鄉
臺灣省花蓮縣壽豐鄉
臺灣省屏東縣滿州鄉
....
我的寫法如下:
---
my $ina = "A.txt";
my $inb = "B.txt";
open (FILEa , "<". $ina);
open (FILEb , "<". $inb);
while(<FILEb>){
if ($_ =~ /(\d+)/){
$n1=$1;
while(<FILEa>){
chomp;
if ($_ =~ /(\d+)\s+(\S+)/){
$m1=$1;
$m2=$2;
if ($n1 == $m1){
print "$m2\n";
}
}
}
}
}
---
不過看起來有問題,幾乎都沒有比對到,
請問我的寫法哪裡有問題嗎?
感謝大家~
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 220.130.131.58
※ 文章網址: http://www.ptt.cc/bbs/Perl/M.1397750862.A.639.html
※ 編輯: yalent (220.130.131.58), 04/18/2014 00:08:47
→
04/18 00:25, , 1F
04/18 00:25, 1F
推
04/18 00:25, , 2F
04/18 00:25, 2F
→
04/18 00:27, , 3F
04/18 00:27, 3F
※ 編輯: yalent (220.130.131.58), 04/18/2014 12:07:57
※ 編輯: yalent (220.130.131.58), 04/18/2014 12:08:06
→
04/18 12:08, , 4F
04/18 12:08, 4F
推
04/18 13:09, , 5F
04/18 13:09, 5F
推
04/18 23:07, , 6F
04/18 23:07, 6F
→
06/01 09:55, , 7F
06/01 09:55, 7F
討論串 (同標題文章)
完整討論串 (本文為第 1 之 2 篇):
3
7
Perl 近期熱門文章
PTT數位生活區 即時熱門文章