[問題] 陣列同一時間的 delete 之作法 !?

看板Perl作者 (批踢踢.問.XD)時間16年前 (2008/05/14 14:37), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/1
@TRY=qw(b c a d e a ); @TRY2=qw(c b d e g h i j); #假設我有兩個Array,想要做交互比對 #TRY => a , a #TRY2 => g , h , i , j @backup=@TRY; @backup2=@TRY2; $check_memory =0; for(0...$#TRY) { $tmp1=$_; for(0...$#TRY2) { $tmp2=$_; if($TRY[$tmp1] eq $TRY2[$tmp2]) #做內容的比對 { $check_memory="\"".$check_memory."\"".",".$tmp1; #比對到的 index 存放起來 , 給下面 delete 使用 } } } for(0...$#TRY2) { $tmp1=$_; for(0...$#TRY) { $tmp2=$_; if($TRY2[$tmp1] eq $TRY[$tmp2]) { $check_memory2="\"".$check_memory."\"".",".$tmp1; } } } delete @backup[$check_memory]; delete @backup2[$check_memory2]; #可是這樣好像不太行 ... 因為我想要同一時間對該Array做處理 這樣我就可以比對到 TRY 跟 TRY2 這兩個 array 內容之不同處 請問我的方式跟思維有那部份是錯誤的嗎?麻煩指引,謝謝 :~) -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.228.148.194
文章代碼(AID): #18AeYyln (Perl)