如何删除列表元素?

时间:2015-06-13 10:00:05

标签: linq c#-4.0

我有两个列表如下。

ball

现在我想从apple列表中删除ball列表中包含这些元素的子字符串的元素。那就是" a"发生在ball列表元素中,我必须从GRANT ALL PRIVILEGES ON siteX.* TO siteX@localhost 列表中删除这些侦听。

我预期的球名单输出应为(b,c)。

2 个答案:

答案 0 :(得分:2)

这里有一个快速的LinqPad

var apple= new List<string>();
apple.Add("a");

var ball= new List<string>();
ball.Add("a,b");
ball.Add("b,c");
ball.Add("c,a");

ball.Where(b=>apple.Any(b.Contains))
    .ToList() //create a duplicate, also lists have ForEach
    .ForEach(b=>ball.Remove(b));

ball.Dump();

输出是:

b,c

答案 1 :(得分:1)

你可以试试这个:

ball = ball.Where(b => !apple.Any(a => b.Contains(a))).ToList();