Cet article a fait l’objet d’une traduction automatique. Pour afficher l’article en anglais, activez la case d’option Anglais. Vous pouvez également afficher le texte anglais dans une fenêtre contextuelle en faisant glisser le pointeur de la souris sur le texte traduit.
Traduction
Anglais

Regex.Matches méthode

 

Date de publication : novembre 2016

Recherche dans une chaîne d'entrée toutes les occurrences d'une expression régulière et retourne toutes les correspondances.

Espace de noms:   System.Text.RegularExpressions
Assembly:  System (dans System.dll)

NomDescription
System_CAPS_pubmethodMatches(String)

Recherche dans la chaîne d'entrée spécifiée toutes les occurrences d'une expression régulière.

System_CAPS_pubmethodMatches(String, Int32)

Recherche dans la chaîne d'entrée spécifiée toutes les occurrences d'une expression régulière, en commençant à la position de démarrage spécifiée dans la chaîne.

System_CAPS_pubmethodSystem_CAPS_staticMatches(String, String)

Recherche dans la chaîne d'entrée spécifiée toutes les occurrences d'une expression régulière spécifiée.

System_CAPS_pubmethodSystem_CAPS_staticMatches(String, String, RegexOptions)

Recherche dans la chaîne d'entrée spécifiée toutes les occurrences d'une expression régulière spécifique, en utilisant les options de correspondance spécifiées.

System_CAPS_pubmethodSystem_CAPS_staticMatches(String, String, RegexOptions, TimeSpan)

Recherche dans la chaîne d'entrée spécifiée toutes les occurrences d'une expression régulière spécifiée, en utilisant les options de correspondance et l'intervalle de délai d'attente spécifiés.

Remarques à l’attention des appelants :

Lorsqu’une tentative de correspondance est répétée en appelant le Matches (méthode), le moteur des expressions régulières destine aux correspondances vides un traitement spécial. En règle générale, le moteur des expressions régulières commence la recherche de la correspondance suivante exactement où la correspondance précédente s’est arrêté. Toutefois, après une correspondance vide, le moteur des expressions régulières avance d’un caractère avant d’essayer la correspondance suivante. Ce comportement garantit que le moteur des expressions régulières doit suivre la chaîne. Sinon, car aucun déplacement vers l’avant n’entraîne pas une correspondance vide, la correspondance suivante commencerait exactement au même endroit que la correspondance précédente et elle correspondrait à plusieurs reprises la même chaîne vide.

Dans l’exemple suivant, le modèle d’expression régulière a* recherche zéro ou plusieurs occurrences de la lettre « a » dans la chaîne « abaabb ». Comme la sortie de l’exemple, résultant MatchCollection objet contient six Match objets. La première tentative de correspondance recherche le premier « a ». La deuxième correspondance démarre exactement où la première correspondance prend fin, avant le premier b ; il trouve aucune occurrence de « a » et retourne une chaîne vide. La troisième correspondance ne commence pas exactement où la deuxième correspondance s’est terminée, car la deuxième correspondance a retourné une chaîne vide. Au lieu de cela, il commence un caractère plus tard, après le premier « b ». La troisième correspondance trouve deux occurrences de « a » et retourne « aa ». La quatrième correspondance commence là où s’est terminée la troisième, avant le deuxième « b » et retourne une chaîne vide. La cinquième tentative de correspondance avance un caractère afin qu’il commence avant le troisième « b » et retourne une chaîne vide. La sixième correspondance commence après le dernier « b » et retourne une chaîne vide à nouveau.

using System;
using System.Text.RegularExpressions;

public class Example
{
   public static void Main()
   {
      string pattern = "a*";
      string input = "abaabb";

      foreach (Match m in Regex.Matches(input, pattern)) 
         Console.WriteLine("'{0}' found at index {1}.", 
                           m.Value, m.Index);
   }
}
// The example displays the following output:
//       'a' found at index 0.
//       '' found at index 1.
//       'aa' found at index 2.
//       '' found at index 4.
//       '' found at index 5.
//       '' found at index 6.
Retour au début
Afficher: