【发布时间】:2017-02-21 00:41:03
【问题描述】:
我是 Visual Studio 的新手,我正在尝试学习一些简单的任务。 我得到了一个比较两个字符串(last name 和 first name)的代码
private bool compareNames(String value1, String value2)
{
if (value1 != null && value2 != null && value1.Trim().ToLower(). Equals(value2.Trim().ToLower()))
{
return true;
}
return false;
}
上面的代码忽略了区分大小写,但我想要做的是也忽略像 ăîşéááö 这样的特殊字符。
我尝试使用 Normalize() 来完成这项任务,但它似乎不起作用。
private bool compareNames(String value1, String value2)
{
if (value1 != null && value2 != null && value1.Trim().ToLower(). Equals(value2.Trim().ToLower()))
{
return true;
}
else if (value1 != null && value2 != null && value1.Trim().Normalize().Equals(value2.Trim().Normalize()))
{
return true;
}
return false;
}
感谢任何帮助!
【问题讨论】:
-
您是否尝试过这里的解决方案 - stackoverflow.com/questions/20674577/…?
-
感谢您的回复。我已经尝试过这种方式 if (value1 != null && value2 != null && value1.Trim().Normalize(NormalizationForm.FormKD).Equals(value2.Trim().Normalize(NormalizationForm.FormKD))) {返回真; } 但它似乎也不起作用。
-
我的意思是 RemoveDiacritics 方法。
-
哦,谢谢,错过了那部分。我读过几篇类似的帖子,最终得到了上面的解决方案。但它适用于 RemoveDiacritics 方法。
标签: c# string compare normalize