gpt4 book ai didi

java - 基于分隔符和字符串的拆分

转载 作者:行者123 更新时间:2023-12-01 10:54:45 25 4
gpt4 key购买 nike

String CompanyData = "{ChargeCompany1Cnt:0,ChargeCompany2Cnt:73,ChargeCompany3Cnt:44,BalanceCompany3Cnt:0,ChargeCompany4Flag:green,BalanceCompany2Flag:green,BalanceCompany1Cnt:0,ChargeCompany3Flag:red,ChargeCompany1Flag:green,BalanceCompany4Flag:green,BalanceCompany1Flag:green,BalanceCompany2Cnt:0,BalanceCompany4Cnt:0,BalanceCompany3Flag:green,ChargeCompany2Flag:red,ChargeCompany4Cnt:6}";

CompanyData 是我的字符串,我正在分割数据,如下所示。这段代码没有问题,但是如果改变字符串的顺序,分割就会被破坏。如何拆分此字符串并按其名称分配给另一个字符串(例如根据 ChargeCompany1Cnt、ChargeCompany2Cnt 拆分)。我已经在 UNIX 中使用 cutsed 命令来执行此操作,现在将我的 Shell 脚本转换为 JAVA。很抱歉,如果这是一个基本问题

String ChargeCompany1Cnt=CompanyData.split(,)[0].replace("{","");
String ChargeCompany2Cnt=CompanyData.split(,)[1];
String ChargeCompany3Cnt=CompanyData.split(,)[2];
String BalanceCompany3Cnt=CompanyData.split(,)[3];
String ChargeCompany1Flag=CompanyData.split(,)[8];

基本上我需要在 CompanyData 中找到像 ChargeCompany2Cnt,ChargeCompany1Flag 这样的字符串并打印 ChargeCompany2Cnt:73 ChargeCompany1Flag:green

最佳答案

请注意,如果这是 JSON 对象,您可以使用 ObjectMapper 轻松解析它 jackson 的。您可以使用下面的代码进行手动解析

    String CompanyData = "{ChargeCompany1Cnt:0,ChargeCompany2Cnt:73,ChargeCompany3Cnt:44,BalanceCompany3Cnt:0,ChargeCompany4Flag:green,BalanceCompany2Flag:green,BalanceCompany1Cnt:0,ChargeCompany3Flag:red,ChargeCompany1Flag:green,BalanceCompany4Flag:green,BalanceCompany1Flag:green,BalanceCompany2Cnt:0,BalanceCompany4Cnt:0,BalanceCompany3Flag:green,ChargeCompany2Flag:red,ChargeCompany4Cnt:6}";
HashMap<String,String> mymap = new HashMap<String,String>();
for ( String s: CompanyData.split("[?,{}]")) {
if (!s.equals(""))
mymap.put(s.split(":")[0],s.split(":")[1]); }

for (HashMap.Entry<String, String> entry : mymap.entrySet()) {
String key = entry.getKey().toString();;
String value = entry.getValue();
System.out.println( key + " = " + value );

关于java - 基于分隔符和字符串的拆分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33673042/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com