Ruby 2D数组比较

时间:2016-08-26 04:42:57

标签: arrays ruby

我们有一个2D数组如下,其中A,B等是文字[字符串值]:

arr1 = [["A","B"], ["C","D"], ["E","F"], ["G","H"]]

现在我想将此arr1与另一个数组进行比较并删除数组中的匹配元素,另一个数组如下:

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

我想确保如果任何元素与arr1中的元素匹配,则应从arr1中删除相应的元素,输出应如下所示:

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

2 个答案:

答案 0 :(得分:1)

我想你想要这样的东西

Relay.QL

答案 1 :(得分:0)

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

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