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 l'attestation finale.
7 500 XOF / 11,43 € / 12,46 $
Débloquez les 92 leçons restantes de ce module
Pour vous communiquer où envoyer le paiement.
Moyen de paiement souhaité
Nous vous contactons pour le paiement — activé dès réception.