Python:
正規表現の使用
使い方:
Pythonでregexを使用するには、正規表現を使用してテキストを処理するための一連の関数を提供するre
モジュールを使用します。
基本的なパターンマッチング
文字列内でパターンを検索するには、re.search()
を使用します。パターンが見つかると、マッチオブジェクトを返し、そうでなければNone
を返します。
import re
text = "Learn Python programming"
match = re.search("Python", text)
if match:
print("パターンが見つかりました!")
else:
print("パターンが見つかりませんでした。")
出力:
パターンが見つかりました!
正規表現のコンパイル
同じパターンを繰り返し使用する場合は、re.compile()
で先にコンパイルして、パフォーマンスを向上させます。
pattern = re.compile("Python")
match = pattern.search("Learn Python programming")
if match:
print("コンパイルされたパターンが見つかりました!")
出力:
コンパイルされたパターンが見つかりました!
文字列の分割
正規表現パターンの各マッチで文字列を分割するには、re.split()
を使用します。
result = re.split("\s", "Python is fun")
print(result)
出力:
['Python', 'is', 'fun']
すべてのマッチを探す
パターンの重なり合わない全ての発生を見つけるには、re.findall()
を使用します。
matches = re.findall("n", "Python programming")
print(matches)
出力:
['n', 'n']
テキストの置換
re.sub()
を使用して、パターンの発生を新しい文字列で置き換えます。
replaced_text = re.sub("fun", "awesome", "Python is fun")
print(replaced_text)
出力:
Python is awesome
サードパーティライブラリ
Pythonの組み込みre
モジュールはパワフルですが、regex
のようなサードパーティライブラリはより多くの機能と強化されたパフォーマンスを提供します。 regex
を使用するには、pip(pip install regex
)経由でインストールし、コードでインポートします。
import regex
text = "Learning Python 3.8"
match = regex.search(r"Python\s(\d+\.\d+)", text)
if match:
print(f"バージョンが見つかりました: {match.group(1)}")
出力:
バージョンが見つかりました: 3.8