我有一个日文文本中的数字和英文文本中的数字。
example:
In japanese language six=6
In english language six=6
所以当我比较这个值时,它返回false 我使用了CompareTo()但它没有返回0
如何匹配此值????
答案 0 :(得分:6)
您可以使用Normalize(NormalizationForm.FormKC)
将国际数字减少为英语/阿拉伯语等值。
"6".Normalize(NormalizationForm.FormKC); // returns "6"
"6".Normalize(NormalizationForm.FormKC); // also returns "6"
您可以将比较提取到方法中:
static bool IsEqualAfterNormalizingKC(string s1, string s2) {
if (s1 == null && s2 == null) return true;
if (s1 == null || s2 == null) return false;
return s1.Normalize(NormalizationForm.FormKC) == s2.Normalize(NormalizationForm.FormKC);
}
IsEqualAfterNormalizingKC("6", "6"); // true
答案 1 :(得分:0)
使用.NET的常用解析方法将字符串解析为整数(int
)。然后,比较两个整数。
应对本机表示执行数据比较/解释,在本例中为int
。