Bug #11808
Updated by nobu (Nobuyoshi Nakada) over 5 years ago
Regex special global variables are available within the block for `Array#grep`, Array#grep, but are nil within the block for `Enumerable#grep`. Enumerable#grep. Here is an example that explains it better: ~~~ruby ~~~ class Test include Enumerable def each return enum_for(:each) unless block_given? yield "Hello" yield "World" end end enum = Test.new array = ["Hello", "World"] enum.grep(/^(.)/) {$1} # => [nil, nil] array.grep(/^(.)/) {$1} # => ["H", "W"] ~~~ Tested on 2.0.0, 2.1.5, & 2.2.2