Maison >développement back-end >C++ >Comment accéder aux groupes de capture nommés dans une expression régulière .NET ?
Accès aux groupes de capture nommés dans les expressions régulières .NET
Lors de l'utilisation d'expressions régulières en C#, il est crucial de comprendre comment accéder aux groupes de capture nommés. Cela vous permet de récupérer facilement des parties spécifiques du texte correspondant.
Dans votre exemple, vous définissez deux groupes de capture nommés : "lien" et "nom". Cependant, vous essayez actuellement d'accéder à ces groupes à l'aide d'un CaptureCollection, qui donne uniquement accès à des groupes sans nom.
Pour accéder à un groupe de capture nommé, vous devez utiliser la propriété GroupCollection de l'objet Match. Chaque objet Match contient une collection de groupes, notamment des groupes nommés et des groupes sans nom. Vous pouvez indexer un GroupCollection en utilisant le nom du groupe de capture pour récupérer les correspondances correspondantes.
Ce qui suit est une version modifiée du code qui montre comment accéder à un groupe de capture nommé :
<code class="language-csharp">string page = Encoding.ASCII.GetString(bytePage); Regex qariRegex = new Regex("<td><a href=\"(?<link>.*?)\">(?<name>.*?)</a></td>"); MatchCollection mc = qariRegex.Matches(page); foreach (Match m in mc) { MessageBox.Show(m.Groups["link"].Value); MessageBox.Show(m.Groups["name"].Value); }</code>
Ce code parcourt la collection d'objets Match et pour chaque correspondance, il utilise une GroupCollection pour accéder aux groupes de capture "lien" et "nom" et afficher leurs valeurs.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!