我有一个简单的红宝石问题.我有一个字符串数组.我想确定该数组是否包含任何字符串的子字符串.举个例子
a = ['cat','dog','elephant']
a.to_s.include?('ele')
Run Code Online (Sandbox Code Playgroud)
这是最好的方法吗?
谢谢.
Sha*_*ell 64
a.any? 应该做的工作.
> a = ['cat','dog','elephant']
=> ["cat", "dog", "elephant"]
> a.any? { |s| s.include?('ele') }
=> true
> a.any? { |s| s.include?('nope') }
=> false
Run Code Online (Sandbox Code Playgroud)
小智 9
这是另一种方法:如果您想获取受影响的字符串元素。
> a = ['cat','dog','elephant']
=> ["cat", "dog", "elephant"]
> a.grep(/ele/)
=> ["elephant"]
Run Code Online (Sandbox Code Playgroud)
如果你只想要布尔值。
> a.grep(/ele/).empty?
=> false # it return false due to value is present
Run Code Online (Sandbox Code Playgroud)
希望这是有帮助的。