Trouvez tout le nombre de fois dans le caractère spécifique ou la sous-position dans une chaîne donnée dans un .NET. Cet article se concentre sur la méthode la plus efficace et la plus pratique, en particulier lorsque la barre oblique (/) dans la chaîne statistique.
Tout d'abord, vous pouvez envisager d'utiliser le remplacement des caractères, par exemple:
ou, pour une sous-string d'une longueur de plus d'un caractère, vous pouvez utiliser:
string source = "/once/upon/a/time/"; int count = source.Length - source.Replace("/", "").Length;
Mais pour les utilisateurs .NET 3.5, la solution plus concise et efficace était d'utiliser LINQ:
string haystack = "/once/upon/a/time/"; string needle = "/"; int needleCount = (haystack.Length - haystack.Replace(needle, "").Length) / needle.Length;
ou, vous pouvez choisir:
int count = source.Count(f => f == '/');
Étonnamment, la méthode initiale de suppression des caractères est environ 30% plus rapide que la méthode LINQ ou Split. Le test de référence de la chaîne "/ une fois / on / a / time /" génère les résultats du chronographe suivant:
int count = source.Split('/').Length - 1;
Méthode de remplacement des caractères: 12 secondes
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!