Ruby 1.9.2 リファレンスマニュアル > ライブラリ一覧 > 組み込みライブラリ > Hashクラス > delete_if
delete_if -> Enumerator
[permalink][rdoc]reject! -> Enumerator
delete_if {|key, value| ... } -> self
reject! {|key, value| ... } -> self|nil
キーと値を引数としてブロックを評価した結果が真であ るような要素を self から削除します。
delete_if は常に self を返します。 reject! は、要素を削除しなかった場合には nil を返し、 そうでなければ self を返します。
ブロックを省略した場合は Enumerator を返します。
h = { 2 => "8" ,4 => "6" ,6 => "4" ,8 => "2" } p h.reject!{|key, value| key.to_i < value.to_i } #=> { 6 => "4", 8 => "2" } p h #=> { 6 => "4", 8 => "2" } p h.delete_if{|key, value| key.to_i < value.to_i } #=> { 6 => "4", 8 => "2" } p h.reject!{|key, value| key.to_i < value.to_i } #=> nil
[SEE_ALSO] Hash#reject,Hash#delete
[SEE_ALSO] Hash#keep_if,Hash#select!