101 of 151 menu

Méthode finditer du module re

La méthode finditer du module re renvoie un itérateur de toutes les correspondances avec l'expression régulière dans une chaîne. Dans le premier paramètre de la méthode, on spécifie l'expression régulière. Dans le deuxième paramètre, on définit la chaîne dans laquelle on recherche l'expression régulière. Dans le troisième paramètre optionnel, on peut spécifier les drapeaux. La méthode vérifie toutes les correspondances, en les cherchant de gauche à droite.

Syntaxe

import re re.finditer(expression_régulière, chaîne, [drapeaux])

Exemple

Trouvons toutes les sous-chaînes avec des chiffres dans notre chaîne :

txt = 'aaaa 123 bbbb 456' res = re.finditer('\d+', txt) print(res)

Résultat de l'exécution du code :

<callable_iterator object at 0x000002AA891300A0>

Exemple

Maintenant, déclarons une variable res, dont la valeur sera l'objet que nous avons obtenu dans l'exemple précédent. Ensuite, parcourons-la avec une boucle :

txt = 'aaaa 123 bbbb 456' res = re.finditer('\d+', txt) for el in res: print(el)

Après l'exécution du code, nous obtenons deux objets Match object :

<re.Match object; span=(5, 8), match='123'> <re.Match object; span=(14, 17), match='456'>

Ces objets contiennent des informations sur toutes les correspondances avec l'expression régulière sous forme de tuple. Nous pouvons en extraire les correspondances par index :

for el in res: print(el[0])

Résultat de l'exécution du code :

'123' '456'

Exemple

Pour plus de clarté, utilisons des groupes de capture lors de la recherche de correspondances. Et lors du parcours des objets de la boucle, affichons la première correspondance (elle sera considérée comme le groupe zéro), ainsi que ses éléments, à leur tour répartis dans des groupes de capture :

txt = 'aaaa 123 bbbb 456' res = re.finditer('(\d)(\d)', txt) for el in res: print(el[0], el[1], el[2])

Après l'exécution du code, nous obtenons le groupe zéro, c'est-à-dire toute la sous-chaîne, ainsi que le premier et le deuxième caractère de cette sous-chaîne :

'12' '1' '2' '45' '4' '5'

Voir aussi

  • la méthode findall du module re,
    qui renvoie une liste de toutes les correspondances dans une chaîne
  • la méthode search du module re,
    qui cherche la première correspondance avec l'expression régulière dans une chaîne
  • la méthode match du module re,
    qui cherche une correspondance avec l'expression régulière au début de la chaîne
  • la méthode fullmatch du module re,
    qui cherche toutes les correspondances avec l'expression régulière dans une chaîne
  • l'objet Match object du module re,
    qui contient des informations sur les correspondances avec l'expression régulière
  • la méthode split du module re,
    qui divise une chaîne en une liste selon le séparateur spécifié
Français
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Nous utilisons des cookies pour le fonctionnement du site, l'analyse et la personnalisation. Le traitement des données est effectué conformément à la Politique de confidentialité.
accepter tout personnaliser refuser