2011-02-02 21 views

Trả lời

14
a = [['a','one'],['b','two'],['c','three'],['d','four']] 
b = ['two','three'] 

a.delete_if { |x| b.include?(x.last) } 

p a 
# => [["a", "one"], ["d", "four"]] 
2
a=[['a','one'],['b','two'],['c','three'],['d','four']] 
b=['two','three']  
result=a.reject { |e| b.include?(e.first) or b.include?(e.last) } 
# result => [["a", "one"], ["d", "four"]] 
5

rassoc để giải thoát!

b.each {|el| a.delete(a.rassoc(el)) } 
+1

Wow - Ruby có phương pháp cho mọi thứ - funky! –

Các vấn đề liên quan