如何将字符串与数组项的特定部分进行比较?

问题描述 投票:0回答:3

我有一个字符串类型的数组arr [],其数组项如下:

arr[0]= "2/13/2019|202"
arr[1]= "2/14/2019|197"
arr[2]= "2/15/2019|101"
arr[4]= "2/16/2019|271"
arr[5]= "2/17/2019|199"

我想获得一个与我的字符串“ 2/15/2019”相匹配的数组项,所以我可以得到“ 2/15/2019 | 101”。简而言之,我只想将我的字符串与array-item字符串进行比较,直到“ |”为止和休息强壮将不考虑进行比较。我怎么得到它?

c# .net
3个回答
1
投票
您可以使用WhereWhere

StartWith


其他资源

StartWith

根据谓词过滤值序列。

var results = arr.Where(x => x.StartsWith("2/15/2019"));

确定此字符串实例的开头是否与指定的字符串。

2
投票
您可以使用Linq来获取所需的数据。

    使用Contains(string)检查是否存在一个或多个符合您条件的元素
  • 如果有的话,从列表中获取第一个(或者您可以将该列表分配给变量并遍历每个变量)
  • 分割值并在|后得到值。
  • Enumerable.Where Method方法之后使用String.StartsWith Method以确保在运行?.时不会出现NullReferenceException。
  • 使用验证以确保结果不为空。
  • FirstOrDefault()
    Split():返回序列的第一个元素,如果找不到元素,则返回默认值

  • 0
    投票
    在何处使用和包含

    var result = arr.FirstOrDefault(x => x.Contains("2/15/2019"))?.Split('|')[1]; // result contains 101

    © www.soinside.com 2019 - 2024. All rights reserved.