Pythonのre
モジュールは、Perlのような正規表現マッチング操作を提供する。このモジュールを使用すると、特定の文字列が与えられた正規表現にマッチするかどうかを確認できます。
re.findall()
関数は、特に便利な関数の一つです。この関数は、与えられた文字列内でパターンに一致するすべての非重複発生を検索します。マッチしたすべての結果をリストとして返します。
例えば、次のような簡単な旅行日程メモがあるとします。
s = """
6/10/2019: NH106 HND to LAX
6/25/2019: NH105 LAX to HND
"""
この中から、便名を取り出して表示することができます。
import re
for m in re.findall(r'(?!\\d{2})[A-Z0-9]{2}\\d{1,4}', s):
print(m)
実行結果は次の通りです。
NH106
NH105
このように、re.findall()
関数を使うと、マッチした部分を簡単に取り出すことができます。