关于C#:如何使String.Contains不区分大小写?

How to make String.Contains case insensitive?

本问题已经有最佳答案,请猛点这里访问。

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

1
myString1.Contains("AbC")


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

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

然后呼叫:

1
 mystring.Contains(myStringToCheck, StringComparison.OrdinalIgnoreCase);


你可以使用:

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

这适用于任何.NET版本。


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

[编辑]扩展代码:

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

这是可行的:)