正規表現を使用して値を抽出する方法


  1. パターンマッチングを使用する方法: 正規表現のパターンマッチングを使用して、特定の値を抽出することができます。例えば、文字列内の数値を抽出する場合、以下のようなコードを使用します。
import re
text = "This is a sample text with numbers 123 and 456"
pattern = r"\d+"  # 数値を表す正規表現パターン
matches = re.findall(pattern, text)
print(matches)  # ['123', '456']
  1. グループ化を使用する方法: 正規表現のグループ化を使用すると、特定の部分の値を抽出することができます。例えば、日付を含む文字列から年、月、日を個別に抽出する場合、以下のようなコードを使用します。
import re
text = "Today's date is 2024-02-04"
pattern = r"(\d{4})-(\d{2})-(\d{2})"  # 年-月-日を表す正規表現パターン
matches = re.search(pattern, text)
if matches:
    year = matches.group(1)
    month = matches.group(2)
    day = matches.group(3)
    print("Year:", year)  # Year: 2024
    print("Month:", month)  # Month: 02
    print("Day:", day)  # Day: 04
  1. 置換を使用する方法: 正規表現を使用して、文字列内の特定のパターンを置換することもできます。例えば、文字列内の全てのスペースをアンダースコアに置換する場合、以下のようなコードを使用します。
import re
text = "This is a sample text"
pattern = r"\s"  # スペースを表す正規表現パターン
replaced_text = re.sub(pattern, "_", text)
print(replaced_text)  # "This_is_a_sample_text"