ruby - 检查数组的任何元素是否满足条件

标签 ruby

<分区>

Possible Duplicate:
check if value exists in array in Ruby

我有一个循环遍历字符串数组并在任何字符串包含字符串“狗”时返回 true 的方法。它正在工作,但多个 return 语句看起来很乱。有没有更 Eloquent 方式来做到这一点?

def has_dog?(acct)
  [acct.title, acct.description, acct.tag].each do |text|
    return true if text.include?("dog")
  end
  return false
end

最佳答案

使用Enumerable#any?

def has_dog?(acct)
  [acct.title, acct.description, acct.tag].any? { |text| text.include? "dog" }
end

它将返回true/false

关于ruby - 检查数组的任何元素是否满足条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12827487/

相关文章:

ruby-on-rails - 如何将主键添加到rails中的表

元类中的 Ruby 类变量

ruby-on-rails - bundle 正在我的项目中安装一个 ruby​​ 目录

ruby - Rails, ruby​​ : does SecureRandom. urlsafe_base64 是否需要检查 token 的唯一性?

ruby - ruby 纤维程序中的控制流程

ruby - 如果我输入 CTRL+D 是否可以中断 ruby​​ 程序?

ruby-on-rails - 命令错误 :/usr/bin/env: 'ruby2.6' : No such file or directory

ruby - 如何将此 SQL 结构化为 redis 数据库

ruby-on-rails - 如何使用 devise 登录用户?

Ruby Mechanize 在每个 Do 循环中停止工作