ホームページ >バックエンド開発 >Python チュートリアル >Python で正規表現の一致をすべて見つけるにはどうすればよいですか?

Python で正規表現の一致をすべて見つけるにはどうすればよいですか?

Linda Hamilton
Linda Hamiltonオリジナル
2024-12-02 13:02:10975ブラウズ

How Can I Find All Matches of a Regular Expression in Python?

Python での正規表現による複数の一致の検索

テキスト内で正規表現の一致を検索する場合、re.search() 関数は最初の一致のみを識別します。パターンのすべてのインスタンスを検索するには、複数の一致に対応する代替オプションを調べます。

re.findall の使用

re.findall 関数は、正規表現パターンとターゲット文字列の 2 つの引数を受け取ります。 。文字列内で見つかった重複しない一致のリストを返します。

import re

matches = re.findall(r'all (.*?) are', 'all cats are smarter than dogs, all dogs are dumber than cats')
print(matches)  # ['cats', 'dogs']

re.finditer の使用

もう 1 つのオプションは re.finditer で、MatchObject オブジェクトの反復子を返します。

for match in re.finditer(r'all (.*?) are', 'all cats are smarter than dogs, all dogs are dumber than cats'):
    print(match.group())  # 'all cats are', 'all dogs are'

これらのメソッドを使用すると、指定された文字列内のすべての一致を処理できるため、通常のメソッドを使用する場合に柔軟性が得られます。表現。

以上がPython で正規表現の一致をすべて見つけるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。