Tutoriel de la Fonction REGEXREPLACE dans Excel

Version: Microsoft 365
dernière mise à jour:
Astuce : Utilisez ⬆️ ⬇️ pour faire défiler la page vers le haut et vers le bas. Nous recommandons de naviguer avec un grand écran pour une meilleure expérience de lecture.

1. Introduction à la Fonction REGEXREPLACE

La fonction REGEXREPLACE est un outil puissant dans Excel qui permet aux utilisateurs de trouver et de remplacer des sous-chaînes dans un texte à l'aide d'expressions régulières. Cela est particulièrement utile pour nettoyer des données ou reformater des chaînes en vrac.
Introduction à la Fonction REGEXREPLACE

2. Paramètres de la Fonction REGEXREPLACE

Voici la syntaxe pour utiliser la fonction REGEXREPLACE.
=REGEXREPLACE(text, pattern, replacement, [occurrence], [case_sensitivity])
  • text: obligatoire Le texte ou la référence à une cellule contenant le texte dans lequel vous souhaitez remplacer des chaînes.
  • pattern: obligatoire L'expression régulière ("regex") qui décrit le motif de texte que vous souhaitez remplacer.
  • replacement: obligatoire Le texte par lequel vous souhaitez remplacer les instances du motif.
  • occurrence: optionnel Spécifie quelle instance du motif vous souhaitez remplacer. Par défaut, l'occurrence est 0, ce qui remplace toutes les instances. Un nombre négatif remplace cette instance en cherchant depuis la fin.
  • case_sensitivity: optionnel Détermine si la correspondance est sensible à la casse. Par défaut, la correspondance est sensible à la casse. Entrez l'une des valeurs suivantes :
  • 0: Sensible à la casse
  • 1: Insensible à la casse
  • 3. Scénario Exemple : Mise en Forme du Numéro de Téléphone

    Par exemple, supposons que vous avez une liste de numéros de téléphone dans divers formats et que vous souhaitez les standardiser au format (xxx) xxx-xxxx. L'utilisation de la fonction REGEXREPLACE peut simplifier considérablement ce processus.
    Scénario Exemple : Mise en Forme du Numéro de TéléphoneScénario Exemple : Mise en Forme du Numéro de Téléphone

    4. Commencer avec la fonction REGEXREPLACE

    Tapez sur le clavier : =REGEXREPLACE(, puis sélectionnez A5 comme texte à traiter.
    Commencer avec la fonction REGEXREPLACE

    5. Supprimer les Caractères Non Numériques

    Ici, nous définissons l'expression régulière sur : "\D", qui correspond à tout caractère non numérique, puis nous définissons le remplacement sur une chaîne vide : "".
    Supprimer les Caractères Non Numériques

    6. Appliquer la Fonction REGEXREPLACE

    De cette manière, nous pouvons remplacer tous les caractères non numériques dans les numéros de téléphone par rien.

    Vous pouvez voir que les données semblent inchangées car le format d'origine est déjà numérique. Appliquons le même traitement à d'autres lignes.
    Appliquer la Fonction REGEXREPLACE

    7. Caractères Non Numériques Filtrés avec Succès

    Maintenant, nous avons filtré avec succès les caractères non numériques des numéros de téléphone.
    Caractères Non Numériques Filtrés avec Succès

    8. Mettre en Forme les Numéros de Téléphone

    Nous pouvons aussi convertir les numéros de téléphone dans un format fixe de (xxx) xxx-xxxx.

    L'expression régulière utilisée ici est : "(\d{3})[.-]?\s?(\d{3})[.-]?\s?(\d{4})", et le regex de remplacement est : "($1) $2-$3".
    Mettre en Forme les Numéros de Téléphone

    9. Analyse de Correspondance d'Expression Régulière

    Ici, nous utilisons trois groupes de capture d'expressions régulières pour diviser le numéro de téléphone en trois parties. Chaque partie correspond aux chiffres dans le numéro de téléphone.
    text:
    regularExpr:
    123-456-7890(\d{3})[.-]?\s?(\d{3})[.-]?\s?(\d{4})
    1123(\d{3})
    2-[.-]?\s?
    3456(\d{3})
    4-[.-]?\s?
    57890(\d{4})
    1(\d{3})
    (
    le début du groupe de capture
    \d Chiffre
    correspond à tout caractère numérique (0-9)
    {3} Quantificateur
    correspond à 3 fois au jeton précédent
    )
    la fin du groupe de capture
    2[.-]?\s?
    [.-] Jeu de caractères
    caractère .,   caractère -.
    ? Quantificateur
    correspond entre 0 et 1 fois au jeton précédent.
    \s Jeu de caractères
    tout caractère d'espace (espaces, tabulations, retours à la ligne)
    ? Quantificateur
    correspond entre 0 et 1 fois au jeton précédent.
    3(\d{3})
    (
    le début du groupe de capture
    \d Chiffre
    correspond à tout caractère numérique (0-9)
    {3} Quantificateur
    correspond à 3 fois au jeton précédent
    )
    la fin du groupe de capture
    4[.-]?\s?
    [.-] Jeu de caractères
    caractère .,   caractère -.
    ? Quantificateur
    correspond entre 0 et 1 fois au jeton précédent.
    \s Jeu de caractères
    tout caractère d'espace (espaces, tabulations, retours à la ligne)
    ? Quantificateur
    correspond entre 0 et 1 fois au jeton précédent.
    5(\d{4})
    (
    le début du groupe de capture
    \d Chiffre
    correspond à tout caractère numérique (0-9)
    {4} Quantificateur
    correspond à 4 fois au jeton précédent
    )
    la fin du groupe de capture

    10. Analyse de Remplacement par Expressions Régulières

    Ensuite, nous concaténons les trois parties correspondant à la regex dans le format souhaité.
    text:
    regularExpr:
    (123) 456-6789($1) $2-$3
    1((
    2123$1
    3))
    4
    5456$2
    6--
    76789$3
    1( Caractère
    2$1 Contenu du premier groupe de capture
    3) Caractère
    4 Caractère
    caractère d'espacement
    5$2 Contenu du deuxième groupe de capture
    6- Caractère
    7$3 Contenu du troisième groupe de capture

    11. Numéros de Téléphone Formattés avec Succès

    Ainsi, nous avons formaté avec succès les numéros de téléphone dans le format désiré. Appliquez cela à d'autres lignes pour compléter l'ensemble du processus de nettoyage des données.
    Numéros de Téléphone Formattés avec Succès

    12. Cas d'Échec de Correspondance par Expression Régulière

    Vous pourriez être perplexe que notre expression régulière "(\d{3})[.-]?\s?(\d{3})[.-]?\s?(\d{4})" n'ait pas correspondu aux numéros de téléphone d'origine au format (xxx) xxx-xxxx.

    En fait, la raison est que la fonction REGEXREPLACE renvoie le texte d'origine inchangé si la regex ne correspond pas. Par conséquent, il n'est pas nécessaire de correspondre avec des numéros de téléphone au format d'origine (xxx) xxx-xxxx.
    Cas d'Échec de Correspondance par Expression RégulièreCas d'Échec de Correspondance par Expression Régulière

    13. 🎉 Terminer! 🎉

    Note de l'auteur : J'espère que vous pouvez ressentir l'effort que j'ai mis dans ces tutoriels. J'espère créer une série de tutoriels Excel très faciles à comprendre.

    Si c'est utile, aidez-moi à partager ces tutoriels, merci !


    Suivez-moi:
    Introduction à la Fonction REGEXREPLACE