我有一個 Blazor Server .Net 6 應用程式,我想使用 LINQ 決議包含將在下拉串列中使用的季度 - 年(計數)的字串。但我想先訂購最新的串列。因為它是一個字串,所以我不能在 LINQ 中使用正常的 Order By
Example data:
Q4 – 2022 (7)
Q3 – 2022 (9)
Q2 – 2022 (10)
Q1 – 2022 (15)
Q4 – 2021 (18)
Q3 – 2021 (5)
Q2 – 2021 (4)
Q1 – 2021 (1)
任何想法我如何訂購此字串,以便資料始終按上述順序顯示
TIA
uj5u.com熱心網友回復:
只要您的資料格式一致,您就可以使用OrderByand 。ThenByRange
var data = new string[] {
"Q4 – 2022 (7)",
"Q3 – 2022 (9)",
"Q2 – 2022 (10)",
"Q1 – 2022 (15)",
"Q4 – 2021 (18)",
"Q3 – 2021 (5)",
"Q2 – 2021 (4)",
"Q1 – 2021 (1)"};
var orderedData = data.OrderBy(d=> d[5..9]).ThenBy(d => d[1..2]);
這按位置 6 到 9(年份)的字符排序,然后按位置 1 到 2(季度)的字符排序。 至關重要的是,資料始終與該模式匹配才能正常作業。
試試看
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/444963.html
上一篇:php中的正則運算式不包括值
下一篇:正則運算式重復可選組
