J'ai une liste testList
qui contient un tas de chaînes. Je voudrais ajouter une nouvelle chaîne dans le testList
uniquement si elle n'existe pas déjà dans la liste. Par conséquent, je dois effectuer une recherche insensible à la casse dans la liste et la rendre efficace. Je ne peux pas utiliser Contains
car cela ne prend pas en compte le boîtier. Je ne veux pas non plus utiliser ToUpper/ToLower
pour des raisons de performances. Je suis tombé sur cette méthode, qui fonctionne:
if(testList.FindAll(x => x.IndexOf(keyword,
StringComparison.OrdinalIgnoreCase) >= 0).Count > 0)
Console.WriteLine("Found in list");
Cela fonctionne, mais cela correspond également à des mots partiels. Si la liste contient «chèvre», je ne peux pas ajouter «avoine» car il prétend que «avoine» est déjà dans la liste. Existe-t-il un moyen de rechercher efficacement des listes sans tenir compte de la casse, où les mots doivent correspondre exactement? Merci