Exercice Corrigé: Les expressions régulières en Python – Partie 3

Avec des exercices corrigés en Python, vous pratiquerez divers concepts du langage Python. Vous commencerez par des exercices Python de base à des exercices plus avancés. La solution est fournie pour chaque exercice. Vous devez essayer de résoudre chaque problème par vous-même avant de vérifier la solution. Si vous avez des questions concernant chaque problème, nous vous encourageons à les poster sur notre forum.
 
 

Exercice 1:

Écrire un programme Python pour remplacer les espaces blancs par un underscore et vice versa.

Exemple:

Hello Alex Babtise -> Hello_Alex_Babtise
Hello_Alex_Babtise-> Hello Alex Babtise
Solution:

import re
str = 'Hello Alex Babtise'
str =str.replace (" ", "_")
print(str)
str =str.replace ("_", " ")
print(str)

Sortie:

Hello_Alex_Babtise
Hello Alex Babtise
 

Exercice 2:

Écrire un programme Python pour extraire l’année, le mois et la date d’une URL.

Exemple:

https://waytolearnx.com/2024/12/01/python.html -> [('2024', '12', '01')]
Solution:

import re
def extract_date(url):
        return re.findall(r'/(\d{4})/(\d{1,2})/(\d{1,2})/', url)

url= "https://waytolearnx.com/2024/12/01/python.html"
print(extract_date(url))

Sortie:

[('2024', '12', '01')]
 

Exercice 3:

Écrire un programme Python pour convertir une date au format aaaa-mm-jj au format jj-mm-aaaa.

Exemple:

2025-12-01 -> 01-12-2025
Solution:

import re
def changer_format(date):
        return re.sub(r'(\d{4})-(\d{1,2})-(\d{1,2})', '\\3-\\2-\\1', date)

date = "2025-12-01"
print("Date originale: ",date)
print("Nouvelle date: ",changer_format(date))

Sortie:

Date originale:  2025-12-01
Nouvelle date:  01-12-2025
 

Exercice 4:

Ecrivez un programme Python pour déterminer si deux mots dans une liste de mots commencent par la lettre « P ».

Exemple:

["Python PHP", "Python Java", "Python C"] -> ('Python', 'PHP')
Solution:

import re

liste = ["Python PHP", "Python Java", "Python C"]

for w in liste:
    m = re.match("(P\w+)\W(P\w+)", w)
    if m:
        print(m.groups())

Sortie:

('Python', 'PHP')
 

Exercice 5:

Écrire un programme Python pour séparer et afficher les nombres d’une chaîne donnée.

Exemple:

"Un 1, Deux 2, Trois 3" ->
1
2
3
Solution:

import re
str = "Un 1, Deux 2, Trois 3"
res = re.split("\D+", str)
for i in res:
    print(i)

Sortie:

1
2
3
 

Exercice 6:

Ecrivez un programme Python pour trouver tous les mots commençant par ‘a’ ou ‘b’ dans une chaîne donnée.

Exemple:

"alex, bob, ali, oliver, bilal, emily" -> ['alex', 'bob', 'ali', 'bilal']
Solution:

import re
str = "alex, bob, ali, oliver, bilal, emily"
liste = re.findall("[ab]\w+", str)
print(liste)

Sortie:

['alex', 'bob', 'ali', 'bilal']
 

Exercice 7:

Écrire un programme Python pour séparer et afficher les nombres et leur position dans une chaîne de caractères donnée.

Exemple:

"j'ai un revenu de 10000 €" ->
10000
Position: 18
Solution:

import re
str = "j'ai un revenu de 10000 €"
for m in re.finditer("\d+", str):
    print(m.group(0))
    print("Position:", m.start())

Sortie:

10000
Position: 18
 

Exercice 8:

Ecrivez un programme Python pour abréger ‘Quartier’ en ‘Quart.’ dans une chaîne donnée.

Exemple:

"Rue 30, Quartier d'Aix-les-Bains" -> Rue 30, Quart. d'Aix-les-Bains
Solution:

import re
adresse = "Rue 30, Quartier d'Aix-les-Bains"
print(re.sub('Quartier', 'Quart.', adresse))

Sortie:

Rue 30, Quart. d'Aix-les-Bains
 

Exercice 9:

Écrire un programme Python pour remplacer toutes les occurrences d’un espace, d’une virgule ou d’un point par un deux-points.

Exemple:

"Rue 30, Quartier Aix-les-Bains." -> Rue:30::Quartier:Aix-les-Bains:
Solution:

import re
str = "Rue 30, Quartier Aix-les-Bains."
print(re.sub("[ ,.]", ":", str))

Sortie:

Rue:30::Quartier:Aix-les-Bains:
 

Exercice 10:

Écrire un programme Python pour trouver tous les noms de cinq caractères dans une chaîne de caractères.

Exemple:

'alex, bob, ali, oliver, bilal, emily' -> ['bilal', 'emily']
Solution:

import re
str = 'alex, bob, ali, oliver, bilal, emily'
print(re.findall(r"\b\w{5}\b", str))

Sortie:

['bilal', 'emily']
 

Éditeur de code Python: Testez votre code en ligne!


 

QCM Python

2 réflexions sur “Exercice Corrigé: Les expressions régulières en Python – Partie 3

  • février 21, 2025 à 6:26 pm
    Permalien

    Les expressions régulières en Python – Partie 3 exercice 1
    Autre solution possible

    import re
    def remplace(str: str):
        print(re.sub("_"," ", str)) if "_" in str else print(re.sub(" ", "_", str))
    
    remplace("Hello Alex Babtise")
    remplace("Hello_Alex_Babtise")
    Répondre
  • février 21, 2025 à 6:52 pm
    Permalien

    Corrigé: Les expressions régulières en Python – Partie 3 Exercice 2
    Autre solution possible:

    import re
    
    motif="\d+"
    str = "https://waytolearnx.com/2024/12/01/python.html"
    print(re.findall(motif, str))

    remplacer chevrons ouvrants fermants par des doubles cotte

    Répondre

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *