Natural Sort Order in C#

后端 未结 17 2536
野性不改
野性不改 2020-11-21 04:54

Anyone have a good resource or provide a sample of a natural order sort in C# for an FileInfo array? I am implementing the IComparer interface in

17条回答
  •  刺人心
    刺人心 (楼主)
    2020-11-21 05:39

    Here is a naive one-line regex-less LINQ way (borrowed from python):

    var alphaStrings = new List() { "10","2","3","4","50","11","100","a12","b12" };
    var orderedString = alphaStrings.OrderBy(g => new Tuple(g.ToCharArray().All(char.IsDigit)? int.Parse(g) : int.MaxValue, g));
    // Order Now: ["2","3","4","10","11","50","100","a12","b12"]
    

提交回复
热议问题