【问题标题】:Conversion from Specific String to JSON [closed]从特定字符串到 JSON 的转换 [关闭]
【发布时间】:2013-06-10 20:51:37
【问题描述】:

假设我有这个字符串:

For the AWSDataTransfer product, this is the public pricing plan.

Regarding data transfer across EC2 AZs:
In all AWS regions, inbound is $0.01/GB.
In all AWS regions, outbound is $0.01/GB.

我想将其更改为 JSON,如下所示:

{
    "Product" : "AWSDataTransfer",
    "PlanName" : "public",

    "EC2Regional" : [
        {"region" : "all", "type" : "in", "rate" : "0.01/GB"},
        {"region" : "all", "type" : "out", "rate" : "0.01/GB"}
    ],
}

如何使用正则表达式来做到这一点。任何人都可以编写代码并帮助我。

【问题讨论】:

  • 可能需要一些复杂的解析。不确定是否适合只说:“嘿,给我一个正则表达式”。
  • 对不起,字符串到底是什么?
  • 这似乎是一个非常随意的字符串......

标签: java regex json parsing


【解决方案1】:

您可以创建一个或两个包含您描述的字段的简单类,例如:

public class Plan {
    private String product;
    private String planName;
    private List<EC2Regional> ec2Regional;
}

public class EC2Regional {
    private String region;
    private String type;
    private String rate;
}

(为了便于阅读,我省略了 getter 和 setter。) 然后可以使用 Jackson 之类的 JSON 库将其序列化为 JSON。

您可能希望将某些字符串类型替换为枚举或其他自定义类型。

祝你好运。

【讨论】:

  • 我认为 OP 得到了一个文本字符串,并希望将其转换为 JSON。
  • 实际上,如何使用java程序将我的原始字符串转换为Map-List-String格式?
  • @user2464719 - 你将不得不编写一些实质性的代码来实现这一点。在我看来,请别人为您做这件事超出了本网站的范围……但欢迎您尝试。
猜你喜欢
  • 2019-09-16
  • 1970-01-01
  • 2014-01-08
  • 1970-01-01
  • 1970-01-01
  • 2021-12-08
  • 1970-01-01
  • 2020-02-23
  • 1970-01-01
相关资源
最近更新 更多