2010-01-20 117 views
18

我熟悉Ruby的include?字符串的方法,但是我怎樣才能檢查一個字符串的多個東西?Ruby:如何檢查一個字符串是否包含多個項目?

具體來說,我需要檢查,如果一個字符串包含「轉發:」或「FW:」(和應不區分大小寫)

實例的字符串將是:「FWD:您的Amazon.com訂單已發貨」

回答

30
the_string =~ /fwd:|fw:/i 

您也可以使用類似

%w(fwd: fw:).any? {|str| the_string.downcase.include? str} 

雖然我個人使用正則表達式更好地在這種情況下(尤其是當你在調用downcase喜歡的版本第二個使其不區分大小寫)。

+1

謝謝。使用正則表達式...你將如何翻譯該行來說「如果the_string沒有fwd:| fw:」? – Shpigford 2010-01-21 21:07:27

+0

另外,是否有使用'=〜'的官方術語# – Shpigford 2010-01-21 21:07:59

+1

有'!〜'運算符,它與否定'=〜'的結果完全相同。使用'=〜'通常被稱爲匹配正則表達式。不知道這是否是一個官方任期。 – sepp2k 2010-01-21 21:18:46

相關問題