如果像
这样的块,我需要一些代码来替换令牌myText =“some text。[IfIsFile:True]这是一个文件[EndIfIsFile:True] [IfIsFile:False]这不是文件[EndIfIsFile:False]。更多文字”
我很乐意分别调用每个if块(true然后为false) 我需要发送 函数myReplace(text,token,Boolean if if leave text or blank it)as string
我可以称之为 myReplace(text,“[IfIsFile:True]”,true)
然后 myReplace(text,“[IfIsFile:False]”,false)
结果将是 “一些文字。这是一个文件。更多文字”
答案 0 :(得分:0)
好吧我觉得这会更难,但我能写出来。如果有人想发布改进的代码 - 请做
Protected Function ReplaceIfToken(ByVal sText As String, ByVal startToken As String, ByVal endToken As String, ByVal bLeave As Boolean) As String
Dim str As String = sText
Dim iStart As Integer = 0
Dim iEnd As Integer = 0
iStart = InStr(str, startToken)
iEnd = InStr(str, endToken)
While iStart > 0
Dim fullTokenText As String = str.Substring(iStart - 1, iEnd + endToken.Length - iStart)
Dim fullTokenTextwoToken As String = fullTokenText.Replace(startToken, "").Replace(endToken, "")
If bLeave Then
str = str.Replace(fullTokenText, fullTokenTextwoToken)
Else
str = str.Replace(fullTokenText, "")
End If
iStart = InStr(str, startToken)
iEnd = InStr(str, endToken)
End While
Return str
End Function