Rubyリファレンス: Home

count (String)

Edit   History

標準クラス・モジュール > String > count

str.count(character, ...)

countメソッドは、引数で指定した文字の数を文字列の中から調べ、整数を返します。

s = "hello, world"
puts s.count("l")
3

引数は、正規表現の文字クラス[]のように、文字を並べたり、-で範囲を指定したり、^で否定を表したりできます(ただし文字クラスと同じではありません)。次の例は、lとoの数を調べます。

s = "hello, world"
puts s.count("lo")
5

複数の引数を指定すると、「かつ」の関係になります。次の例は、小文字アルファベットで、かつoではない文字の数を調べます。

s = "hello, world"
puts s.count("a-z", "^o")
8

Ruby 1.9 Ruby 1.9では、漢字やひらがななど2バイト以上の文字も数えられます。Ruby 1.8では、"ん"は1文字ではなく、1バイト文字3つの並び(UTF-8の場合)と見なされます。

# encoding: utf-8
s = "こんばんは"
puts s.count("ん")
2

関連項目