Pythonで正規表現を使う

Python では、正規表現を使うことでテキストや文字列などのデータを効率的に処理できます。本記事では、Python を使って正規表現を理解したり、実際に使い方を学んだりする方法をご紹介します。

正規表現とは

正規表現とは、文字列などのデータを効率よく検索、置換などの処理をするための技術です。 特定の文字や単語を検索したり、文字列の後ろに数値があるか判別するなど、あらゆる形式の文字列を正しく処理するのに役立ちます。

正規表現の書き方

Python で正規表現を使うには、re モジュールを import する必要があります。

import re

次に、re.compile()関数を使って、正規表現を書いていきます。

 pattern = re.compile("正規表現を書く")

正規表現を書く部分を予め用意しておくと便利です。例えば、「[a-z]+」と書くと、a ~ z の範囲の文字が 1 文字以上連続する文字列を取得できます。

マッチング

正規表現を使って文字列を検索するには、re.match()関数を使います。

m = re.match(pattern,"検索する文字列")

m に検索文字列の先頭が pattern と一致する部分文字列が格納されます。もし pattern と一致しない場合は、None が返ります。

置換

正規表現を使って文字列を置換するには、re.sub()関数を使います。

 result = re.sub(pattern,"置換後の文字列","置換前の文字列")

resultには、pattern を置換後の文字列に置換した文字列が入ります。

例題

以下の例を見てみましょう。文字列”Hello World!”に対し、アルファベットの文字を大文字に変換してみます。

 import re # 正規表現を書く
 pattern = re.compile("[a-z]") # 置換処理を実行
 result = re.sub(pattern, lambda x:x.group().upper(), "Hello World!") # 結果を表示
 print(result)

実行結果は次のようになります。 HELLO WORLD! ## まとめ Python では正規表現を使って文字列などのデータを効率的に処理できます。今回は Python を使って正規表現を理解したり、実際に使い方を学んだりする方法をご紹介しました。 今回の記事を参考にして正規表現を Master していきましょう!