c# - 使用 Linq 搜索两个项目的组合

标签 c# .net linq

我之前使用以下代码来查找字符串中文本的第一次出现。

int index = myString.IndexOf("AB");

现在我将更改软件,以便它将查找列表中两个字节的第一次出现。可以用 Linq 来做吗?

编辑

该程序的目的是通过串口进行通信。以前程序使用字符串管理数据。但是处理字符串中的二进制数据很奇怪。所以我更改了程序,以便在 List<byte> 中处理数据。相反。

最佳答案

纯 LINQ:

var arr = new byte[] { 1, 2, 3, 4, 5, 6 };

var res = arr.Zip(arr.Skip(1), (a, b) => new { a, b }).Select((x, i) => new { x, i })
    .FirstOrDefault(v => v.x.a == 3 && v.x.b == 4);


if (res != null)
{
    Console.WriteLine(res.i);
}

关于c# - 使用 Linq 搜索两个项目的组合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7094383/

相关文章:

C# - 错误 CS1928 : Checking for list element with derived class

c# - 数据绑定(bind)似乎没有刷新

c# - 使用 linq 按字母顺序对 TreeView 进行排序

asp.net-mvc - LINQ .include()

c# - 将 MP3 从 C# 服务器流式传输到 Android

c# - 如何在 WinRT 中将字符串绘制为位图图像

c# - 如果类继承多次可以慢一些吗?

.net - 我应该为 KR403 Zebra 打印机使用哪个 SDK

.net - .Net 中的自描述类型到底是什么意思?

c# - 如何获得 2 个字符串数组之间的第一个匹配项