LINQ按字搜索2d数组

时间:2017-12-15 18:58:35

标签: c# arrays linq

是否可以使用linq按字搜索?

示例:

我的数组看起来像:

  

AA BB CC DD EE

     

BB CC DD EE FF

     

AA BB CC DD EE

我想返回第一列为" AA"。

的行

我正在使用linq按第一列对数组进行排序:

sorted = array.OrderBy(o => o[1]).ThenBy(t => t[1]).ToArray();

我尝试创造一些想法 Find an item in List by LINQ?

string search = "AA";

sorted = array.Single(s => s == search);

但由于我正在使用2D阵列,它对我不起作用。

我想返回一个像:

这样的数组
  

AA BB CC DD EE

     

AA BB CC DD EE

2 个答案:

答案 0 :(得分:1)

一个简单的where可以解决问题:

var result = array.Where(inner => inner.FirstOrDefault() == "AA");

答案 1 :(得分:1)

尝试类似的东西;

var newArray = array.Where(x => x.Length > 0 && x[0] == "AA").ToArray();

此外,您应该考虑子阵列长度以防止意外退出索引错误。