1
string s =@"­";
string r = HttpUtility.HtmlDecode(s);

string r3 = string.Format("1{0}Jan{0}2007",r);
Console.WriteLine(r3);
if(r3 == "1-Jan-2007")
{
    Console.WriteLine("Equal");
    Console.WriteLine("1-Jan-2007");
}
else
{
    Console.WriteLine("Not Equal");
    Console.WriteLine("1-Jan-2007");

}

输出是

2007 年 1 月 1 日不等于 2007 年 1 月 1 日

但是当我用“-”替换 r 时,即 string.Format("1{0}Jan{0}2007","-"); 输出是

2007 年 1 月 1 日 等于 2007 年 1 月 1 日

4

2 回答 2

9

­是 Unicode 字符“软连字符”(U+00AD)。虽然它看起来与 Unicode 字符 'HYPHEN-MINUS' (U+002D) 非常相似,但这两个字符并不相同。

于 2013-02-07T08:40:47.243 回答
0

试试这个:

if(r3.Equals("1-Jan-2007", StringComparison.InvariantCultureIgnoreCase))
于 2013-02-07T08:39:13.240 回答