在一定数量的相同分隔符之后,如何在 VBA 中拆分字符串?
例如:{"Josh","Green"},{"Peter","John"}
。
在这里,我想{"Josh","Green"}
作为数组中的第一条记录和{"Peter","John"}
第二条记录。我想避免逐个字符地解析字符串。
有几种方法可以做到这一点,我的建议:
在拆分之前替换},{
为其他内容,以创建新的分隔符。
例如:
Option Explicit
Sub Test()
Const c As String = "{""Josh"",""Green""},{""Peter"",""John""}"
Dim s As String
Dim v As Variant
s = Replace(c, "},{", "}#,#{", 1)
v = Split(s, "#,#")
Debug.Print v(0) '{"Josh","Green"}
Debug.Print v(1) '{"Peter","John"}
End Sub
这将拆分为具有两个字符串s
的 Variant-array ,而不是四个字符串,如果您将原始字符串仅用作分隔符,您将得到它。v
v(0)
v(1)
,