Python 文字列の始め/終わりを確認するサンプル(startswithとendswith)

Pythonの文字列の始めまたは終わりを確認するサンプルです。
startswithメソッドとendswithメソッドを使用します。

確認環境
・Python 3.7.0

目次

startswithメソッド

文字列  startswith(検索する文字列 [,開始の位置 [終了の位置]])
  • 文字列が指定した引数の検索する文字列で始まっていればtrueを返し、そうでない場合はfalseを返します。
  • 2つ目の引数の最初の1文字目の位置は0から始まります。
  • 以下はPython 3.6.5 ドキュメントのstartswithメソッドのリンクです。
    https://docs.python.jp/3/library/stdtypes.html#str.startswith

始まりの文字列を確認

5行目の対象の文字列は(あいうえお)です。引数の文字列(あいう)で始まっているのでtrueを返します。
7行目の対象の文字列も(あいうえお)です。引数の文字列(あいえ)で始まっていないのでfalseを返します。

# coding: utf-8

a = 'あいうえお'

print(a.startswith('あいう')) # True

print(a.startswith('あいえ')) # False

startswithメソッドの2つめの引数を指定

startswithメソッドの2つめの引数は、検索を開始する位置です。

5行目の対象の文字列は(あいうえお)です。引数の文字列(あいう)で始まっているのでtrueを返します。
7行目の対象の文字列は(いうえお)です。引数の文字列(あいう)で始まっていないのでfalseを返します。

# coding: utf-8

a = 'あいうえお'

print(a.startswith('あいう',0)) # True

print(a.startswith('あいう',1)) # False

 

endswithメソッド

文字列  endswith(検索する文字列 [,開始の位置 [終了の位置]])
  • 文字列が指定した引数の検索する文字列で終わっていればtrueを返し、そうでない場合はfalseを返します。
  • 2つ目の引数の最初の1文字目の位置は0から始まります。
  • 以下はPython 3.6.3 ドキュメントのPython 標準ライブラリの文字列メソッドのリンクです。
    https://docs.python.jp/3/library/stdtypes.html#str.endswith

終わりの文字列を確認

5行目の対象の文字列は(あいうえお)です。引数の文字列(うえお)で終わっているのでtrueを返します。
7行目の対象の文字列も(あいうえお)です。引数の文字列(うえか)で終わっていないのでfalseを返します。

# coding: utf-8

a = 'あいうえお'

print(a.endswith('うえお')) # True

print(a.endswith('うえか')) # False

endswithメソッドの引数を3つ指定

2つめの引数は検索を開始する位置で、3つめの引数は終了の位置です。

5行目の対象の文字列は(あいうえお)です。引数の(うえお)で終わっているのでtrueを返します。
7行目の対象の文字列は(あいうえ)です。引数の(うえお)で終わっていないのでfalseを返します。
9行目の対象の文字列は(うえお)です。引数の(うえお)で終わっているのでtrueを返します。
11行目の対象の文字列は(えお)です。引数の(うえお)で終わっていないのでfalseを返します。

# coding: utf-8

a = 'あいうえお'

print(a.endswith('うえお',0,5)) # True

print(a.endswith('うえお',0,4)) # False

print(a.endswith('うえお',2,5)) # True

print(a.endswith('うえお',3,5)) # False

関連の記事

Python 文字の位置を取得するサンプル(find/index)
Python 文字列を区切り文字で分割するサンプル(split)
Python 文字列の大文字と小文字を変換(upper/lower/capitalize/swapcase/title)
Python エスケープシーケンスとraw文字列のサンプル
Python 文字列の先頭と末尾を削除するサンプル(strip)



△上に戻る