Méthode Python re.findall()
re.findall()est Pythonredans le module, utilisée pourtrouver toutes les correspondancesfonction.
Il parcourt toute la chaîne et renvoie toutes les sous-chaînes qui correspondent à l'expression régulière, sous forme de liste.
Définitions de mots: find allCela signifie 'tout trouver'.
Syntaxe de base et paramètres
re.findall()C'est une fonction au niveau du module.
Format de syntaxe
re.findall(pattern, string, flags=0)
Description du paramètre
- pattern: motif d'expression régulière
- string: la chaîne à rechercher
- flags: facultatif, indicateurs d'expression régulière
Description de la fonction
- Valeur de retour: Renvoie une liste contenant toutes les chaînes correspondantes. Si aucune correspondance n'est trouvée, renvoie une liste vide.
- Fonctionnalités: Renvoie toutes les correspondances, pas seulement la première.
Exemples
Exemple 1 : Trouver tous les nombres
Exemple
import re
text = J'ai 3 pommes, 5 oranges, 8 bananes
# Trouver tous les nombres
result = re.findall(r'\d+', text)
print(Nombres trouvés :, result)
text = J'ai 3 pommes, 5 oranges, 8 bananes
# Trouver tous les nombres
result = re.findall(r'\d+', text)
print(Nombres trouvés :, result)
Sortie attendue :
找到的数字: ['3', '5', '8']
Exemple 2 : Trouver tous les mots
Exemple
import re
text = "Python est puissant, Python est facile"
# Trouver toutes les occurrences de "Python"
result = re.findall(r'Python', text)
print(Python trouvé :, result)
text = "Python est puissant, Python est facile"
# Trouver toutes les occurrences de "Python"
result = re.findall(r'Python', text)
print(Python trouvé :, result)
Sortie attendue :
找到的Python: ['Python', 'Python']
Exemple 3 : Utiliser des groupes pour extraire plusieurs contenus
Exemple
import re
text = E-mail : [email protected], E-mail : [email protected]
# Utiliser des groupes pour extraire le nom d'utilisateur et le domaine en même temps
result = re.findall(r'(\w+)@(\w+\.\w+)', text)
print(E-mails trouvés :, result)
text = E-mail : [email protected], E-mail : [email protected]
# Utiliser des groupes pour extraire le nom d'utilisateur et le domaine en même temps
result = re.findall(r'(\w+)@(\w+\.\w+)', text)
print(E-mails trouvés :, result)
Sortie attendue :
找到的邮箱: [('test', 'example.com'), ('admin', 'test.org')]
Exemple 4 : Trouver tous les numéros de téléphone
Exemple
import re
text = Zhang San : 138-1234-5678, Li Si : 139-9876-5432, Wang Wu : 137-5555-8888
# Trouver tous les numéros de téléphone
result = re.findall(r'\d{3}-\d{4}-\d{4}', text)
print(Tous les numéros de téléphone :, result)
text = Zhang San : 138-1234-5678, Li Si : 139-9876-5432, Wang Wu : 137-5555-8888
# Trouver tous les numéros de téléphone
result = re.findall(r'\d{3}-\d{4}-\d{4}', text)
print(Tous les numéros de téléphone :, result)
Sortie attendue :
所有手机号: ['138-1234-5678', '139-9876-5432', '137-5555-8888']
Autres extensions
Module re de Python