我想计算richtextbox中的单词。首先,我在textbox1中输入一个单词(用于搜索),然后按“count”按钮,textbox2将显示一个有关richtextbox中相同单词数量的数字。这是我的代码,但它不起作用,textbox2总是显示0.谢谢你的帮助。
private void button2_Click(object sender, EventArgs e)
{
string a=richTextBox1.Text;
string b=textBox1.Text;
for (int i = 0; i < a.Length; i++)
{
int n=0;
if (a.Equals(b))
{
n++;
}
textBox2.Text = n.ToString();
}
}
答案 0 :(得分:1)
您需要将单个单词与b进行比较,而不是整个句子。您可以使用以下代码作为参考:
string[] data = richTextBox1.Text.Split(' ');
for(int i=0;i<data.Length;i++)
{
if(data[i]==textBox1.Text)
n++;
}
答案 1 :(得分:1)
试试这个:
string data = richTextBox1.Text;
var target = textBox1.Text;
var count = data.Select((c, i) => data.Substring(i))
.Count(sub => sub.ToUpper()
.StartsWith(target));
textBox2.Text = count;
答案 2 :(得分:0)
显示富文本框的字数更容易,如下所示:
Dim wordcount As Integer
Dim a As String() = RichTextBox1.Text.Split(" ")
wordcount = a.Length
您可以将'wordcount'用于单词计数。例如:
Label1.Text = "Word Count: " & wordcount