Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/132.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 查询包含任何字符串的对象列表_C#_Linq - Fatal编程技术网

C# 查询包含任何字符串的对象列表

C# 查询包含任何字符串的对象列表,c#,linq,C#,Linq,我使用此表达式按特定属性在对象列表中搜索: var result = myObject.Where(o => o.SearchString.Contains(searchValue)); 它适用于单个值。searchValue是用户传递的字符串。用户可以传递一个或多个由空格分隔的单词。是否有任何方法可以过滤包含任何传递单词的对象 我可以通过循环来实现这一点,在以前的结果中搜索一个新词,但它看起来并不优雅。@grantwiney:或者构建一个正则表达式。谢谢@SLaks,这正是我的想法,一

我使用此表达式按特定属性在对象列表中搜索:

var result = myObject.Where(o => o.SearchString.Contains(searchValue));
它适用于单个值。searchValue是用户传递的字符串。用户可以传递一个或多个由空格分隔的单词。是否有任何方法可以过滤包含任何传递单词的对象


我可以通过循环来实现这一点,在以前的结果中搜索一个新词,但它看起来并不优雅。

@grantwiney:或者构建一个正则表达式。谢谢@SLaks,这正是我的想法,一行,没有循环。如果您将.Any更改为.All,则结果将只包括所有匹配项。@peter duniho我不知道为什么标记为重复项。奎斯汀号也差不多,但不是复制品。另一个问题是如何检查字符串列表中的元素。但是我想做的是基于一个具有单个LINQ表达式的属性过滤对象集合。如果我使用您标记为复制的解决方案,我将不得不使用循环,我在问题中指出,我不希望使用循环。
myObject.Where(o => words.Any(o.SearchString.Contains))