【发布时间】:2012-12-06 12:33:18
【问题描述】:
我正在尝试根据每个字符串中的单词数过滤字符串列表。我假设您将修剪字符串末尾的任何空白,然后计算字符串中剩余的空格数,这样 WordCount = NumberOfSpaces + 1。这是最有效的方法吗?我知道对于基于字符数的过滤,以下工作正常......只是无法弄清楚如何使用 C#/LINQ 简洁地编写它。
if (checkBox_MinMaxChars.Checked)
{
int minChar = int.Parse(numeric_MinChars.Text);
int maxChar = int.Parse(numeric_MaxChars.Text);
myList = myList.Where(x =>
x.Length >= minChar &&
x.Length <= maxChar).ToList();
}
对单词计数有什么想法吗?
更新:这就像一个魅力......谢谢马修:
int minWords = int.Parse(numeric_MinWords.Text);
int maxWords = int.Parse(numeric_MaxWords.Text);
sortBox1 = sortBox1.Where(x => x.Trim().Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries).Count() >= minWords &&
x.Trim().Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries).Count() <= maxWords).ToList();
【问题讨论】:
标签: c# list ienumerable word-count charactercount