如何从字符串中获取指定长度的所有单词?

时间:2012-12-05 22:43:48

标签: c# regex linq

我正在为作业编写一个文本分析程序,需要编写一个函数,它将从字符串返回指定长度的所有单词(在这种情况下,所有单词都超过6个字符)。

我找到了很多例子,展示了如何根据长度返回单词组,但没有说明如何在指定长度内获取所有单词

4 个答案:

答案 0 :(得分:2)

static IEnumerable<string> getWordsWithMinLength(string text, int minLength)
{
    string[] words = text.Split();
    return words.Where(w => w.Length >= minLength);
}

答案 1 :(得分:1)

String [] words = text.Split(new char[] {' '},  
    System.StringSplitOptions.RemoveEmptyEntries );
String [] filteredWords = words.Where(w => w.Length>6).ToArray();

答案 2 :(得分:1)

创建字符串列表var list = new List<string>()

循环播放文字中的每个字词,

if (word.Length > 6) { list.Add(word) }

当你完成后,return list;

瞧!

答案 3 :(得分:0)

至少你使用了家庭作业标签,这确实是尖叫“嘿,为我做我的工作。”你都尝试了些什么?你在哪里遇到问题?

打破问题。看起来你有三个合乎逻辑的部分:

1)从字符串中获取所有单词

2)从这些词中,找到长度大于N

的所有词

3)回复这些话。

检查#1的String.Split()和Linq中的.Where()进行过滤。