2016-08-26 18 views
0

我々は、2次元アレイを有します配列は、他のアレイは、次のとおりです。ルビー2Dアレイ比較

arr2 = [["C"], ["F"]] 

iは要素のいずれかがarr1中の要素と一致した場合、対応する要素は、arr1から削除する必要があり、出力が続くようでなければならないことを確認しますS:

output = [["A","B"], ["G","H"]] 
+0

ような何かをしたいと思います。 '[A、B]'は 'arr2'に一致するものがないので許可されていますか? 'arr2'が' [C、D] 'を要素として持つとどうなりますか? – tadman

+0

@tadmanはい、一致しないために出力に[A、B]が許可され、arr2の形式は同じままです[C、D]のような要素はありません[[C ]、[D]] –

+0

@CarySwoveland、ありがとう!! A、Bは文字列リテラルです。私はポストを更新しました。 –

答えて

0
a2 = arr2.flatten 
    #=> ["C", "F"] 

arr1.reject { |a| (a & a2).any? } 
    #=> [["A", "B"], ["G", "H"]] 
1

私はあなたがより良い問題を定義する必要があり、この

arr1.select{|el| (el & arr2.flatten).empty? } 
+0

オハイオ州申し訳ありませんが、私は通常、レールコンソールで作業しています。レール用です –