"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Comment puis-je trouver toutes les occurrences d'une sous-chaîne dans une chaîne plus grande en C #?

Comment puis-je trouver toutes les occurrences d'une sous-chaîne dans une chaîne plus grande en C #?

Publié le 2025-03-23
Parcourir:974

How Can I Find All Occurrences of a Substring within a Larger String in C#?

Trouver toutes les positions de sous-chaîne dans une chaîne plus grande en C #

lorsque vous travaillez avec de grandes chaînes, la localisation de toutes les instances d'un sous-chaîne spécifique peut être cruciale pour l'analyse de l'analyse et des données. Cet article aborde le défi de trouver toutes ces instances et de stocker leurs index dans une liste.

Instruction Problème

Vous avez une grande chaîne que vous devez analyser. Dans cette chaîne, vous devez identifier et stocker les positions de chaque occurrence d'une sous-chaîne spécifique. Supposons que l'exemple de chaîne est "Extract \" (moi, j'ai beaucoup beaucoup. De] ponctuation. "Vous souhaitez trouver toutes les occurrences de cette sous-chaîne dans la plus grande chaîne et ajouter leurs index à une liste. Une substratage. if (string.isnullorempty (valeur)) Jetez une nouvelle argument en conception ("la chaîne à trouver peut ne pas être vide", "valeur"); List indexes = new list (); pour (int index = 0 ;; index = value.length) { index = str.indexof (valeur, index); if (index == -1) Index de retour; indexes.add (index); } }

Méthode 2: Alternativement, un itérateur peut également être utilisé pour produire les index séquentiellement:

public static ienumerable allindexesof (cette chaîne str, string value) { if (string.isnullorempty (valeur)) Jetez une nouvelle argument en conception ("la chaîne à trouver peut ne pas être vide", "valeur"); pour (int index = 0 ;; index = value.length) { index = str.indexof (valeur, index); if (index == -1) casser; Indice de retour de rendement; } }

Ces deux méthodes peuvent être facilement ajoutées à n'importe quel objet String, ce qui rend pratique de trouver toutes les positions de substrat. Par exemple, la ligne suivante trouverait toutes les occurrences de sous-chaîne "foo" dans la chaîne "FoostringFoobar":

liste indexes = "FoostringFoobar" .AlLindexesof ("Foo");

Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3