Pythonで文字列が特定の接頭辞(XYZ)で始まるかどうかを確認する方法
startswith()メソッドを使う方法
Pythonでは、文字列クラスに用意されている startswith() メソッドを使うことで、文字列が指定した接頭辞(プレフィックス)で始まるかどうかを簡単に確認できます。このメソッドは、検索したい接頭辞の文字列を引数として受け取り、文字列オブジェクトに対して呼び出します。先頭が一致すれば True、一致しなければ False が返されます。
>>> 'hello world'.startswith('hell')
True
>>> 'hello world'.startswith('nope')
False正規表現(reモジュール)を使う方法
もうひとつの方法として、re モジュール(正規表現)を利用するやり方があります。re.search('^' + 接頭辞, 文字列) のように記述することで、文字列の先頭との一致を調べられます。正規表現において ^ は「行の先頭」を意味するため、接頭辞の判定にそのまま活用できます。
>>> import re
>>> bool(re.search('^hell', 'hello world'))
True
>>> bool(re.search('^nope', 'hello world'))
Falseどちらを使うべきか
単純に接頭辞を確認したいだけであれば、startswith() メソッドが最もシンプルで高速なため推奨されます。一方、正規表現を使う方法は、「大文字小文字を無視したい」「複数のパターンに対応したい」など、より柔軟な条件でマッチングを行いたい場合に有効です。
-
Pythonで文字列が指定したサフィックス(接尾辞)リストのいずれかで終わるかどうかを確認する方法
endswith()メソッドを使う方法 Pythonの文字列クラスには、endswith()メソッドが用意されています。このメソッドは、検索したい文字列のタプルを受け取り、文字列オブジェクトに対して呼び出します。以下のように使用できます。 string = core java print(string.endswith((txt, xml, java, orld))) 実行結果 True タプル内のいずれかのサフィックスで文字列が終わっていればTrueが返され、どれにも該当しなければFalseが返されます。シンプルな判定であれば、この方法が最も可読性が高くおすすめです。 正規表現(re.sea
-
Pythonで文字列が指定した接尾辞(サフィックス)で終わっているかどうかを確認する方法
endswith()メソッドを使う方法Pythonでは、文字列クラスに用意されている endswith() メソッドを使うことで、文字列が特定の接尾辞(サフィックス)で終わっているかどうかを簡単に確認できます。このメソッドは、検索したい接尾辞の文字列を引数として受け取り、文字列オブジェクトに対して呼び出します。以下のように使用します。string = C:/Users/TutorialsPoint1/~.py print(string.endswith(.py))実行結果:Trueこの例では、ファイルパスの文字列が .py という拡張子で終わっているため、True が返されます。もし終わってい