2014-09-30 92 views
-3

我比較字符串使用字符串數組:一個字符串,字符串數組比較和打印計數

arry.include? (mystring) 

,它返回一個布爾值。我怎樣才能打印出該數組中有多少個字符串等同於mystring?

+1

第一步是Google「紅寶石陣列」。閱讀方法,看看是否有任何滿足您的需求。 – 2014-09-30 18:29:26

+0

你好多利安,如果你喜歡我的回答,請接受它。這將幫助我獲得更多的積分.... :) – kapiltekwani 2014-10-01 08:11:40

+0

我確實接受了你的答案。謝謝:) – 2014-10-01 13:03:28

回答

6
array.count(mystring) 

["Cat", "Dog", "Cat"].count("Cat") #=> 2 

["Cat", "Dog", "Cat"].count("Dog") #=> 1 
+0

你應該格式化你的答案。 – 2014-09-30 18:28:14

+3

最佳答案(+1),但您的演示文稿可以改進,從'arry.count(mystring)'開始。 – 2014-09-30 18:28:46

+1

解決方案很好,但例子很糟糕。數組中不需要那麼多不相關的元素。您應該包含像「Catwoman」這樣的元素來表明它沒有進行正則表達式匹配或部分匹配。 – sawa 2014-09-30 18:33:07

1

您可以使用Enumerable#count

arry.count { |s| s == mystring } 

假設mystring是抱着一個字符串變量。如果它的意思是文字,你需要s == "mystring"

編輯:@ kapiltekwani的回答顯然更好。我忘記了這種形式的count