初心者でもわかる!Pythonの正規表現入門

未分類

プログラミングを学び始めたばかりの皆さん、こんにちは!今日はPythonにおける正規表現について解説します。正規表現は、テキストデータを効率よく操作するための強力なツールです。特にデータ分析やウェブスクレイピングなどで大変役立ちますので、ぜひ学んでみましょう。

正規表現とは?

正規表現(せいきひょうげん)とは、文字列のパターンを表現するための特別な記法です。特定の文字列を検索したり、置換したりする際に非常に便利です。例えば、メールアドレスや電話番号を検出したり、特定の形式のデータをフィルタリングしたりすることができます。

Pythonで正規表現を使うための準備

Pythonで正規表現を扱うためには、標準ライブラリのreモジュールをインポートする必要があります。以下のようにコードを記述します。

import re

基本的な正規表現の使い方

1. パターンのマッチング

まずは、文字列が特定のパターンにマッチするかどうかを確認する方法を見ていきましょう。re.match()関数を使います。

import re

pattern = r"abc"
text = "abcdef"

if re.match(pattern, text):
    print("マッチしました!")
else:
    print("マッチしませんでした。")

このコードでは、文字列textpatternのパターン(ここでは「abc」)で始まるかどうかを確認しています。マッチすれば「マッチしました!」と表示されます。

2. 検索の実行

次に、文字列の中から特定のパターンを探す方法についてです。re.search()関数を使います。

import re

text = "私はPythonが大好きです!"
pattern = r"Python"

result = re.search(pattern, text)
if result:
    print("見つかりました!")
else:
    print("見つかりませんでした。")

この例では、文字列の中に「Python」という単語が含まれているかどうかを検索しています。

3. パターンによる置換

正規表現を使って文字列の一部を置換することも可能です。re.sub()関数を使います。

import re

text = "私はPythonを学んでいます。"
pattern = r"Python"
replacement = "プログラミング"

new_text = re.sub(pattern, replacement, text)
print(new_text)  # 出力: 私はプログラミングを学んでいます。

このコードでは、「Python」を「プログラミング」に置き換えています。

正規表現の基本構文

正規表現には多くの特殊な記号や構文がありますが、いくつかの基本的なものを紹介します。

  • .:任意の1文字にマッチ
  • ^:文字列の先頭にマッチ
  • $:文字列の末尾にマッチ
  • *:直前の文字が0回以上繰り返すことにマッチ
  • +:直前の文字が1回以上繰り返すことにマッチ
  • ?:直前の文字が0回または1回にマッチ
  • {n}:直前の文字がn回繰り返すことにマッチ
  • [abc]:指定した任意の文字(a、b、c)にマッチ
  • (…):グループ化

おわりに

いかがでしたでしょうか?Pythonの正規表現は、テキスト操作を効率化する強力なツールです。最初は少し難しく感じるかもしれませんが、使っているうちにその便利さを実感できるでしょう。ぜひ、実際に手を動かして試してみてください!

タイトルとURLをコピーしました