unicode排序背后的理论是什么?我了解它是如何工作的,但我不明白他们为什么决定使用此标准进行排序排序。
似乎当您有两个要比较的字符串时,例如使用 ucol_strcollliter() :
ucol_strcollIter(collator, &stringIter1, &stringIter2, &Status)
然后,假设我这两个字符串是:
string string1 = "hello"
string string2 = "héllo"
在“Secondary”排序规则下,string1 应该排在 string2 之前。其中 string1 和 string2 是根据它们的次要强度进行比较的。
<1 hello
<2 héllo
但
如果您有尾随空格,例如:
string string1 = "hello "
string string2 = "héllo "
那么重音 hello (string2) 将放在 string1 之前。并且,两者都在它们的主要重量上进行比较。
<1 héllo
<1 hello
为什么unicode 排序算法会考虑尾随空格?
这背后有什么原因吗?