select! {|item| block } -> self | nilRuby 1.9.3 から[permalink][rdoc][edit]select! -> EnumeratorRuby 1.9.3 からfilter! {|item| block } -> self | nilRuby 2.6.0 からfilter! -> EnumeratorRuby 2.6.0 から-
ブロックが真を返した要素を残し、偽を返した要素を自身から削除します。変更があった場合は self を、変更がなかった場合には nil を返します。
例a = %w{ a b c d e f } p a.select! {|v| v =~ /[a-z]/ } # => nil p a # => ["a", "b", "c", "d", "e", "f"]ブロックが与えられなかった場合は、自身と select! から生成した Enumerator オブジェクトを返します。
[SEE_ALSO] Array#keep_if, Array#reject!