c# linq 如果项目在列表中并从列表中获取匹配的项目

Try*_*ock 1 c# linq contains list

如果我的列表包含:英国猫、法国猫、日本狗、西班牙狗

我有一个项目:狗

我不仅要查看列表是否包含我的项目,还要返回匹配的项目,所以我希望:日本狗、西班牙狗

我已经使用以下代码查看该项目是否在列表中:

if (myList.Any(myItem.ToLower().Contains)) { }
Run Code Online (Sandbox Code Playgroud)

Pin*_*nx0 5

我想你正在寻找这样的东西,使用where条款:

string filter = "dog";
IEnumerable<string> filteredItems = myList.Where(m => m.ToLower().Contains(filter.ToLower()));
Run Code Online (Sandbox Code Playgroud)