Python
 Computer >> コンピューター >  >> プログラミング >> Python

Pythonの正規表現で文字列からデータを抽出する方法

Pythonでは、標準ライブラリのreモジュールを使って正規表現による文字列処理が行えます。パターン内で()によるグループ化を利用すると、「first_id」「second_id」「category」のような複数のデータを1つの文字列から簡単に取り出すことができます。

コード例

以下のコードは、ファイル名「TS001B01.JPG」から各部分を抽出する例です。

import re

s = 'TS001B01.JPG'
match = re.match(r'(TS\d+)([A|B])(\d+)\.JPG', s)

first_id = match.group(1)
category = match.group(2)
second_id = match.group(3)

print(first_id)
print(category)
print(second_id)

パターンの解説

  • (TS\d+):先頭の「TS」とそれに続く数字にマッチし、第1グループとして取得できます。
  • ([A|B]):「A」または「B」のどちらか1文字にマッチし、第2グループ(カテゴリ)として取得できます。
  • (\d+):末尾の数字列にマッチし、第3グループとして取得できます。

出力

このコードを実行すると、次のように各グループの内容が出力されます。

TS001
B
01

補足ポイント

  • match.group(0) を使うと、マッチした文字列全体を取得できます。
  • re.match() は文字列の先頭からしかマッチしないため、文字列の途中に含まれるパターンを探す場合は re.search() を使用します。
  • マッチしなかった場合 matchNone を返すため、実際のコードでは if match: のように存在チェックを行うと安全です。
  1. Matplotlibのプロットからデータを抽出する方法|get_xdata・get_ydataの使い方

    Matplotlibで作成したプロットから元のデータを取り出したい場合、get_xdata() メソッドと get_ydata() メソッドを使うことで簡単に実現できます。これらのメソッドは、プロットされたLine2DオブジェクトからX軸・Y軸のデータポイントをそれぞれ取得します。実行手順図のサイズを設定し、サブプロット間および周囲の余白(パディング)を調整します。numpy を使って y のデータポイントを作成します。y のデータポイントを color=red(赤色)・linewidth=5(線幅5)でプロットします。データ抽出の開始を示すメッセージを出力します。get_xdata() と

  2. Pythonでウィキペディアのデータを抽出する方法を徹底解説

    この記事では、Pythonを使ってウィキペディアのデータを抽出する方法を詳しく解説します。PythonはWebスクレイピングの分野で広く活用されており、Webサイトからメタ情報を収集するツールの開発に非常に適した言語です。 本記事では、Wikipedia APIとwikipediaライブラリを使用して、ウィキペディアのソースURLからデータを取得します。APIを利用することで、指定したURLから簡単にデータをフェッチでき、その後、対象のURLに対してメソッドを呼び出して、取得した情報を画面に出力することができます。 事前準備:wikipediaライブラリのインストール ウィキペディアからデータ