Leçon 6 / 9 — Chapitre 6: Chaînes avancées et formatage
Introduction aux expressions régulières : re.search()
Une expression régulière (ou *regex*) décrit un motif de texte à rechercher, bien plus flexible qu'une simple recherche de sous-chaîne avec in. Le module re de la bibliothèque standard fournit les fonctions pour les utiliser.
import re
texte = "Commande numero 4521"
resultat = re.search(r"[0-9]+", texte)
print(resultat.group())
Ce code affiche 4521. re.search(motif, texte) cherche la première portion de texte correspondant au motif, et renvoie un objet correspondance (ou None si rien ne correspond) ; [0-9]+ signifie "un ou plusieurs chiffres à la suite". .group() récupère le texte exact qui a été trouvé.
Le préfixe r avant la chaîne du motif (r"[0-9]+") crée une chaîne brute (*raw string*), qui évite d'interpréter certains caractères spéciaux (comme \n) — une habitude recommandée pour tous les motifs regex, même simples.
Si aucune correspondance n'est trouvée, re.search() renvoie None : appeler .group() directement dessus provoquerait une erreur AttributeError, il faut donc vérifier le résultat avant de l'utiliser.
if resultat:
print(resultat.group())
À vous de jouer : avec re.search(r"[0-9]+", texte), extrayez le premier nombre présent dans une chaîne de votre choix.
Continuez ce module
Débloquez les leçons restantes ainsi que la certification finale.
2 500 XOF / 3,81 € / 4,15 $
Débloquez les 85 leçons restantes de ce module
Votre paiement est vérifié avant l'activation de l'accès