我有两个包含中文字符的字符串,我想查看第一个字符串是否包含第二个字符串。但是,只使用String.Contains()不起作用。有没有人知道另一种方法?
string c1 = " 未送出的礼物 dons non-donnés ";
string c2 = " 未送出的礼物 ";
if(c1.Contains(c2))
{
//this never happens but it should
}
答案 0 :(得分:3)
第一个变量是简体中文,而另一个是中国传统。虽然当我踩着我的代码时它们看起来一样,但它们实际上是不同的,因此为什么if语句从未进入过。
答案 1 :(得分:2)
在调用String.Contains()
之前对字符串使用String.Normalize()
方法:
string c1 = string.Normalize(" 未送出的礼物 dons non-donnés ");
string c2 = string.Normalize(" 未送出的礼物 ");
if(c1.Contains(c2))
{
//...
}