0

リンクの配列があります:

配列 = [リンク 1、リンク 2、リンク 3、リンク 4]
および :names と :links の 2 つの項目を持つ array_of_hashes

hash = { :names, :links } 例
array_of_hashes = [{ :names => name5, :links => link5}, {:names = name1, :links => link1}, ... ]

元のリンクの配列からのリンクを含む、array_of_hashes のハッシュ (:names:links) の各ペアで何かをしたいと考えています。

したがって、最終段階で、ハッシュのペアを見つける必要があります (上記の私の場合):

{:names => name1, :links => link1}

原因 link1 はリンク付きの配列にリストされています

UPD:改訂されたデータ...誤解して申し訳ありません。ご協力ありがとうございました。

4

1 に答える 1

2

あなたの質問を正しく理解していれば、これはあなたが望むことをするはずです:

# Cleaned up the setup a little
array_of_hashes = [
    {:names => 'name5', :links => 'link5'}, 
    {:names => 'name1', :links => 'link1'}, 
    {:names => 'name9', :links => 'link9'}]

array = ['link5', 'link1']

# This will filter the array
array_of_hashes.select{|x| array.include? x[:links]}

これにより、出力が得られます=> [{:names=>"name1", :links=>"link1"}]

于 2012-08-09T07:21:30.777 に答える