我有一系列搜索項和一個句子。我需要測試的一句話包含了所有的搜索詞:如何測試列表a中的所有項目都在列表中b
var searchTerms = "fox jumped".Split(' ');
var sentence = "the quick brown fox jumped over the lazy dog".Split(' ');
var test = sentence.Contains(searchTerms);
我exptected測試爲True - howerver我得到一個編譯錯誤: 「字符串[]」不包含定義「包含」和最好的擴展方法重載'System.Linq.Queryable.Contains(System.Linq.IQueryable,TSource)'有一些無效參數
我應該如何測試該句子包含所有的搜索條件?
將searchTerms.Any(長期= >!sentence.contains(term))執行得更快,還是它們都會編譯爲相同的IL? (得愛IEnumerable) – jbehren 2011-02-11 15:02:36
@jbehren:這太慢了。它是O(n²),因爲它需要每次循環遍歷另一個列表。 – SLaks 2011-02-11 15:03:01