假设我有一个看起来像这样的文本文件:
group 1
group 1
arbitrary text
group 1
arbitrary text
group 2
arbitrary text
arbitrary text
group 2
group 2
arbitrary text
#
我想将每组信息保存在自己的列表中,然后停在'#'。
的List1:
group 1
group 1
arbitrary text
group 1
arbitrary text
列表2:
group 2
arbitrary text
arbitrary text
group 2
group 2
arbitrary text
我已经尝试了几件没有接近的东西,我的lambda技能几乎不存在。有人可以帮忙吗?
答案 0 :(得分:1)
从头开始,使用System.Text.RegularExpressions.RegEx类(.NET Framework),这是一个几乎可以做你想要的简单模式:
group\ (\d+)[\w\W]*group\ \1
问题是,它没有捕获下一组开始之前的最后一个'任意文本',并且没有检查#char来停止捕获。但我认为这是一个好的开始:)
Regex regex = new Regex(@"group\ (\d+)[\w\W]*group\ \1", RegexOptions.Multiline);