C# 如何检测文本框中的单词是否重复

C# 如何检测文本框中的单词是否重复,c#,C#,我只是想用定时器检测一个单词在文本框中的陈述时间是否超过1次 string obj1 = (string)this.webBrowser3.Document.InvokeScript("GetText", new string[0]); if (obj1.Contains("HttpGet")) { } 我试图让我的文本框(obj1)检测HttpGet是否被多次声明,但idk如何做到这一点。我可以想到一个快速选项来计算字符串中的字数: obj1.Split(' ').Count(x =&g

我只是想用定时器检测一个单词在文本框中的陈述时间是否超过1次

string obj1 = (string)this.webBrowser3.Document.InvokeScript("GetText", new string[0]);

if (obj1.Contains("HttpGet"))
{

}

我试图让我的文本框(obj1)检测HttpGet是否被多次声明,但idk如何做到这一点。

我可以想到一个快速选项来计算字符串中的字数:

obj1.Split(' ').Count(x => x == "HttpGet")

我确信循环或分组方式也可以实现这一点。

我可以想到一个快速选项来计算字符串中的字数:

obj1.Split(' ').Count(x => x == "HttpGet")
我相信,使用循环或分组方式也可以完成此操作。

Regex版本:

int count = Regex.Matches(obj1, "HttpGet").Count;
正则表达式版本:

int count = Regex.Matches(obj1, "HttpGet").Count;

您可以使用linq
if(obj1.Split(“”).Count(t=>t==“HttpGet”)>1)
uncaer:您正在寻找这个单词或任何重复的单词吗?您可以利用执行两次搜索(使用重载和
startIndex
参数进行第二次搜索)。如果两者都成功-你有两个以上的出现说的话。另一个选项是将
IndexOf
LastIndexOf
的结果进行比较。您可以使用linq
if(obj1.Split(“”).Count(t=>t==“HttpGet”)>1)
uncaer:您正在寻找这个单词或任何重复的单词吗?您可以利用执行两次搜索(使用重载和
startIndex
参数进行第二次搜索)。如果两者都成功-你有两个以上的出现说的话。另一个选项是将
IndexOf
LastIndexOf
的结果进行比较。这是最干净的方法。与正则表达式相比,可能会稍微快一点……如果这个词与另一个词组合,比如破折号,就不会检测到它。此外,如果后面有一个点(在一句话的末尾)?与正则表达式相比,它不会真正识别“单词”。这是最干净的方法。与正则表达式相比,可能会稍微快一点……如果这个词与另一个词组合,比如破折号,就不会检测到它。另外,如果后面有一个点(在句末)?与正则表达式相比,它不会真正识别“单词”。谢谢,这一个适合我,最容易理解谢谢,这一个适合我,最容易理解