Python: 文字列を検索する find(), rfind()

文字列を検索 find()

Pythonで文字列を検索する場合は、find() や in演算子を使う方法があります。
文字列が見つかった位置(インデックス)を知りたい場合は find()メソッドを使います。

書式
文字列.find(部分文字列[, 開始[, 終了]])

戻り値は見つかった先頭を0とする文字列の位置(インデックス)です。 見つからなかった場合は「-1」を返します。

s = "abcdeabcde"

print(s.find("cd"))  # 2

print(s.find("xyx")) # -1

# 開始インデックスを指定
print(s.find("cd", 4)) # 7

# 終了インデックスを指定
print(s.find("cd", 4, 8)) # -1

文字列を最後から検索 rfind()

find()メソッドは文字列を先頭から検索しますが、 最後から検索したい場合は rfind()メソッドを使うと便利です。

s = "abcdeabcde"

print(s.rfind("cd")) # 7