【问题标题】:Parsing string data response解析字符串数据响应
【发布时间】:2020-04-03 05:29:45
【问题描述】:

我无法解析从某个第三方供应商收到的数据响应。 响应类似于:-

data: ()(responseCode='A01', responseMessage='Approved', accountNumber='qwerty');

我尝试了几种解析/字符串化的方法,但它没有为我提供 JSON 响应。我也尝试了 Querystring 函数的奇怪组合,但这没有帮助。 我深陷其中。

【问题讨论】:

    标签: json query-string string-parsing


    【解决方案1】:

    我会发布一个解决方法,它可能效率不高,但会给你结果。

    var data = "data: ()(responseCode='A01', responseMessage='Approved', accountNumber='qwerty');";
    var temp = data.substring(8,);
    temp = temp.replace("(","{");
    temp = temp.replace(")","}");
    temp = temp.replace(/=/g,":");
    temp = temp.replace(";","");
    temp = eval('(' + temp + ')');
    var Result = JSON.stringify(temp)
    

    结果:{"responseCode":"A01","re​​sponseMessage":"Approved","accountNumber":"qwerty"}

    【讨论】:

      【解决方案2】:

      您可以使用正则表达式将其转换为有效的 JSON 结构。

      let data = `data: ()(responseCode='A01', responseMessage='Approved', accountNumber='qwerty');`;
      
      let modified = data
      .replace(/\s/g,'')
      .replace("data:()(",'{\'')
      .replace(");",'}')
      .replace(/=/g,"':")
      .replace(/,/g,",'")
      .replace(/'/g,'"')
      
      let json = JSON.parse(modified);
      console.log(json)

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2021-07-24
        • 2014-09-03
        • 1970-01-01
        • 1970-01-01
        • 2021-06-03
        • 2013-03-17
        • 2023-03-27
        • 1970-01-01
        相关资源
        最近更新 更多