ハッシュの要素抽出について

投稿者: Anonymous

プログラムを実行した際の結果が

{"a"=> "1", "b"=>"2","c"=>"3", "d"=>"4", "e"=>"5", "g"=>"6"}

と複数のハッシュで返ってきた場合に、bとeの結果のみを抽出したい場合はどのようにすればいいのでしょうか。

基礎的な事なのかもしれませんが、rubyを初めて間もないため上手くいきません。
教えて頂けるとありがたいです。

解決

結果が x という変数に代入されているとします。

x = {"a"=> "1", "b"=>"2","c"=>"3", "d"=>"4", "e"=>"5", "g"=>"6"}

x においてキー "b" に紐付いている値を得るには、x["b"] と書きます。

x["b"]  # => "2" が返ってきます

x から "b""e" の部分だけ持った別のハッシュを作るには、Hash#slice が使えます (Ruby 2.5.0 以降)。

x.slice("b", "e")  # => {"b"=>"2", "e"=>"5"} が返ってきます。
回答者: Anonymous

Leave a Reply

Your email address will not be published. Required fields are marked *