我在对一个包含整数值的字符串列表进行排序时,遇到了一个奇怪的问题。然而,有些值可能会以一些字符为前缀。
例如:
例如:
// B1, 5, 50, A10, 7, 72, B3, A1, A2
基本上是页面数字,应该像这样排序:
// A1, A2, A10, B1, B3, 5, 7, 50, 72
但如果我使用默认字符串排序,那么它们将会像这样排序
// A1, A10, A2, B1, B3, 5, 50, 7, 72
有没有C#的解决方案?
NaturalStringComparer
(不记得是从哪里获取了基础)。它使用了 Skizz 提到的 Win32 函数 StrCmpLogicalW。http://my.opera.com/Svishy/blog/2009/03/02/natural-sorting - Svish