我有一个string
,我想保留最重复的单词。并且,我想从该list of strings
中排除一个string
。经过bool
和string
之后,我只能返回list
,这将得到我想要的结果。但是,如何从该方法而不是布尔值返回string
?我尝试了以下方法:
//Fields
private String textOnBook = "alis and joe went to the store to buy fish and salad salad is joe favorite food";
private List<String> excludeFromText = new List<string>() {"and", "he", "the", "to", "is"};
public List<String> MostUsedWords(String textOnBook, List<String> excludeFromText)
{
var word = textOnBook.Split(' ');
for (int i = 0; i < word.Length; i++)
{
var result = excludeFromText.Remove(word[i]);
Console.WriteLine(result);
}
return null;
}
非常感谢您的帮助,和平!!
答案 0 :(得分:2)
我建议下面的approach(输出joe
和salad
)。
两个GroupBy
允许您将单词分组,然后算出每个单词有多少个实例。 OrderByDescending
和First
可让您找到最常用的单词。 SelectMany
然后提取这些单词,并且Except
排除您要排除的特定单词(例如and
)(Where
是处理{{1 }}是一个空白字符串)。 textOnBook
用于显示string.Join
的内容。
List<string>