CommencezCommencez gratuitement

Expressions régulières en Python

L'extraction d'information fondée sur des règles est utile pour de nombreuses tâches de NLP. Certains types d'entités, comme les dates ou les numéros de téléphone, ont des formats distincts qui peuvent être reconnus par un ensemble de règles sans devoir entraîner un modèle. Dans cet exercice, vous allez vous exercer à utiliser le module re pour les expressions régulières (RegEx). L'objectif est de repérer les numéros de téléphone dans un text donné.

Le module re est déjà importé pour vous. Vous pouvez utiliser \d pour faire correspondre des motifs de chaîne correspondant à un métacaractère qui correspond à tout chiffre de 0 à 9.

Cette activité fait partie du cours

Traitement du langage naturel avec spaCy

Voir le cours

Instructions de l’exercice

  • Définissez un motif pour faire correspondre des numéros de téléphone de la forme (111)-111-1111.
  • Trouvez toutes les correspondances à l'aide de la méthode re.finditer().
  • Pour chaque correspondance, affichez les positions de début et de fin ainsi que la portion correspondante du text fourni.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

text = "Our phone number is (425)-123-4567."

# Define a pattern to match phone numbers
pattern = r"\((____){____}\)-(____){____}-(____){____}"

# Find all the matching patterns in the text
phones = re.____(pattern, text)

# Print start and end characters and matching section of the text
for match in phones:
    start_char = match.____
    end_char = match.____
    print("Start character: ", ____, "| End character: ", ____, "| Matching text: ", text[____:____])
Modifier et exécuter le code