gpt4 book ai didi

c# - 自定义 Linq 排序

转载 作者:太空狗 更新时间:2023-10-29 18:08:01 24 4
gpt4 key购买 nike

我有上千个文件夹,每个文件夹包含一个或多个具有以下名称的文件:

无序:

Alison.extHeather.extMolly.extPaula.extSam.ext

已订购:

Molly.extSam.extHeather.extAlison.extPaula.ext

我想编写一个表达式来按上述方式对这个列表进行排序。

最佳答案

//Creating a dictionary with the custom order
var order = "MSHAP";
var orderDict = order.Select((c,i)=>new {Letter=c, Order=i})
.ToDictionary(o => o.Letter, o => o.Order);

var list = new List<string>{"A.ext", "H.ext", "M.ext", "P.ext", "S.ext"};

//Ordering by the custom criteria
var result = list.OrderBy(item => orderDict[item[0]]);

而不是调用 orderDict[item[0]] 你可以有一个很好的帮助方法来处理边缘情况(不存在的字母,null,等等)。但这就是想法。

关于c# - 自定义 Linq 排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/942039/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com