我创建了一个简单的函数,用于从另一个字符串中删除一串字符,并将其替换为用户想要的字符串(或者没有字符串作为默认字符串)
Private Function RemoveString(scontainer As String, Optional rcontainer As String = "", Optional rstring As String = "") As String
Dim container As String = scontainer
Dim tcontainer As String
If InStr(container, rcontainer) <> 0 Then
Do While (InStr(container, rcontainer) <> 0)
tcontainer = Microsoft.VisualBasic.Left(container, InStr(container, rcontainer) - 1)
tcontainer = tcontainer & rstring & Microsoft.VisualBasic.Right(container, (Len(container) - (InStr(container, rcontainer) + 2)))
container = tcontainer
Loop
RemoveString = container 'return modded string
Else
RemoveString = scontainer 'return string as is
End If
End Function
问题是: 虽然这被认为是一般使用函数,但我真的需要关注2个不同的字符串
20% 安培;
该功能完美适用于%20的情况,但它为放大器留下了分号;串。任何想法为什么会这样?
答案 0 :(得分:1)
我帮你忙吗? 您希望将字符串中的某个char序列替换为另一个char序列,或者只删除它。
如果是这种情况你可以使用String.Replace(oldValue As String,newValue As String)As String
Dim startString as String = "%20 amp;"
Dim resultString as String = startString.Replace("%20 ",String.Empty)
resultString = resultString.Replace(";",String.Empty)
在这些行之后,resultString将是“amp”