首页 > 解决方案 > 如何在使用 Linq 的特定 Capture.Index 之后从 MatchCollection 中获取下一个匹配项

问题描述

我想知道如何在使用 Linq 的特定 Capture.Index 之后从 MatchCollection 中获取下一个匹配项?

假设我有一个 MatchCollection“myMatches”,并且我知道其中一个匹配项的特定 Capture.Index。我现在想在“myMatches”中获得下一场比赛,它的价值,但我不明白如何编写 Linq 查询......

string myNextMatch = myMatches.OfType<Match>().Select(m => m.NextMatch().Value).Where( ??? ).ToString();

我搞砸了这样的事情,但没有任何效果。这里有人可以帮忙吗?谢谢!

标签: c#linq

解决方案


试试这样:

string myNextMatch = myMatches.OfType<Match>().Single(m => m.Index == myKnownIndex).NextMatch().Value;

但要小心.. 如果 Single() 没有找到任何或更多对象,它会抛出异常。


推荐阅读