我们可以使用StringComparer对包括特殊字符在内的所有字符串进行排序吗?

时间:2019-06-04 09:15:29

标签: c#

我已使用StringComparer.Ordinal对字符串列表进行排序。它对包括特殊字符(\\除外)的字符串进行排序。
是否有其他选项可以对\\进行排序而无需编写用户定义的代码?

尝试以下代码:

Var string={"#a","\\b","c","1"}
Array.Sort(string,StringComparer.Ordinal)

我希望输出为

#a \\b 1 c

但实际输出是

#a 1 c \\b

1 个答案:

答案 0 :(得分:2)

#的代码点是35,1是49,\是92,a / b / c是97/98/99

输出:

var arr = new[] { "#a", "\\b", "c", "1" };
Array.Sort(arr, StringComparer.Ordinal);
Console.WriteLine(string.Join(" ", arr));

是:

#a 1 \b c

所以...它正在按预期方式工作,并按其序号排序。