合并两个字符串并插入元素 VB.Net
Combining two string and insert element VB.Net
我试图在 2 个字符串之间建立一个组合算法,不幸的是它有一些错误。
Dim strWordsA() As String = TextBox1.Text.Split(",")
Dim strWordsB() As String = TextBox2.Text.Split(",")
Dim str As String = TextBox1.Text
Dim arr As String() = TextBox1.Text.Split(","c)
For i As Integer = 0 To TextBox1.Text.Split(",").Length - 1
Dim index As Integer = str.IndexOf(strWordsA(i))
TextBox1.Text = str.Insert(index + 2, "," & strWordsB(i))
str = TextBox1.Text
Next
所以如果我们有 Textbox1.Text
= 1,2,3,4,5,6,7,8,9
和 Textbox2.Text
= a,b,c,f,d,b,i,h,
等等......我需要在第三个文本框中显示它
Textbox3.Text = 1,a,2,b,3,c,4,f and so on
所以我要组合这两个字符串吗?
索引中的第一个元素显示不正确,否则似乎可以正常工作。
试试这个:
Private Function MergeStrings(s1 As String, s2 As String) As String
Dim strWordsA() As String = s1.Split(","c)
Dim strWordsB() As String = s2.Split(","c)
Dim i As Integer = 0
Dim OutputString As String = String.Empty
While i < strWordsA.Length OrElse i < strWordsB.Length
If i < strWordsA.Length Then OutputString &= "," & strWordsA(i)
If i < strWordsB.Length Then OutputString &= "," & strWordsB(i)
i += 1
End While
If Not OutputString = String.Empty Then Return OutputString.Substring(1)
Return OutputString
End Function
用法:
Dim s As String = MergeStrings("1,2,3,4,5,6,7,8,9", "a,b,c,f,d,b,i,h")
您需要添加自己的验证以允许尾随逗号或无逗号等,但它应该适用于不同长度的输入字符串
编辑:根据玛丽的评论进行了修改
我试图在 2 个字符串之间建立一个组合算法,不幸的是它有一些错误。
Dim strWordsA() As String = TextBox1.Text.Split(",")
Dim strWordsB() As String = TextBox2.Text.Split(",")
Dim str As String = TextBox1.Text
Dim arr As String() = TextBox1.Text.Split(","c)
For i As Integer = 0 To TextBox1.Text.Split(",").Length - 1
Dim index As Integer = str.IndexOf(strWordsA(i))
TextBox1.Text = str.Insert(index + 2, "," & strWordsB(i))
str = TextBox1.Text
Next
所以如果我们有 Textbox1.Text
= 1,2,3,4,5,6,7,8,9
和 Textbox2.Text
= a,b,c,f,d,b,i,h,
等等......我需要在第三个文本框中显示它
Textbox3.Text = 1,a,2,b,3,c,4,f and so on
所以我要组合这两个字符串吗?
索引中的第一个元素显示不正确,否则似乎可以正常工作。
试试这个:
Private Function MergeStrings(s1 As String, s2 As String) As String
Dim strWordsA() As String = s1.Split(","c)
Dim strWordsB() As String = s2.Split(","c)
Dim i As Integer = 0
Dim OutputString As String = String.Empty
While i < strWordsA.Length OrElse i < strWordsB.Length
If i < strWordsA.Length Then OutputString &= "," & strWordsA(i)
If i < strWordsB.Length Then OutputString &= "," & strWordsB(i)
i += 1
End While
If Not OutputString = String.Empty Then Return OutputString.Substring(1)
Return OutputString
End Function
用法:
Dim s As String = MergeStrings("1,2,3,4,5,6,7,8,9", "a,b,c,f,d,b,i,h")
您需要添加自己的验证以允许尾随逗号或无逗号等,但它应该适用于不同长度的输入字符串
编辑:根据玛丽的评论进行了修改