ハッシュの要素を削除する3つの方法
キーを指定した削除
ハッシュからあるキーの要素を削除するにはHash#delete
を使う。
hash = {a:123, b:234, c:345} hash.delete(:b) p hash #=> {:a=>123, :c=>345}
条件を指定した削除
ハッシュから条件を満たす要素をすべて削除するにはHash#delete_if
かHash#reject
を使う。キーと値が順にブロックに与えられ、ブロックの評価結果が真になった要素が削除される。
hash = {a:123, b:234, c:345} hash.delete_if{|k, v| v % 2 == 1 # 値が奇数の要素を削除 } p hash #=> {:b=>234}
全要素の削除
ハッシュから全要素を削除するにはHash#clear
を使う。
hash = {a:123, b:234, c:345} hash.clear() p hash #=> {}