我在对具有整数值的字符串列表进行排序时遇到一个奇怪的问题。然而,某些值可以以某些字符作为前缀。
e.g.
// 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# 有什么解决方案吗?
您正在寻找Alphanum算法 http://www.davekoelle.com/alphanum.html。幸运的是,已经存在许多实现。看here http://www.davekoelle.com/alphanum.html.