[英]Make string comparison case-insensitive for .net winforms application
对于.net winforms应用程序,需要使字符串比较大小写不敏感。 在我的代码中比较字符串时,这不是问题,但是我到处都需要它。 例如:有一个从SQL数据中填充项目的组合框,其中value成员是大写字符串,但是绑定到该组合框的实体字段作为value允许值(字符串)为小写。 其余元素相同。
您不能更改.net中字符串的默认比较。 .net是区分大小写的语言。 它具有使用不同级别的区分大小写来比较字符串的特定方法,但是(谢天谢地)没有全局设置。
您可以使用此:
string.Equals(a, b, StringComparison.CurrentCultureIgnoreCase);
或扩展方法:
public static class StringExtensions
{
public static bool Contains(this string source, string value, StringComparison compareMode)
{
if (string.IsNullOrEmpty(source))
return false;
return source.IndexOf(value, compareMode) >= 0;
}
}
您可以这样称呼它:
bool result = "This is a try".Contains("TRY",
StringComparison.InvariantCultureIgnoreCase);
Console.WriteLine(result);
采用
if (string1.ToLower().Equals(string2.ToLower()))
{
#something
}
没有代码,没有其他建议可以为您提供:/
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.