C#在字符串中搜索单词出现次数

时间:2012-12-03 11:24:46

标签: c#

如何在字符串中搜索单词? 我有一个文本框,用户插入一个字符串,另一个文本框与文本只是一些随机文本。 除了使用regexIndexOf之外,还有其他任何替代方法吗?就像使用for loop并检查单词中的长度和字符一样。

这是我到目前为止所尝试的

        int i = 0; 
        int count = 0;

        input2.Trim(); 

        while ((i = input2.IndexOf(input1, i)) != -1) 
        {
            i = i + input1.Length;
            count++; 
        }

        MessageBox.Show(count.ToString() + " Matches Found");

2 个答案:

答案 0 :(得分:4)

看起来你想要在文本中获得搜索字符串的数量。您可以尝试以下方法。

string searchString = "TEST";
string completeText = "Some sentence TEST with other words incluing TEST";
int count = completeText.Split(new string[]{"TEST"},StringSplitOptions.None)
                        .Count() - 1;
MessageBox.Show(count.ToString() + " Matches Found");

答案 1 :(得分:0)

使用正则表达式匹配出现次数

string test = "THE DOG WENT TO TOWN DOG";
int j = Regex.Matches(test, "DOG").Cast<Match>().Count();