Если вы хотите первый элемент, для которого ваш блок является правдивым, используйте detect
:
[1, 2, 3, 4, 5].detect {|n| n % 3 == 0}
# => 3
Если вы хотите, чтобы индекс первого элемента соответствовал, используйте find_index
:
[1, 2, 3, 4, 5].find_index {|n| n % 3 == 0}
# => 2
Если вы хотите, чтобы все совпадали элементы, используйте select
(это не приводит к короткому замыканию):
[1, 2, 3, 4, 5, 6].select {|n| n % 3 == 0}
# => [3, 6]