2012-03-16 12 views
0

私はこのようになりますネストされた配列を持っている:Rubyはネストされた配列

@nested = [ 
    ['1','2','3'], 
    ['1','5','9'], 
    ['1','4','7'], 
    ['3','5','7'], 
    ['3','6','9'], 
    ['7','8','9'], 
    ['4','5','6'], 
    ['2','5','8'] 
] 

私は任意の整数(つまり1..9)のユーザー入力を取得し、その入力を持つすべての配列を見つけるしたいと思います整数。

それを行う方法をわかりません。

答えて

8

使用select:?

num_to_search = "9" 
@nested.select do |array| 
    array.include? num_to_search 
end 
#=> [["1", "5", "9"], ["3", "6", "9"], ["7", "8", "9"]] 
+0

私はarray.include(num_to_searchが)あなたの出力を得るためにarray.inspect end'を置く場合は、 '入れていました。オリジナルはちょうど私に「真偽」のシーケンスを与えました。私はRuby 1.8.7を使用しています。それが原因ですか? .MAP上.select(条件)(各項目)のためのための – ScottJShea

+0

+1 –

+0

それは何も印刷されないべき@ScottJShea、それが配列の配列を返すべきです。私は戻り値がRuby 1.8.7と1.9.3の両方で私の答えに表示されていることを確認しました。 –

関連する問題