Ruby 1.9 имеет метод find_index
:
ruby-1.9.1-p378 > [nil, nil, false, 5, 10, 20].find_index { |x| not x.nil? } # detect false values
=> 2
ruby-1.9.1-p378 > [nil, nil, false, 5, 10, 20].find_index { |x| x }
=> 3
find_index
представляется доступным в backports при необходимости в Ruby ранее, чем 1.8.7.