![](/_astro/python-regex_Z18Jf2x.jpg)
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 していきましょう!