我有一系列搜索词和一个句子。我需要测试该句子是否包含所有搜索词:
var searchTerms = "fox jumped".Split(' ');
var sentence = "the quick brown fox jumped over the lazy dog".Split(' ');
var test = sentence.Contains(searchTerms);
我将测试检测为True - 然后我收到编译错误: 'string []'不包含'Contains'的定义,最好的扩展方法重载'System.Linq.Queryable.Contains(System.Linq.IQueryable,TSource)'有一些无效的参数
我应该如何测试该句子是否包含所有搜索词?
答案 0 :(得分:3)
您正在尝试检查句子中是否有任何搜索字词:
if (!searchTerms.Except(sentence, StringComparer.CurrentCultureIgnoreCase).Any())
答案 1 :(得分:1)
你可以这样做:
//test if all of the terms are in the sentence
searchTerms.All(term => sentence.Contains(term));