Expression régulière pour valider numéro téléphone en C#

Dans presque tous les cas, il est recommandé de valider la saisie de l’utilisateur pour plusieurs raisons (sécurité, fiabilité, etc.). Dans ce tutoriel nous allons découvrir comment écrire une classe statique pouvant être appliquée pour la validation du numéro de téléphone en C#.
 
 

Exemple :

Dans cet exemple, nous pouvons déterminer si l’utilisateur a entré un numéro de téléphone dans un format commun comprenant 0123456789, 012-345-6789, (012)-345-6789, (012)3456789, 012 345 6789, (012) 345-6789, 012.345.6789 et toutes les combinaisons associées.

using System;
using System.Text.RegularExpressions;

public static class PhoneNumber
{
  // Expression régulière utilisée pour valider un numéro de téléphone.
  public const string motif = @"^\(?([0-9]{3})\)?[-. ]?([0-9]{3})[-. ]?([0-9]{4})$";

  public static bool IsPhoneNbr(string number)
  {
     if (number != null) return Regex.IsMatch(number, motif);
     else return false;
  }
}  

public class Program {
    public static void Main(string[] args) {
        Console.WriteLine(PhoneNumber.IsPhoneNbr("012.345.6789"));
    }
}

La sortie :

True

 

Expression regex pour valider un numéro de téléphone en France

Si vous souhaitez utiliser une expression régulière pour valider un numéro de téléphone suivi du code de pays. Par exemple, si vous souhaitez valider les numéros de téléphone en France suivis de +33, vous pouvez utiliser le regx suivant:

string motif = @"^([\+]?33[-]?|[0])?[1-9][0-9]{8}$";

Pour vérifier :

Console.WriteLine(PhoneNumber.IsPhoneNbr("+33298765432"));  //True
qcm-csharp

Laisser un commentaire

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