如何在文本框中为每个值定位?

时间:2019-01-10 16:50:27

标签: vb.net

如果我有一个带有以下数字的Textbox1.Text2,7,8,9,44,78,80

如何在Textbox2.Text中进行设置,如何获得每个数字的位置? 例如:数字2:-位置1,数字7-位置2,数字8-位置3。

如果Textbox2.Text中有数字要说:9,44,78

数字9-位置-4,数字44-位置5,数字78位置6,在第一个文本框中可以看到。那我该怎么办呢?

1 个答案:

答案 0 :(得分:0)

您可以使用String.Split返回一个数组,并返回Array.IndexOf

Dim txt1 = "2,7,8,9,44,78,8"
Dim txt2 = "9,44,78"
Dim nums As String() = txt1.Split(","c)
Dim searchNums As String() = txt2.Split(","c)

For Each searchNum In searchNums
    Dim index = Array.IndexOf(nums, searchNum)
    Dim position = If(index = -1, "not found", (index + 1).ToString())
    Console.WriteLine("Number:{0}, Position:{1}", searchNum, position)
Next

如果要在第三个文本框中显示结果:

Dim positionList = new List(Of Int32)
For Each searchNum In searchNums
    Dim index = Array.IndexOf(nums, searchNum)
    Dim position = If(index = -1, -1, index + 1)
    positionList.Add(position)
Next
TextBox3.Text = String.Join(",", positionList)