您好我有一个包含大量数据的报告文件,我需要将其拆分但报告名称。
因此,每个报告都标记为“Report1”,然后有一些数据,然后是“Report1End”,然后下一个报告标签“Report2”例如开始重复直到文件末尾。
我希望能够拥有可以将文件位置、Report1 和 Report1End 传递给的方法,然后让它使用 Report1 的数据创建一个新文件。
现在的文件示例
随机垃圾
Report1 一些东西
一些东西
一些东西
一些东西
Report1End随机垃圾
Report2
一些东西
一些东西
一些东西
一些东西
Report2End随机垃圾随机垃圾
我希望输出文件的示例
Report2
一些东西
一些东西
一些东西
一些东西
Report2End
感谢您的帮助,我使用了下面的示例并对其进行了一些更改,似乎可以 100% 满足我的需要。
static IList<string> LinesBetween(string path, string start, string end)
{
var lines = new List<string>();
var foundStart = false;
foreach (var line in File.ReadLines(path))
{
Match SMatch = Regex.Match(line, start, RegexOptions.IgnoreCase);
if (!foundStart && SMatch.Success)
{ foundStart = true; }
if (foundStart)
{
Match EMatch = Regex.Match(line, end, RegexOptions.IgnoreCase);
if (EMatch.Success)
{ lines.Add(line); break; }
else { lines.Add(line); }
}
}
return lines;
}