2016-12-04 1 views
-2
를 사용하여 문자열에서 특정 부분 또는 값을 추출 할

내 문자열이 패턴과 같이됩니다 :내가 정규식

{ "x_y_z":{data}, "a_b_c_d":{[my data]}, "q_w_e":{data} } 

데이터 I 추출 할입니다

{[my data]} 

는 날 지점 수 이것을 달성하는 방향으로?

String abcd = str.replaceAll(".*\"a_b_c_d\"\\s*:\\s*(.*?)\\s*,.*", "$1"); 

정규식은 전체 입력과 일치 그룹 1과 대상을 캡처하고 교체가는 다음과 JSON 파서를 사용

+3

무엇을 이미 시도 했습니까? – aleb2000

+2

문자열이 JSON 객체입니까? 그것은 JSON 개체의 경우, 당신은 정규식을 사용하지 않는 구문 분석해야합니다. –

+0

노력을 게시하십시오 – GurV

답변

0

갈하지만, 질문에 대한 답을 좀 더 강력하고 읽을 수있는 방법입니다 캡처 된 그룹.

+0

캡처 그룹의 데이터에 공백이 있으면 작동합니까? –

+0

@ cricket_007 예. 다음 쉼표까지 모든 것을 포착합니다 (쉼표 바로 앞의 공백은 버립니다). – Bohemian