gpt4 book ai didi

c# - 使用 C# Lambda 分割字符串和搜索值

转载 作者:行者123 更新时间:2023-12-02 20:25:38 26 4
gpt4 key购买 nike

我有一个具有以下值的字符串:

0:12211,90:33221,23:09011

在每对中,第一个值(:(冒号)之前)是员工 ID,后面的第二个值是工资单 ID。

因此,如果我现在想获取员工 ID 23 的工资单 ID,我必须这样做:

var arrayValues=mystring.split(',');

然后对每个arrayValues执行相同的操作:

var employeeData = arrayValue.split(':');

这样我就能得到 key 和值。

Is there a way to get the Payroll ID by a given employee id using lambda?

如果employeeId不在字符串中,那么默认情况下它应该返回employeeid 0零的工资单ID。

最佳答案

使用 Linq 管道和匿名对象:

"0:12211,90:33221,23:09011"
.Split(',')
.Select(x => x.Split(':'))
.Select(x => new { employeeId = x[0], payrollId = x[1] })
.Where(x=> x.employeeId == "23")

结果如下:

{
employeeId = "23",
payrollId = "09011"
}

这三行代表您的数据处理和投影逻辑:

.Split(',')
.Select(x => x.Split(':'))
.Select(x => new { employeeId = x[0], payrollId = x[1] })

然后,您可以在第二个 Select 之后使用 Where 添加任何过滤逻辑

关于c# - 使用 C# Lambda 分割字符串和搜索值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50052655/

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