Maison >développement back-end >Tutoriel Python >Comment trouver toutes les correspondances de plusieurs expressions régulières en Python ?

Comment trouver toutes les correspondances de plusieurs expressions régulières en Python ?

Barbara Streisand
Barbara Streisandoriginal
2024-12-02 12:25:13588parcourir

How to Find All Matches of Multiple Regular Expressions in Python?

Faire correspondre plusieurs expressions régulières en Python

La fonction re.search() est utile pour trouver la première occurrence d'un modèle dans une chaîne . Cependant, si vous devez localiser toutes les correspondances dans un texte donné, il existe des méthodes adaptées à cette tâche spécifique.

Une option est re.findall, qui renvoie une liste contenant toutes les sous-chaînes correspondant au modèle fourni. C'est idéal lorsque vous souhaitez extraire et travailler avec des correspondances individuelles de manière séquentielle. Par exemple :

import re

text = 'This is a line with matching words: apple, orange and banana.'
matches = re.findall(r'apple|orange|banana', text)
print(matches)  # Output: ['apple', 'orange', 'banana']

Une autre alternative est re.finditer, qui génère des objets MatchObject pour chaque correspondance. Ces objets fournissent des informations détaillées sur les matchs, y compris leurs positions et les groupes capturés. Il est souvent utilisé lorsque vous avez besoin d’un contrôle plus granulaire sur les résultats correspondants. Par exemple :

import re

text = 'This is a line with matching words: apple, orange and banana. Apples are the best!'
for match in re.finditer(r'apple|orange|banana', text):
    print(match.group())  # Output: 'apple', 'orange', 'banana', 'apple' (last match)

En utilisant re.findall ou re.finditer, vous pouvez identifier et récupérer efficacement toutes les occurrences d'un modèle spécifié dans une chaîne en Python. Ces méthodes vous permettent de traiter les correspondances sous forme de collection ou de les parcourir pour une analyse plus complexe.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn