Re: [問題] 兩檔案資料合併
※ 引述《giacch (小a)》之銘言:
: #!/usr/bin/perl
: open(READ, 'b.txt') or die "b.txt: $!\n";
: @TMP=<READ>;
: close(READ);
: foreach(@TMP) {
: chomp;
: $DATA{join(':',$f1,$f2,$f3)}=$_
: if( ($f1,$f2,$f3,undef,undef)=split(/ /) );
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
: }
: open(READ, 'a.txt') or die "a.txt: $!\n";
: @TMP=<READ>;
: close(READ);
: foreach(@TMP) {
: chomp;
: printf("%s %s\n", $_, $DATA{join(':',$f1,$f3,$f4)})
: if( ($f1,undef,$f3,$f4,undef)=split(/ /) );
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
: }
: 以上可以跑範例...
非常感謝!!
請問一下上面兩個判斷式是什麼意思
他們之間的關係是怎麼比較的
b.txt 不是只有四欄嗎~還是那是為了跟 a.txt 的欄位做對應
如果後面還有很多欄位有其它寫法嗎?還是只能一直加 undef
如果我要判斷第一欄的大小關係該怎麼做呢
就是在 b.txt 中可能不只找到一筆
而我要 b($1) >= a($1), b($2)==a($3), b($3)==a($4) 的第一筆就好
我是先用 shell script 先將 b.txt 內容上下顛倒就可以達到這樣的效果
※ 編輯: corny 來自: 140.112.50.156 (03/22 10:56)
討論串 (同標題文章)