我想删除标签中的特定动态字词 样本:
label1.text = "Name1:<br />DYANMIC_NAME1<br />Name2:<br />DYNAMIC_NAME2"
我可以使用
删除Name1:<br />
和<br />Name2:<br />
label1.Text = label1.Text.Replace("Name1:<br />", "").Trim
label1.Text = label1.Text.Replace("<br />Name2:<br />", "").Trim
我的问题是...... 如何删除或替换DYNAMIC_NAME1和/或DYNAMIC_NAME2 DYNAMIC的意义总是在变化..我希望你不要理解。 有人能帮我吗?? 对不起,我的英语不好。感谢。
答案 0 :(得分:0)
假设您总是采用以下格式:
"Name1:<br />DYANMIC_NAME1<br />Name2:<br />DYNAMIC_NAME2"
以下是您可以做的事情:
label1.text = "Name1:<br />DYANMIC_NAME1<br />Name2:<br />DYNAMIC_NAME2"
'Split the string and use <br /> as the separator
Dim result As String() = label1.text.Split(New String() {"<br />"}, System.StringSplitOptions.RemoveEmptyEntries)
'Now you know that at indices 1 and 3, you have your two dynamic words.
label1.text = label1.text.Replace(result(1), "")
label1.text = label1.text.Replace(result(3), "")
请注意,我没有运行和测试它,但它应该让你知道我想在这里做什么。
编辑(根据Dominic Kexel的建议):
label1.text = "Name1:<br />DYANMIC_NAME1<br />Name2:<br />DYNAMIC_NAME2"
Dim separator As String() = New String() {"<br />"}
Dim result As String() = label1.text.Split(separator)
Dim sb As StringBuilder = New StringBuilder()
For i As Integer = 0 To result.Length - 1
If i <> 1 And i <> 3 Then
sb.Append(result(i))
End If
If i < result.Length - 1 Then
sb.Append(separator(0))
End If
Next
label1.text = sb.ToString()