var fullMessagesList = new List<string>(){"This is Apple","This is mango","This is a Lemon","This is a Orange"};var partialMessagesList = new List<string>(){"Apple","mango",};我需要一个带有方法语法的 linq 查询,并从 fullMessagesList 返回“This is a Lemon”、“This is a Orange”。我需要检查另一个列表中每个文本的 contains() 。我已经使用老式的 foreach 循环编写了它,但需要使用方法语法使用 linq 来计算它。var unknownFruites = new List<string>();foreach (var message in fullMessagesList){ var flag = 1; foreach (var partialmessage in partialMessagesList) { if (message.Contains(partialmessage)) { flag = 0; break; } } if (flag == 1) { unknownFruites.Add(message); }}
2 回答
德玛西亚99
TA贡献1770条经验 获得超3个赞
var unknownFruites = fullMessagesList.Where(
message => !partialMessagesList.Any(
p => message.IndexOf(p, StringComparison.InvariantCultureIgnoreCase) >= 0
)
);
此代码的英文解释是“在部分消息列表中选择消息不包含任何字符串的所有消息”。
- 2 回答
- 0 关注
- 196 浏览
添加回答
举报
0/150
提交
取消