web-dev-qa-db-fra.com

Comment rendre String.Contains insensible à la casse?

Comment puis-je rendre les éléments suivants insensibles à la casse?

myString1.Contains("AbC")
69
CJ7

Vous pouvez créer votre propre méthode d'extension pour faire ceci:

public static bool Contains(this string source, string toCheck, StringComparison comp)
  {
    return source != null && toCheck != null && source.IndexOf(toCheck, comp) >= 0;
  }

Et puis appelez:

 mystring.Contains(myStringToCheck, StringComparison.OrdinalIgnoreCase);
130
Tobia Zambon

Vous pouvez utiliser:

if (myString1.IndexOf("AbC", StringComparison.OrdinalIgnoreCase) >=0) {
    //...
}

Cela fonctionne avec n'importe quelle version .NET.

43
joe
bool b = list.Contains("Hello", StringComparer.CurrentCultureIgnoreCase);

[EDIT] code d'extension:

public static bool Contains(this string source, string cont
                                                    , StringComparison compare)
{
    return source.IndexOf(cont, compare) >= 0;
}

Cela pourrait fonctionner :)

10
Kamil Budziewski