web-dev-qa-db-ja.com

rails-複数の配列間の交差点を見つける

複数の配列間の交差値を見つけようとしています。

例えば

code1 = [1,2,3]
code2 = [2,3,4]
code3 = [0,2,6]

結果は2になります

PHPではarray_intersectでこれを行うことができます

簡単に追加の配列を追加できるようにしたかったので、複数のループを使用したくありません

何か案は ?

ありがとう、アレックス

67
Alex

Array メソッドを使用して、交差点を設定します。

例えば:

> [1,2,3] & [2,3,4] & [0,2,6]
=> [2]
109
Anurag

未知の長さの配列の配列でこれを行う簡単な方法が必要な場合は、注入を使用できます。

> arrays = [code1,code2,code3]
> arrays.inject(:&)                   # Ruby 1.9 shorthand
=> [2]
> arrays.inject{|codes,x| codes & x } # Full syntax works with 1.8 and 1.9
=> [2]
45
Fotios