我想知道,检查 Array
的所有元素是否都是最简单的方法是什么?符合一定条件并返回 bool 值? Ruby 中是否有一种模式可以调用集合上的方法然后返回 bool 值?标准Enumerable
方法返回 Array
或nil
,所以我不知道在哪里看。我写了一个使用 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/