正規表現は、テキスト分析と編集のための強力なツールです。テキスト内の特定のパターンを見つけたり、検証したり、置き換えたり、さらには分割することができます。このガイドでは、Python における 正規表現 の基本的な使い方を、モジュール re.match と re.search を用いて説明します。
重要なポイント
- 正規表現は、テキスト内の特定の文字列を検索するのに役立ちます。
- re.match は、テキストの先頭にパターンが存在するかどうかを確認します。
- re.search は、テキスト内の任意の位置にあるパターンを見つけます。
- Python の re ライブラリは、正規表現を扱うために必要です。
ステップバイステップガイド
正規表現の動作を理解するために、Python での実装手順を以下に示します。
まず、Python 3 で新しいファイルを作成します。後でテキスト内で検索したい単語をいくつか設定します。例として、「用語 1」と「用語 2」を使用します:

次に、テキストを書きます。このテキストには、検索したい用語が含まれます。例えば、「これは用語 1 または back 1 を含む文字列ですが、他の方法はありません。」という内容です。

次に、定義した用語を反復処理するループを作成します。このループ内で、print 関数を使用して検索結果を表示します。print 関数を使って、現在の検索用語をコンソールに出力します。

検索結果がより読みやすくなるように、文字列をフォーマットできます。プレースホルダを使用して、現在の用語とテキストを動的に表示します。

次に、テキスト内に各用語が存在するかを確認するロジックを実装します。ここでは、テキスト内のパターンを検索するための便利なメソッドである re.search を使用します。

re.search がヒットを見つけた場合は、その用語が存在することを表示し、そうでない場合は存在しないことを出力で通知します。出力はわかりやすく、結果が何であるかを明確にします。
結果は、テキスト内に見つかる用語と見つからない用語を示します。追加の用語を追加する場合、ループはそれぞれの用語に対して実行されます。

用語がテキスト内のどの位置にあるかを知るために、match.start() と match.end() の関数を使用できます。これにより、検索結果の開始位置と終了位置が得られます。

match.start() を使用することで、用語がテキスト内で開始する正確な位置を知ることができます。match.end() を使うと、見つかった用語の終了位置を取得できます。

このようにして、テキスト内の見つかった用語を特定するだけでなく、その正確な位置を知ることができ、対象を絞った編集に役立ちます。

次のステップは面白くなります。なぜなら、次のガイドでは正規表現を使ってパターンを検索するだけでなく、テキストの特定の部分を分離または置き換える方法を示すからです。これにより、テキストの操作を行うさまざまな方法が開かれます。
まとめ - Python における正規表現の入門:re.match と re.search
正規表現は、テキストデータを分析し、修正する際にプログラミングで欠かせないツールです。このガイドでは、Python を使用して re.match と re.search モジュールを使用してテキスト内の用語を見つける方法を学びました。また、検索した用語の位置を決定する方法も学びました。
よくある質問
Pythonでreモジュールをどうやってインポートしますか?「import re」でモジュールをインポートします。
re.match と re.search の違いは何ですか?re.match は文字列の先頭のみを検索し、re.search は文字列全体を検索します。
テキスト内で用語の位置をどうやって見つけますか?match.start() と match.end() メソッドを使用します。
テキストの置き換えに正規表現を使用できますか?はい、そのために re.sub() 関数を使用できます。
正規表現についてもっと学ぶにはどうすればよいですか?公式のPythonドキュメントや正規表現に関するオンラインリソースを確認してください。