Private Sub Button4_Click(sender As Object, e As EventArgs) Handles Button4.Click
If TextBox11.Text.Contains("https") Then
TextBox11.Text.Replace("https", "http")
Debug.WriteLineIf(TextBox11.Text.Contains("http"), "youtube link https replaced with http")
If TextBox11.Text.Contains("https") Then
ListBox3.Items.Add(TextBox11.Text)
Debug.WriteLine("items added to listbox")
End If
Else
Debug.WriteLine("items added to listbox(without repalce)")
ListBox3.Items.Add(TextBox11.Text)
End If
End Sub
所以,我试图在这里做的是取代" https"用" https"在textbox11中,然后将它添加到listbox3,但是,它甚至没有替换文本由于某种原因,这是我需要一些帮助的地方。我知道,stringbuilder对此有好处,但我不知道知道如何使用它,我只找到了如何替换指定的文本,而不是整个句子。
P.S。对不起我的英文。
答案 0 :(得分:2)
Replace方法返回带有替换文本的新字符串。它不会对你传入的相同字符串起作用。所以你需要重新分配Replace的结果
TextBox11.Text = TextBox11.Text.Replace("https", "http")
答案 1 :(得分:1)
我建议您使用以下代码(为了便于阅读而省略Debug
子句):
Private Sub Button4_Click(sender As Object, e As EventArgs) Handles Button4.Click
If TextBox11.Text.ToLower.Contains("https") Then
TextBox11.Text = TextBox11.Text.ToLower.Replace("https", "http")
End If
ListBox3.Items.Add(TextBox11.Text.ToLower)
End Sub
让我们稍微传播一下代码:
ToLower
方法确保用户未使用大写字母输入值。TextBox11.Text = TextBox11.Text.ToLower.Replace("https", "http")
是将更正后的值分配给TextBox
对象的正确方法。If...End If
结构的更改是可以理解的 - 无论ListBox
值是否得到纠正,您都要填写TextBox
对象。