0

プロジェクトがそれぞれさまざまなコードでタグ付けされているハッシュがあります。

@projects =
{
    "Project A" => ["2","4","11"],
    "Project B" => ["2","3","4"],
    "Project C" => ["2","5","11"]
}

"4"特定のタグ、つまり inputと we get に関連付けられたプロジェクトを検索するにはどうすればよいですか["Project A","Project B"]
標準の値検索方法を試しましたが、配列内の要素ではなく、配列全体が入力された場合にのみ機能します。

これはそれほど重要ではありませんが、複数のタグ、つまり input["2","11"]で検索することは可能でしょう["Project A","Project C"]か?

4

2 に答える 2

3

試す:

def search array, elem
  array.select{|key, value| value.include? elem}
end

と:

def search_many array, *elems
  elems.map{|elem| search array, elem}.flatten.uniq
end
于 2012-06-28T01:04:34.600 に答える
0

パート I の解決策:

code_2s = @projects.collect{|k,v| (v.include? "2") ? k : nil }.compact
于 2012-06-28T01:04:33.863 に答える