2

同じ区切り文字を一定量使用した後、VBAで文字列を分割するにはどうすればよいですか?

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

{"Josh","Green"}ここでは、配列の最初のレコードとして、そして2番目のレコードとして使用したいと思い{"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

これは、元の文字列を区切り記号として分割すると得られる 4 つの文字列ではなく、2 つの文字列とをs含む Variant-arrayに分割されます。vv(0)v(1),

于 2013-03-12T13:13:38.103 に答える