"participantIdentities"& 표현식과 summonerID로 설정 한 변수 사이에있는 모든 문자를 결합하려고합니다. 나는 matchinfo라는 문자열에서 모든 정보를 추출하고있어, 그리고 문자열은 다음과 같이 진행됩니다두 문자열 사이의 Java 컴파일 패턴
"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