【发布时间】:2012-08-20 20:56:56
【问题描述】:
我正在尝试拔出琴弦:
[{"name":"John Doe Jr."},{"name2":"John Doe"}] & {"name":"John Doe"}
来自以下 JSON 字符串中的有效负载:
{"to":"broadcast", "type":"50", "payload":[{"name":"John Doe Jr."},{"name2":"John Doe"}]}
{"to":"broadcast", "type":"50", "payload":{"name":"John Doe"}}
使用这个正则表达式代码:
Pattern pattern = Pattern.compile("\\{(.*?)\"payload\":\"(.*?)\"\\}\\}");
Matcher matcher = pattern.matcher(jsonString);
我得到一个 IllegalStateException: No successl match so far
我的正则表达式有什么问题?
另外我如何获得它找到的匹配数?
任何帮助将不胜感激。
【问题讨论】:
-
您不想使用JSON parser 代替吗?
-
我正在尝试从 InputStream 中获取有效负载 json 数组,然后我正在使用 JSON 解析器解析 JSONArray 和 JSONArray 中的 JSONObjects
-
你不能只使用
new JSONObject("your_js_string"),然后使用生成的JSONObject吗? -
我要做的就是提取有效负载字符串并将该字符串设置为 JSONArray 并使用 JSONArray 中的 Json 对象。这就是我想做的。我不想使用 JSON 解析器来获取数组。