【Python】文字列操作:文字列中に含まれる文字列の個数を数える

  • URLをコピーしました!

皆さん、こんにちは(こんばんは)、「大-はなまる(@oooohanamaru)」です。

嫁ちゃん

文章の中に含まれる特定の文字が何個あるか数えたいんですけど?

わたし

そんなときは、

str型の count() メソッドを使うといいよー♪

目次

はじめに

str.count() は、文字列中に含まれる特定の文字列の数を数えるメソッドです。

用法

str.count(sub[, start[, end]]))

[startend] の範囲に、部分文字列 sub が重複せず出現する回数を返します。オプション引数 start および end はスライス表記と同じように解釈されます。

組み込み型 – Pythonドキュメント から引用

s = 'This is a pen.'
print(s)
print(s.find('i'))
print(s.find('is'))
print(s.find('pen'))
This is a pen.
2
2
1

例.部分文字列が見つからなかった場合

s = 'This is a pen.'
print(s)
print(s.count('xyz'))
This is a pen.
0

例.検索範囲の開始位置を指定する場合

s = 'This is a pen.'
print(s)
print(s.count('is'), 5)

検索範囲の開始位置のインデックスが 5 になっていますので、2つ目の ‘is’ のみカウントされます。

This is a pen.
1
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
| T | h | i | s |   | i | s |   | a |   | p | e | n | . |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
0   1   2   3   4   5   6   7   8   9   10  11  12  13  14

例.検索範囲の開始・終了位置を指定する場合

s = 'This is a pen.'
print(s)
print(s.count('is'), 5, 6)
print(s.count('is'), 5, 7)

検索範囲の終了位置のインデックスに 7 を指定しました。0 から数えて 6番目 では、’s’ が含まれないのでカウントされません。

This is a pen.
0
1
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
| T | h | i | s |   | i | s |   | a |   | p | e | n | . |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
0   1   2   3   4   5   6   7   8   9   10  11  12  13  14

おわりに

嫁ちゃん

ちゃんと数えられましたー♪

わたし

良かったねー。

この記事がお役に立ちましたら幸いです。

では、また。

※本サイトの漫画やイラストはフィクションであり、実在の製品・団体・人物・地名とは関係ありません。
※本サイトに掲載する情報には充分に注意を払っておりますが、その内容について保証するものではありません。
※本サイトの使用ならびに閲覧によって生じたいかなる損害にも責任を負いかねます。

この記事が気に入ったら
フォローしてね!

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次