Introduction aux expressions régulières

Expressions régulières en Python

Maria Eugenia Inzaugarat

Data Scientist

Qu'est-ce qu'une expression régulière ?

REGular EXpression ou regex :

Chaîne combinant des caractères ordinaires et des métacaractères spéciaux qui décrit des motifs pour repérer du texte ou des positions dans un texte

Expressions régulières en Python

Qu'est-ce qu'une expression régulière ?

REGular EXpression ou regex :

Chaîne combinant des caractères ordinaires et des métacaractères spéciaux qui décrit des motifs pour repérer du texte ou des positions dans un texte

  • Les caractères ordinaires correspondent à eux-mêmes (st)
Expressions régulières en Python

Qu'est-ce qu'une expression régulière ?

REGular EXpression ou regex :

Chaîne combinant des caractères ordinaires et des métacaractères spéciaux qui décrit des motifs pour repérer du texte ou des positions dans un texte

  • Les métacaractères représentent des types de caractères (\d, \s, \w) ou des idées ({3,10})
Expressions régulières en Python

Qu'est-ce qu'une expression régulière ?

REGular EXpression ou regex :

Chaîne combinant des caractères ordinaires et des métacaractères spéciaux qui décrit des motifs pour repérer du texte ou des positions dans un texte

  • Les métacaractères représentent des types de caractères (\d, \s, \w) ou des idées ({3,10})
Expressions régulières en Python

Qu'est-ce qu'une expression régulière ?

REGular EXpression ou regex :

Chaîne combinant des caractères ordinaires et des métacaractères spéciaux qui décrit des motifs pour repérer du texte ou des positions dans un texte

  • Les métacaractères représentent des types de caractères (\d, \s, \w) ou des idées ({3,10})
Expressions régulières en Python

Qu'est-ce qu'une expression régulière ?

REGular EXpression ou regex :

Chaîne combinant des caractères ordinaires et des métacaractères spéciaux qui décrit des motifs pour repérer du texte ou des positions dans un texte

  • Les métacaractères représentent des types de caractères (\d, \s, \w) ou des idées ({3,10})
Expressions régulières en Python

Qu'est-ce qu'une expression régulière ?

REGular EXpression ou regex :

Chaîne combinant des caractères ordinaires et des métacaractères spéciaux qui décrit des motifs pour repérer du texte ou des positions dans un texte

  • Motif : une séquence de caractères correspondant à des mots ou à de la ponctuation
Expressions régulières en Python

Qu'est-ce qu'une expression régulière ?

REGular EXpression ou regex :

Chaîne combinant des caractères ordinaires et des métacaractères spéciaux qui décrit des motifs pour repérer du texte ou des positions dans un texte

  • Usage de la correspondance de motifs :

    • Rechercher et remplacer du texte
    • Valider des chaînes
  • Très puissant et rapide

Expressions régulières en Python

Le module re

import re
  • Repérer toutes les correspondances d'un motif :

re.findall(r"#movies", "Love #movies! I had fun yesterday going to the #movies")
['#movies', '#movies']
Expressions régulières en Python

Le module re

import re
  • Scinder une chaîne à chaque correspondance :

re.split(r"!", "Nice Place to eat! I'll come back! Excellent meat!")
['Nice Place to eat', " I'll come back", ' Excellent meat', '']
Expressions régulières en Python

Le module re

import re
  • Remplacer une ou plusieurs correspondances par une chaîne :

re.sub(r"yellow", "nice", "I have a yellow car and a yellow house in a yellow neighborhood")
'I have a nice car and a nice house in a nice neighborhood'
Expressions régulières en Python

Métacaractères pris en charge

re.findall(r"User\d", "The winners are: User9, UserN, User8")
['User9', 'User8']

re.findall(r"User\D", "The winners are: User9, UserN, User8")
['UserN']
Expressions régulières en Python

Métacaractères pris en charge

re.findall(r"User\w", "The winners are: User9, UserN, User8")
['User9', 'UserN', 'User8']

re.findall(r"\W\d", "This skirt is on sale, only $5 today!")
['$5']
Expressions régulières en Python

Métacaractères pris en charge

re.findall(r"Data\sScience", "I enjoy learning Data Science")
['Data Science']

re.sub(r"ice\Scream", "ice cream", "I really like ice-cream")
'I really like ice cream'
Expressions régulières en Python

Passons à la pratique !

Expressions régulières en Python

Preparing Video For Download...