2017-03-23 8 views
2

は、このようなリストを考えますそれ以降のすべての要素。上記の例では、私はこの結果をみたい:項目を選択した文字が最初に出現した後

["1995>Work Photos", "Kevin", "and", "Emma", "Holiday Party>Karaoke"] 

私はループスルー明らかに可能性があり、それを手動で行うが、エレガントなワンライナーがそこにありますようにそれは感じています。

var found = false; 
var filtered = new List<string>(); 
foreach (var itm in list){ 
    if (itm.Contains(">")) found = true; 
    if (found) filtered.Add(itm); 
} 
Console.WriteLine(filtered); 
+0

ここでは、マニュアルの試みです。私が紛失しているエレガントなLINQクエリがあるかどうかは不思議です。 –

+0

なぜdownvotes? –

答えて

6

私はあなたがSkipWhile拡張メソッドを求めていると思う:私はすでにループを使用してそれをやった

var ar = new string []{ "singing", "office", "1995>Work Photos", "Kevin", "and", "Emma", "Holiday Party>Karaoke"}; 
var r= ar.SkipWhile(s => !s.Contains(">")); 
+0

ああ、もちろん。これは完全に機能します。ありがとう。 –

+0

あなたは私の友人を歓迎します;) – octavioccl

関連する問題