Skip to content

End of Life Ruby 3.0 has reached end of life and gets no more fixes. Switch to Ruby 4.0 →

instance method

Enumerable#find_index

enum.find_index(value) → int or nil
enum.find_index { |obj| block } → int or nil
enum.find_index → an_enumerator

Compares each entry in enum with value or passes to block. Returns the index for the first for which the evaluated value is non-false. If no object matches, returns nil

If neither block nor argument is given, an enumerator is returned instead.

Example
(1..10).find_index  { |i| i % 5 == 0 && i % 7 == 0 }  #=> nil
(1..100).find_index { |i| i % 5 == 0 && i % 7 == 0 }  #=> 34
(1..100).find_index(50)                               #=> 49
See also #find_all #first #find #flat_map also in 4.1 · 4.0 · 3.4 · 3.3 · 3.2 · 3.1