是否存在一些确定的排序行惯例(字符)?对于常规表达式,某些约定应起与PCRE相似的作用。
例如,如果尝试使用Sublime Text(Ctrl-F9)和Vim(0A1b-a2_B
)对:%sort
(每个字符单独一行)进行排序,则结果将相同(请参见下面)。但是,我不确定其他编辑器和IDE是否会一样。
-
0
1
2
A
B
_
a
b
答案 0 :(得分:1)
通常,字符是根据其数值排序的。尽管此功能过去仅适用于ASCII字符,但也已被unicode编码采用。 http://www.asciitable.com/
如果没有相反的选择,这是字符排序的事实上的标准。除了实际的字母字符外,顺序有些随意。
答案 1 :(得分:1)
有两种主要的字符串排序方式:
词典编排:代码点值或代码单位值或序列化的代码单位值(字节)的数值。对于某些字符编码,它们将全部相同。该算法非常简单,但是这种方法并不友好。
特定于文化/语言环境:使用每种支持的文化的序数数据库。对于Unicode字符集,它称为CLDR。同样,在对Unicode应用排序时,排序可以考虑字素簇。字素簇是一个基本代码点,后跟一个零个或多个非间距(用作前一个字形的扩展)标记的序列。
对于仅使用一个或两个脚本设计的某些具有一种编码的较旧字符集,这两种方法可能完全相同。