2017-02-10 2 views
-2

I以下ハッシュ有する:レールは、複数のハッシュを繰り返し

{ 
    "2017-01-01" => { 
    "2"=> [ 
     {:a=>"2017-01-01", :b=>"2", :c=>"1"}, 
     {:a=>"2017-01-01", :b=>"2", :c=>"2"} 
    ] 
    }, 
    "2017-01-02" => { 
    "5"=> [ 
     {:a=>"2017-01-02", :b=>"5", :c=>"1"} 
    ] 
    } 
} 

私は繰り返しになる別々

1)最初の反復

{ 
{:a=>"2017-01-01", :b=>"2", :c=>"1"}, 
{:a=>"2017-01-01", :b=>"2", :c=>"2"} 
} 

2)第2の反復を

{ 
{:a=>"2017-01-02", :b=>"5", :c=>"1"} 
} 

どのようにできるのか?前もって感謝します。

+0

、そしてあなたがこれまでに試してみましたが、これを解決するために、次のようにループする必要がありますか? Stackoverflowはコード作成サービスではありません。 – Iceman

+0

複数ハッシュの反復操作を理解するのに問題があります – sirion1987

答えて

2

ご質問の回答はHow to iterate over a hash in Ruby? です。

hash.each do |key, array| 
    puts array 
end 

「配列」は再びハッシュがある場合、あなたはそれ[OK]を

hash.each do |key, hash2| 
    hash2.each do |key2,array| 
    puts array 
    end 
end 
+0

"a:"キーだけを印刷したいのですか? – sirion1987

+0

@DomenicoGarofoli配列をループする必要があるかもしれませんarray.each {| elem | puts elem [0]} – jithya

関連する問題