c#List<string>截取指定字符串之间的字符串,Linq
时间: 2025-01-18 22:03:37 浏览: 59
在C#中,使用LINQ截取List<string>中指定字符串之间的字符串可以通过以下步骤实现:
1. 找到包含起始字符串和结束字符串的索引。
2. 截取这两个索引之间的子字符串。
以下是一个示例代码,演示了如何实现这个功能:
```csharp
using System;
using System.Collections.Generic;
using System.Linq;
class Program
{
static void Main()
{
List<string> list = new List<string> { "start", "data1", "data2", "end", "start", "data3", "end" };
string startTag = "start";
string endTag = "end";
List<string> result = ExtractStringsBetweenTags(list, startTag, endTag);
foreach (var item in result)
{
Console.WriteLine(item);
}
}
static List<string> ExtractStringsBetweenTags(List<string> list, string startTag, string endTag)
{
List<string> extractedStrings = new List<string>();
int startIndex = 0;
while (startIndex < list.Count)
{
int start = list.FindIndex(startIndex, s => s == startTag);
if (start == -1)
break;
int end = list.FindIndex(start + 1, s => s == endTag);
if (end == -1)
break;
List<string> subList = list.Skip(start + 1).Take(end - start - 1).ToList();
extractedStrings.AddRange(subList);
startIndex = end + 1;
}
return extractedStrings;
}
}
```
在这个示例中,`ExtractStringsBetweenTags` 方法接受一个字符串列表、起始标签和结束标签作为参数。它返回一个新的列表,其中包含起始标签和结束标签之间的所有字符串。
阅读全文
相关推荐


















