使用LINQ,如何在部分字符串属性上过滤集合?

时间:2011-02-21 12:08:12

标签: c# linq ienumerable

我有一个Car对象的集合,

IEnumerable<Car>

我想基于部分字符串匹配(它不必是startwith)返回过滤的汽车对象集合,其中Car.Name属性中包含特定文本。

这可以使用LINQ吗?

4 个答案:

答案 0 :(得分:6)

from c in cars
where c.Name.Contains("certain text")
select c

cars.Where(c => c.Name.Contains("certain text"))

答案 1 :(得分:1)

IEnumerable<Car> cars = ...
var filteredCars = cars.Where(car => car.Name.Contains("your text"));

答案 2 :(得分:1)

您可以使用Contains

var cars = new List<Car>(); //Or whatever makes sense.

var filteredCars = cars.Where(c => c.Name.Contains("searchstring"));

答案 3 :(得分:0)

这可能会做你想要的:

var filteredCars = cars.Where(car => car.Name.Contains("Fiesta"));

您可以根据需要增加谓词的复杂性。