使用Linq搜索列表内容

时间:2013-03-28 05:48:35

标签: .net linq c#-4.0 linq-to-objects

我有对象列表,其中包含以下格式的值

2$FirstLevel+HRMS

2#40#56$SecondLevelOperation+Add

2#60$SecondLevel+dffddfdf

使用Linq我想要选择包含'2'值的记录,并且不包含'Operation'字样。这意味着它应该只选择第一个和第三个值而不是第二个值。如何存档?

1 个答案:

答案 0 :(得分:1)

由于您表明您有一个对象列表,我不认为它是List<string>(或其他可枚举的字符串)。如果是,请省略OfType<string>,因为它是多余的。除此之外,以下代码可以帮助您入门。

var results = list.OfType<string>().Where(item => item.Contains("2") && !item.Contains("Operation"));

如果列表中的任何项可能为null,您可能希望添加适当的空检查(或处理)以适应这些条目。