gpt4 book ai didi

c# - 仅对偶数行应用 "where"子句 (LINQ) [C#]

转载 作者:太空宇宙 更新时间:2023-11-03 18:24:48 25 4
gpt4 key购买 nike

我有一个字符串,它在交替的行中包含两种不同类型的数据(即两行构成一条记录)。我只想选择第二个长度(即偶数行)小于 1000 的记录。

我已经试过了,但结果是只选择了偶数th 行并丢弃了奇数行:

var lessthan1000Length = recordsFile.Where((src, index) => src.Length<1000 && index%2 != 0);

来自记录文件的示例数据

2012-12-04 | 10:45 AM | Lahore
Added H2SO4 in the solution. Kept it in the lab temperature for 10 minutes
2012-12-04 | 10:55 AM | Lahore
Observed the pH of the solution.
2012-12-04 | 11:20 AM | Lahore
Neutralized the solution to maintain the pH in 6-8 range

感谢您的指导。

P.S:请注意,结果需要以 List<string> 的形式出现因为我们必须从中创建一个新的数据集。

最佳答案

var odds = recordsFile.Where((str, index) => index % 2 == 0);
var evens = recordsFile.Where((str, index) => index % 2 == 1);

var records = odds.Zip(evens, (odd, even) => new { odd, even })
.Where(pair => pair.even.Length < 1000);

foreach (var record in records)
Console.WriteLine(record);

关于c# - 仅对偶数行应用 "where"子句 (LINQ) [C#],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37233103/

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