包含标点符号的字符串的字典排序

时间:2014-04-14 18:00:30

标签: string punctuation lexicographic

在Gradle中声明依赖项时,我喜欢按字母顺序保留依赖项,但是当我不确定正确的顺序是什么时,我遇到了这种情况。 Wikipedia states“处理包含空格,修改后的字母(如带有变音符号的字母)和非字母字符(如标点符号)的字符串也存在各种约定”,但是没有提及这些约定可能是。

具体来说,我不确定下面列出依赖项的顺序。

compile(group: 'commons-pool', name: 'commons-pool', version: '1.2')
compile(group: 'com.google.protobuf', name: 'protobuf-java', version: '2.0.3')

是否有处理字典排序的字典顺序的文件化惯例,我在哪里可以找到它?

1 个答案:

答案 0 :(得分:1)

查看ASCII值,'。' (ASCII 46)在'm'之前(ASCII 109)。这适用于将基本标点符号与字母进行比较,但是您应该记住,在ASCII资本中,'Z'在小写'a'之前。

UTS #10: Unicode Collation Algorithm涵盖了比较包含标点符号的字符串。

  

此报告是Unicode归类算法(UCA)的规范,详细说明了如何比较两个Unicode字符串,同时保持符合Unicode标准的要求。 UCA还提供默认Unicode排序规则元素表(DUCET)作为指定所有Unicode字符的默认排序顺序的数据。