gpt4 book ai didi

Java - 日期模式匹配

转载 作者:行者123 更新时间:2023-11-29 05:43:46 25 4
gpt4 key购买 nike

我是 Java 新手。请帮我。我对以下 JSON 响应有疑问:

{"GetResult":"{  \"IsDate\": [    {      \"Code\": \"200\"    },    {      \"Message\": \"Fetched successfully\"    },    {      \"ID\": \"722c8190c\",      \"Name\": \"Recruitment\",      \"Path\": \"URL\",      \"Date\": \"14 May, 2013\"    },     ]}"}

这是一个格式错误的 JSON 对象。所以,我使用匹配模式来获取 NamePathDate 的数据,并获取 Name路径成功如下:

 Matcher matcherName = Pattern.compile("\\\\\"Name\\\\\":\\s\\\\\"[^,}\\]]+\\\\\"").matcher(Name);

Matcher matcherPath = Pattern.compile("\\\\\"Path\\\\\":\\s\\\\\"^[^,}\\]]+\\\\\"").matcher(Path);

因此,从上面的行中,我能够获得 PathName。所以,请帮助如何获取 DateDate 的格式为 2013 年 5 月 14 日。请帮助我。

最佳答案

这是有效的json。

在这里查看 jsonlint

这样解析

{
"GetResult": "{ \"IsDate\": [ { \"Code\": \"200\" }, { \"Message\": \"Fetched successfully\" }, { \"ID\": \"722c8190c\", \"Name\": \"Recruitment\", \"Path\": \"URL\", \"Date\": \"14 May, 2013\" }, ]}"
}

JSONObject parent=new JSONObject(jsonString);
JSONObject obj=parent.getJSONObject("GetResult");
JSONArray array=obj.getJSONArray("IsDate");

String jsondatestring=array.getString(2);
JSONObject datejson=new JSONObject(jsondatestring);
String date=datejson.getString("Date");

如果你想知道如何对这些字符进行转义,试试这个

使用 Commons lang 库和 StringEscapeUtils 类。

简单使用

String newString=StringEscapeUtils.unescapeJava(yourString);

关于Java - 日期模式匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16544025/

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