問題
任意の文字列で
“hi”がいくつあるか数えてその数を出力するメソッドを作りましょう。
出力例
count_hi('abc hi ho') → 1
count_hi('ABChi hi') → 2
count_hi('hihi') → 2
自分の回答
def count_hi(word)
p word.scan('hi').length
end
word = "ABChi hi"
count_hi(word)
countを使えばいいと思うかもしれませんが、countは複数文字は正確にカウントできません。なので、複数文字の時は、scanを使いましょう。
def count_hi(word)
p word.count('hi')
end
word = "ABChi hi"
count_hi(word)
=> 4
おそらくhで2、iで2合わせて4と出力されてしまいます。