arrays - 比较两个文本框中的单词以找出差异?

标签 arrays vb.net compare

我有 2 个文本框。

我想比较Textbox1和Textbox2的所有单词

假设如果 Textbox1 中的第二个单词是“me”,而 Textbox 2 中的第二个单词是“him”,则它将突出显示 Textbox 2 上的单词“him”和 Textbox1 上的“me”。

示例:

方框 1 = 我是一个男孩

方框2=我是一个女孩

方框 1 = 是一个男孩

框 2 =是一个女孩

但现在我在比较单词时遇到问题。我尝试按数组索引进行比较,但它只会显示 Textbox1 中找不到的单词!

    Dim txt1(TextBox1.Text.Split(" ").Length) As String
    Dim txt2(TextBox2.Text.Split(" ").Length) As String
    txt1 = TextBox1.Text.Split(" ")
    txt2 = TextBox2.Text.Split(" ")
    Dim diff1 As String = "" 'Differences between 1 and 2
    Dim diff2 As String = "" 'Differences between 2 and 1

    For Each diff As String In txt1
        If Array.IndexOf(txt2, diff.ToString) = -1 Then
            diff1 += diff.ToString & " "
        End If
    Next
    For Each diff As String In txt2
        If Array.IndexOf(txt1, diff.ToString) = -1 Then
            diff2 += diff.ToString & " "
        End If
    Next

我还面临一个无法突出显示文本的问题

最佳答案

使用 Linq Except扩展名:

Dim diffs = txt1.Except(txt2)

输出:

  • diffs(0) = "he"
  • diffs(1) = "boy"

您可以在 txt1 和 txt2 之间交换:

Dim diffs = txt2.Except(txt1)

输出:

  • diffs(0) = "she"
  • diffs(1) = "girl"

关于arrays - 比较两个文本框中的单词以找出差异?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30369925/

相关文章:

vb.net - 显示图表控件Xaxis中的所有值

c# - 比较可为 null 的日期时间对象

python - Pandas groupby() 比较并计算两列

c - 空指针数组: valgrind gives invalid write size of 8

vb.net - App.config 连接字符串保护错误

vb.net - 制作一组单选按钮 [VB.NET]

JavaScript - 过滤具有相同元素的数组

javascript - 过滤 Javascript 数组以检查所有嵌套对象中的特定值

Java,如何在java中的方法之间发送数组?

javascript - 来自多维数组的全日历事件数据