Search code examples
rubyenumerate

Ruby .detect alternative


I am looking for an alternative that would solve the following issue:

with .detect if I am looking for stringvalue and the value given is 132stringvalue, it will still return true. I need an alternative that will be matching everything from the beginning of the string. Any suggestions aside from regex?


Solution

  • [1] pry(main)> %w[foo 456foo bar 123bar].detect {|e| e.to_i > 0}
    => "456foo"
    [2] pry(main)> %w[foo 456foo bar 123bar].detect {|e| e.start_with?('123')}                   
    => "123bar"