首页 文章

如何使用IBM ICU collator处理特殊字符?

提问于
浏览
0

我们正在使用IBM ICU Collator来排序我们的一些内部字符串列表 . 那些字符串列表有特殊字符,如0x1,0x2,0x3来分隔一些内部结构,字符串列表也可能包含一些混合语言 .

然后我们发现IBM ICU Collator以意想不到的方式对它们进行排序,例如,我们有字符串:

firstName
firstName\x1Account Name
firstName - lastName

\ x1表示十进制值为1的字符 .

我们希望排序能够保持顺序,但是它会在英语语言环境中提供以下结果:

firstName
firstName - lastName
firstName\x1Account Name

我们想知道是否有任何设置,以便我们可以使用小于0x5的特殊字符 .

谢谢 .

1 回答

  • 0

    我建议只将各个子字段排序在一起 . 除此之外,您可以附加一个规则字符串,例如 & \uFFFF = \u0001 = \u0002 = \u0003 = \u0004 = \u0005 ,它会说0x1,2,3,4,5比任何其他文本都排序 .

相关问题