Pythonのre
モジュールは、正規表現を使って文字列のパターンマッチングを行うための強力なツールです。この記事では、特にre.match()
とre.search()
関数の使い方について詳しく解説します。
re.match()関数
re.match()
関数は、指定した正規表現パターンが文字列の先頭でマッチするかどうかを調べるために使われます。マッチが成功した場合には、マッチしたテキストに関する情報を含むマッチオブジェクトを返します。
import re
pattern = r"hello"
text = "hello, world!"
match = re.match(pattern, text)
if match:
print("マッチが成功しました!")
matched_text = match.group() # マッチしたテキストを取得
match_start = match.start() # マッチの開始位置を取得
match_end = match.end() # マッチの終了位置を取得
print("マッチしたテキスト:", matched_text)
print("マッチの開始位置:", match_start)
print("マッチの終了位置:", match_end)
else:
print("マッチが失敗しました。")
re.search()関数
一方、re.search()
関数は、指定した正規表現パターンが文字列のどこかでマッチするかどうかを調べるために使われます。この関数は、パターンが文字列の中に存在するかどうかを確認する際に特に便利です。
import re
pattern = r"world"
text = "hello, world!"
match = re.search(pattern, text)
if match:
print("マッチが成功しました!")
matched_text = match.group() # マッチしたテキストを取得
match_start = match.start() # マッチの開始位置を取得
match_end = match.end() # マッチの終了位置を取得
print("マッチしたテキスト:", matched_text)
print("マッチの開始位置:", match_start)
print("マッチの終了位置:", match_end)
else:
print("マッチが失敗しました。")
以上がPythonのre
モジュールを使って正規表現によるマッチングを確認する基本的な方法です。これらの関数を使えば、あらゆる種類の文字列パターンを効率的に検出することが可能になります。さらに詳しい情報や他の関数については、Pythonの公式ドキュメンテーションをご覧ください。