如何注意“abcDEf”与“abcdef”不同?

时间:2010-08-02 05:35:25

标签: windows

如果"abcDEf""abcdef"不同,如何注意?

在C#winforms中?

提前谢谢

3 个答案:

答案 0 :(得分:2)

bool aredifferent = "abcDEf" != "abcdef";
//OR
string str1 = "abcDEf", str2 = "abcdef";
bool aredifferent2 = str1 != str2;

.NET字符串相等运算符区分大小写,因此如果字符串不同,只需使用它就会返回false。

但是,如果您要确定两个字符串是否相同,但只是大小写不同,那么您可以使用以下内容:

bool differInCase = string.Compare(str1, str2, /*ignoreCase=*/true) == 0 &&
                    string.Compare(str1, str2, /*ignoreCase=*/false) != 0;;

答案 1 :(得分:1)

因为你在Winforms中,我假设你正在使用System ^ String。他们带着一个“平等”成员来照顾这种情况。

http://msdn.microsoft.com/en-us/library/1hkt4325.aspx

System::String::Equals( str1, str2 )

这将返回一个System :: Boolean,它是true / false。

编辑抱歉,我已经在C ++中使用Winforms进行了太长时间......这是C#

System.String.Equals(a, b)

仍返回系统布尔值,该值为true / false。

修改编辑

如果您正在寻找当前文化不区分大小写的同等检查:

System.String.Equals(a,b,System.StringComparison.CurrentCultureIgnoreCase)

在此MSDN页面上查看StringComparison枚举的所有信息:

http://msdn.microsoft.com/en-us/library/system.stringcomparison.aspx

答案 2 :(得分:0)

你在找这样的东西吗?

function IsLowerCase(String input)
{
    return input.Equals( input.ToLower() );
}

如果输入字符串是混合或大写,则此函数将返回false。如果输入字符串是小写的,那么它将返回true。