Я пытаюсь совместить все символы между выражением: «memberIdentities» & переменная, которую я установил как summonerID. Я извлекая всю эту информацию из строки под названием MatchInfo, и строка идет как это:Java Compilation Pattern между двумя строками (динамический)
"participantIdentities":[{"participantId":1,"player":{"summonerId":36889900,"summonerName":"intalan","matchHistoryUri":"/v1/stats/player_history/NA1/51395230","profileIcon":744}},{"participantId":2,"player":{"summonerId":32741714,
И он продолжает идти дальше. Поскольку summonerID изменяется, я должен установить его как переменную. Сейчас он установлен в 32741714.
это то, что я до сих пор:
Pattern pattern2 = Pattern.compile(
"\"participantIdentities\": (.*?)"+summonerID+"", Pattern.DOTALL);
Matcher matcher2 = pattern2.matcher(matchinfo);
if (matcher2.find() == true) {
participantIDinformation = matcher2.group(1).toString();
System.out.println(participantIDinformation);
}
Я ожидал бы вернуть всю информацию между participantID и summonerID, но это не работает.
Что это такое? –
Matcher2.find() возвращает false, поэтому он вообще не распознает шаблон. – Yayahii
Используйте JSON-парсер для этого, пожалуйста. Там есть тонны хорошего парсера JSON, который вы можете выбрать. Не анализируйте его регулярным выражением. – nhahtdh