2

在一定数量的相同分隔符之后,如何在 VBA 中拆分字符串?

例如:{"Josh","Green"},{"Peter","John"}

在这里,我想{"Josh","Green"}作为数组中的第一条记录和{"Peter","John"}第二条记录。我想避免逐个字符地解析字符串。

4

1 回答 1

3

有几种方法可以做到这一点,我的建议:

在拆分之前替换},{为其他内容,以创建新的分隔符。

例如:

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 ,而不是四个字符串,如果您将原始字符串仅用作分隔符,您将得到它。vv(0)v(1),

于 2013-03-12T13:13:38.103 回答