Учитывая этот пример входной строки.
String str =
"[{\"ID\":\"A001\",\"Name\":\"Captain America\",\"State\":\"Brooklyn\"},
{\"ID\":\"A002\",\"Name\":\"Iron Man\",\"State\":\"New York\"}]"
Я пытаюсь использовать регулярное выражение для извлечения всех значений, связанных с ключом «Имя».
Pattern p = Pattern.compile(".*\"name\":(\".*\").*");
Matcher m = p.matcher(str);
if(m.find()){
System.out.println(m.group(1));
System.out.println(m.group(2));
}
Я пытаюсь получить следующий вывод:
Captain America
Iron Man
Но приведенный выше код производит это вместо:
"Iron Man","state":"New York"
Также был бы признателен за рекомендации для методы, позволяющие сделать нечто подобное, работая с теми же данными String непосредственно на Java JSONObject.