instance method
Enumerable#grep
(untyped arg0) -> ::Array[Elem]
[U] (untyped arg0) { (Elem arg0) -> U } -> ::Array[U]
grep(pattern) → array
grep(pattern) {|element| ... } → array
enum.c
View on GitHub ↗
static VALUE
enum_grep(VALUE obj, VALUE pat)
{
return enum_grep0(obj, pat, Qtrue);
}
Returns an array of objects based elements of self that match the given pattern.
With no block given, returns an array containing each element for which pattern === element is true:
Example
a = ['foo', 'bar', 'car', 'moo'] a.grep(/ar/) # => ["bar", "car"] (1..10).grep(3..8) # => [3, 4, 5, 6, 7, 8] ['a', 'b', 0, 1].grep(Integer) # => [0, 1]
With a block given, calls the block with each matching element and returns an array containing each object returned by the block:
Example
a = ['foo', 'bar', 'car', 'moo'] a.grep(/ar/) {|element| element.upcase } # => ["BAR", "CAR"]
Related: grep_v.