まず、Pythonのreモジュールをインポートします。
import re
次に、検索パターンを定義します。メールアドレスのパターンは比較的複雑ですが、次の正規表現パターンを使用することで一般的なメールアドレスを検出できます。
pattern = r'\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}\b'
このパターンは、メールアドレスの要件を満たす文字列を検索します。ただし、.jpgを含むメールアドレスは除外します。
次に、テキスト内からメールアドレスを検索する関数を作成します。
def find_emails(text):
matches = re.findall(pattern, text)
return matches
この関数は、与えられたテキスト内のすべてのメールアドレスをリストとして返します。
例えば、次のようなテキストがあるとします。
text = "Sample text with [email protected] and image.jpg"
このテキストからメールアドレスを検索する場合、次のように関数を呼び出します。
emails = find_emails(text)
print(emails)
出力結果は次のようになります。
['[email protected]']
このように、検索結果から.jpgを含むメールアドレスが除外されます。
以上がPythonで正規表現を使用してメールアドレスを検索し、.jpgを含まない方法です。お役に立てれば幸いです。