Les expressions régulières en C#

Une expression régulière est un motif qui peut être mis en correspondance avec un texte saisi. Le framework .Net fournit un moteur d’expression régulière permettant une telle correspondance. Un motif consiste en un ou plusieurs littéraux.
 
 

Syntaxe des expressions régulières

Les syntaxes de base suivantes sont utilisées pour les expressions régulières.
 

Quantificateurs: *, ?, +.

1. Le quantificateur * correspond au caractère précédent zéro ou plusieurs fois.
 
Exemple :
 

 
2. Le quantificateur + correspond au caractère précédent une fois ou plus.
 
Exemple :
 

 
3. Le quantificateur ? correspond au caractère précédent zéro ou une fois.
 
Exemple :
 

 

Caractères spéciaux: ^, ., $, \d, \w.

1. Le caractère spécial ^ est utilisé pour faire correspondre le début d’une chaîne.
 
Exemple :
 

 
 
2. Le caractère spécial $ est utilisé pour faire correspondre la fin d’une chaîne.
 
Exemple :
 

 
3. Le caractère .(point) correspond n’importe quel caractère qu’une seule fois.
 
Exemple :
 

 
4. Le caractère \d est utilisé pour faire correspondre un caractère numérique [0-9].
 
Exemple :
 

 
5. Le caractère \D est utilisé pour faire correspondre tout caractère non numérique.
 
Exemple :
 

 
6. Le caractère \w est utilisé pour faire correspondre un caractère alphanumérique plus ‘_’ [0-9A-Za-z_].
 
Exemple :
 

 
 
7. Le caractère \W est utilisé pour faire correspondre un caractère non alphanumérique [^0-9A-Za-z_].
 
Exemple :
 

 

Classe de caractère:

Vous pouvez grouper des caractères en les mettant entre crochets.
 
1. [] est utilisé pour faire correspondre une plage de caractères.
 
Exemple :
 

 
2. [^] est utilisé pour faire correspondre tout caractère hormis ceux entre crochets.
 
Exemple :
 

 
3. [a-z] est utilisé pour faire correspondre des caractères alphabétiques de a à z, en minuscules.
 
Exemple :
 

 
4. [0-9] est utilisé pour faire correspondre des chiffres de 0 à 9.
 
Exemple :
 

 
 

Les expressions régulières en C#

La classe Regex est définie dans le namesapce System.Text.RegularExpressions. Le constructeur de la classe Regex prend un motif en tant que paramètre avec d’autres paramètres facultatifs.
 
 
Exemple :

using System;
using System.Text.RegularExpressions;

public class Program {
    public static void Main(string[] args) {
        // Créez un motif pour un mot commençant par la lettre "A" 
        string motif = @"\b[A]\w+";
        // Créer une expression régulière 
        Regex r = new Regex(motif);

        // chaîne de caractéres  
        string Personnes = "Bob, Thomas, Alex, Emily, Aurélien, Alice, Jean, Ali";
        // Récupérer tous les correspondants
        MatchCollection matchedPers = r.Matches(Personnes);
        // Afficher les correspondants
        for (int i = 0; i < matchedPers.Count; i++)
            Console.WriteLine(matchedPers[i].Value);
    }
}

La sortie :

Alex
Aurélien
Alice
Ali
qcm-csharp

Laisser un commentaire

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