Lors de la recherche de correspondances d'expressions régulières dans un texte, la fonction re.search() n'identifiera que la première occurrence. Pour trouver toutes les instances d'un modèle, explorez des options alternatives qui répondent à plusieurs correspondances.
La fonction re.findall prend deux arguments : le modèle d'expression régulière et la chaîne cible . Il renvoie une liste de toutes les correspondances qui ne se chevauchent pas trouvées dans la chaîne.
import re matches = re.findall(r'all (.*?) are', 'all cats are smarter than dogs, all dogs are dumber than cats') print(matches) # ['cats', 'dogs']
Une autre option est re.finditer, qui renvoie un itérateur sur les objets 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'
Ces méthodes vous permettent de traiter toutes les correspondances dans une chaîne donnée, offrant ainsi une flexibilité lorsque vous travaillez avec des expressions régulières.
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!