首页 > 解决方案 > 从VB6中的字符串中获取元素

问题描述

我有一个类似于 json 格式的字符串。由以下代码生成:

str = "{"
str &= Chr(34) & "code" & Chr(34) + ":" & Chr(34) & "0000001" & Chr(34)
str &= Chr(34) & "name" & Chr(34) + ":" & Chr(34) & "product 1" & Chr(34)
str &= Chr(34) & "value" & Chr(34) + ":" & Chr(34) & "150.00" & Chr(34)
str &= "}"

我只需要在代码、名称和值之后获取值。我找不到有效的方法来做到这一点,因为我稍后将不得不推广到更多术语。在不转换为 JSON 的情况下如何做到这一点?

标签: jsonstringvb6string-concatenation

解决方案


您提供的代码片段会生成此字符串:

{"code":"0000001""name":"product 1""value":"150.00"}

假设您确实使用 VB6 来处理这个字符串,下面的代码会分解这些值:

Private Sub Test(ByVal str As String)
   Dim groups As Variant
   Dim values As Variant
   Dim i As Integer

   str = Replace(str, "{", "")
   str = Replace(str, "}", "")
   str = Replace(str, """""", ",")
   str = Replace(str, """", "")
   groups = Split(str, ",")

   For i = LBound(groups) To UBound(groups)
      values = Split(groups(i), ":")
      Debug.Print values(1)
   Next
End Sub

在此处输入图像描述


推荐阅读