VB6 在字符串中查找值,将位置和值添加到列表框



我正在使用Visual Basic 6
我正在尝试查找字符串
中值的位置 查找代码似乎正在工作 问题是代码将信息添加到列表框中两次

位置 2 值 2
位置 2 值 2
位置 4 值 2 位置 4 值 2

要搜索的字符串每次始终是 1 到 9 个随机顺序
的值现在编写的代码只搜索一个值

我的问题是如何只将位置和值添加到列表框中一次?

Private Sub Form_Load()
Dim S1, S2, MyPos As String
Dim I As Integer
I = 1
S1 = "123245"
S2 = "2"
tbOne.Text = S1
Do Until I = 5 'This will be Len(S1) - 1 later
MyPos = InStr(I, S1, S2, 1)
tbTwo.Text = tbTwo.Text & MyPos & vbNewLine
'If MyPos = S2 Then
lbOne.AddItem "Position " & MyPos & " " & "Value " & S2
'End If
I = I + 1
Loop
End Sub

这似乎可以满足您的需求:

Option Explicit
Private Sub Form_Load()
Dim S1 As String, S2 As String, MyPos As String
Dim i As Integer
S1 = "123245"
S2 = "2"
tbOne.Text = S1

For i = 1 To Len(S1) - 1
If Mid(S1, i, 1) = S2 Then
tbTwo.Text = tbTwo.Text & i & vbNewLine
lbOne.AddItem "Position " & i & " " & "Value " & S2
End If
Next
End Sub

请注意,在同一行上声明变量时必须指定类型,除非您希望它们属于 Variant 类型。

相关内容

  • 没有找到相关文章

最新更新