オブジェクトに対して LINQ クエリを実行したかったのですが、 をMatchCollection
実装していないためICollection<T>
、これは不可能であることがわかりましたICollection
。
コードの簡潔さだけでなく、パフォーマンスとメモリ使用量の両方の観点から、非ジェネリック コレクションで LINQ を使用するための最良のオプションは何ですか?
(興味がある場合は、非 LINQuified コードを次に示します:)
MatchCollection fieldValues = Regex.Matches(fieldValue, @"(?<id>\d+);#(?<text>[^;|^$]+)");
foreach (Match m in fieldValues)
{
if (m.Groups["text"].Value.Equals(someString))
{
// Do stuff
}
}