我正在try 比较以下两个角色L和ł,并让c#返回True
也就是说,我有单词przesyłka,我想将其与przesylka进行字符串比较
我try 过以下几种方法,但都返回错误
public static void Main()
{
Console.WriteLine("l".Equals("ł", StringComparison.InvariantCulture));
Console.WriteLine("l".Equals("ł", StringComparison.Ordinal));
Console.WriteLine("l".Equals("ł", StringComparison.OrdinalIgnoreCase));
Console.WriteLine("l".Equals("ł", StringComparison.InvariantCultureIgnoreCase));
Console.WriteLine("l".Equals(RemoveDiacritics("ł"), StringComparison.InvariantCulture));
}
//https://stackoverflow.com/a/368850/2987066
static string RemoveDiacritics(string text)
{
return string.Concat(
text.Normalize(NormalizationForm.FormD)
.Where(ch => CharUnicodeInfo.GetUnicodeCategory(ch)!=
UnicodeCategory.NonSpacingMark)
).Normalize(NormalizationForm.FormC);
}
如你所见,我也try 了一个从this stackoverflow answer开始的变通方法,但也返回了FALSE.
有没有一种方法可以比较c#中的这两个字符,返回TRUE?