Ruby 2.6.0 リファレンスマニュアル > ライブラリ一覧 > 組み込みライブラリ > Arrayクラス > filter!

instance method Array#filter!

select! {|item| block } -> self | nil[permalink][rdoc]
select! -> Enumerator
filter! {|item| block } -> self | nil
filter! -> Enumerator

ブロックが false を返した要素を自身から削除します。 変更があった場合は self を、 変更がなかった場合には nil を返します。

a = %w{ a b c d e f }
a.select! {|v| v =~ /[a-z]/ }   # => nil
a # => ["a", "b", "c", "d", "e", "f"]

ブロックが与えられなかった場合は、自身と select! から生成した Enumerator オブジェクトを返します。

[SEE_ALSO] Array#keep_if