ハッシュの要素を削除する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 #=> {}