我需要用Visual Basic分隔字符串。拆分(「TEXT」,「+」或「 - 」,2)
缺點是我有更多的一個分隔符。
一個是"+"
,另一個是"-"
。
我需要的代碼來檢查字符串,如果"+"
是一個字符串中,然後使用"+"
如果"-"
是字符串中,然後使用"-"
作爲分隔符。
我可以這樣做嗎?
例如:Split("TEXT" , "+" OR "-" ,2)
我需要用Visual Basic分隔字符串。拆分(「TEXT」,「+」或「 - 」,2)
缺點是我有更多的一個分隔符。
一個是"+"
,另一個是"-"
。
我需要的代碼來檢查字符串,如果"+"
是一個字符串中,然後使用"+"
如果"-"
是字符串中,然後使用"-"
作爲分隔符。
我可以這樣做嗎?
例如:Split("TEXT" , "+" OR "-" ,2)
最簡單的方式是更換了第二個字符,然後通過僅一個分裂:
Dim txt As String, updTxt As String
Dim splitTxt() As String
updTxt = Replace(txt, "-", "+")
splitTxt = Split(updTxt, "+")
或更復雜。下面分割後返回部分的集合。如果您需要,允許您將返回數據多加一些:
Dim txt As String, outerTxt As Variant, innerTxt As Variant
Dim splitOuterTxt() As String
Dim allData As New Collection
txt = "test + test - testing + ewfwefwef - fwefwefwf"
splitOuterTxt = Split(txt, "+")
For Each outerTxt In splitOuterTxt
For Each innerTxt In Split(outerTxt, "-")
allData.Add innerTxt
Next innerTxt
Next outerTxt
你描述的似乎很簡單。只要檢查文本是否包含+
即可決定應使用哪個分隔符。
試試這個代碼:
dim separator as String
separator = Iif(InStr(txt, "+") <> 0, "+", "-")
splitResult = Split(txt, separator, 2)
的代碼假定您要拆分的文本是在txt
變量。
請注意,我沒有VBA在這裏,無法真正運行代碼。如果你有任何錯誤,請告訴我。
它有效。 :) 謝謝 – AnteseN