ruby - 处理数组并返回 bool 值

标签 ruby

我想知道,检查 Array 的所有元素是否都是最简单的方法是什么?符合一定条件并返回 bool 值? Ruby 中是否有一种模式可以调用集合上的方法然后返回 bool 值?标准Enumerable方法返回 Arraynil ,所以我不知道在哪里看。我写了一个使用 grep 的示例,但我觉得if可以使用更惯用的代码来跳过:

 def all_matched_by_regex?(regex)

     array_collection = ['test', 'test12', '12test']
     matched = array_collection.grep(regex)
     if matched.length == array_collection.length
        return true
     end
     return false
    end

最佳答案

你试过吗Enumerable.all? {block} ?这似乎正是您正在寻找的东西。

编辑:

我的 Ruby 有点生疏,但这里有一个如何使用它的示例

  regex = /test/
=> /test/
   array_collection = ['test', 'test12', '12test']
=> ["test", "test12", "12test"]
   array_collection.all? {|obj| regex =~ obj}
=> true

关于ruby - 处理数组并返回 bool 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18176351/

相关文章:

ruby-on-rails - 模型和测试中的验证方法之间的错误 :Unit assertion results

mysql - 如何在 ruby​​ on rails 中获取 Object 的值

ruby-on-rails - 在已安装 Ruby 的情况下使用 RVM

ruby-on-rails - API文档生成工具

ruby-on-rails - 从 Rails Controller 访问 current_user 设计方法

ruby - 我将如何在本地安装它? gem 安装会工作吗?

ruby-on-rails - 后台作业中的 Pusher 超过了我的应用程序 - 缺少 JS 通知

ruby - 学习 Ruby 作为脚本语言需要多长时间?

ruby - 在 Ruby 中的不同数组的特定位置从单个字符创建数组

ruby-on-rails - 模型的 Rails 数据库设计,可由多个模型之一使用