使用regex在json中查找键,并将它们放在java的map中

hgtggwj0  于 2021-06-30  发布在  Java
关注(0)|答案(1)|浏览(281)

我有一个类似于这样的api的json:

{
  "something": "something",
  "example_1": true,
  "something2": "something",
  "example_2": false,
  "example_3": true
}

我想把所有的示例_x键及其值放在一个Map中。我猜这是可能的正则表达式,但我不知道怎么做。
我确实知道 example_\d 可能是正则表达式,但仅此而已。我没有发现任何类似的问题,但我可能用错了搜索词。
信息:我使用org.json库来获取json对象,但是如果可以的话,我可以将其更改为另一个库。
任何帮助都将不胜感激

zphenhs4

zphenhs41#

使用它:(感谢tgdavies告诉我使用迭代器)

//jsonObject is the json in the question for example
HashMap Map<String, Boolean> = new HashMap<>();

Iterator<String> keys = jsonObject.keys();
while (keys.hasNext()) {
    String key = keys.next();
    if (key.matches("example_\\d+")) {
        Map.put(key, jsonObject.getBoolean(key));
    }
}

相关问题