Rubyリファレンス: Home

delete_if (Array)

Edit   History

標準クラス・モジュール > Array > delete_if

array.delete_if {|item| block }

delete_ifメソッドは、要素の数だけ繰り返しブロックを実行し、ブロックの戻り値が真になった要素を削除します。レシーバ自身を変更するメソッドです。ブロック引数itemには各要素が入ります。

reject!メソッドとは異なり、戻り値は常にレシーバ自身です。

fruits = ["apple", "orange", "banana", "kiwi", "peach"]
fruits.delete_if {|item| item =~ /^[aiueo]/ }
p fruits
["banana", "kiwi", "peach"]

関連項目