如果我要对两个字符串进行排序,cafe 和 cafe 是否有最佳实践来遵循哪个字母先出现?我在 javascript 中测试了 localeCompare,cafe 出现在 cafe 之前,但我不明白为什么。
问问题
218 次
2 回答
4
最佳做法是先不使用变音符号进行排序,即。咖啡馆先于咖啡馆。
localeCompare
通过去除变音符号来工作,因此排序顺序不能反映真实的单词,因为café变成cafe
您可以在此处阅读有关 localeCompare 的更多信息:
于 2013-07-03T18:01:32.433 回答
2
https://en.wikipedia.org/wiki/Collation
文本的排序方式取决于它是如何完成的。
一种传统是字符的“US-ASCII”表示,特别是在 C 编程语言中。当文本根据 ASCII 排序时,顺序仅取决于 ASCII 规范中每个字符的数值。有时这称为“C”语言环境。
现代软件通常应该使用合适的语言环境,以便按照人们期望的方式进行排序,而不管计算机使用的字符的数字表示形式如何。
于 2013-07-03T18:02:13.040 回答