2010-09-10 28 views
27

我有一個簡單的ruby問題。我有一串字符串。我想確定該數組是否包含任何字符串的子字符串。作爲一個例子確定一個字符串數組是否包含ruby中的某個子字符串

a = ['cat','dog','elephant'] 
a.to_s.include?('ele') 

這是最好的辦法嗎?

謝謝。

+1

想要爲'['貓','狗','大象']和''凝膠'獲取'true'還是'false'? – sepp2k 2010-09-10 16:54:58

回答

50

a.any?應該完成這項工作。

> a = ['cat','dog','elephant'] 
=> ["cat", "dog", "elephant"] 
> a.any? { |s| s.include?('ele') } 
=> true 
> a.any? { |s| s.include?('nope') } 
=> false 
+0

有沒有辦法檢查多個值? – Shiko 2017-06-02 07:23:24

+0

你需要做一個嵌套的'任何?'檢查,可能是一個不同的問題,儘管一個簡短的答案可能是:'a.any? {| s | ['aba','ele']。any? {| t | s.include?(t)}}' – Shadwell 2017-06-02 07:45:34

+1

我以這個'haystack.select {| str | str.include?('wat')|| str.include?('pre')}' – Shiko 2017-06-02 07:47:02

相關問題