如何使String.Contains不区分大小写?

时间:2013-07-10 06:35:43

标签: c# .net vb.net string case-insensitive

如何使以下不区分大小写?

myString1.Contains("AbC")

3 个答案:

答案 0 :(得分:129)

您可以创建自己的扩展方法来执行此操作:

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

然后致电:

 mystring.Contains(myStringToCheck, StringComparison.OrdinalIgnoreCase);

答案 1 :(得分:43)

您可以使用:

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

适用于任何.NET版本。

答案 2 :(得分:10)

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

[编辑]扩展代码:

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

这可能有效:)