2016-08-08 5 views
0

요청에 문자열을 수신했습니다. 문자열은 대괄호로 그룹화 된 숫자 쌍 목록입니다. (이 목록은 내 앱에 표시 할 폴리곤을 나타냅니다.)NSArray에 숫자 배열 배열을 나타내는 NSString을 변환합니다.

NSArray으로 변환하고 모든 숫자를 좌표로 변환해야합니다.

수신 된 문자열은 그냥 NSArray에 텍스트에 하나의 목록을 변환 할 수 있습니다 발견했습니다

[[[53.502483, -113.420593], [53.503429, -113.421527], [53.503491, -113.421673], [53.503002, -113.42164], [53.502719, -113.421426], [53.502483, -113.420593]]] 

모든 예제입니다. 문자열에 여러 배열이있는 곳에서는 아무 것도 찾을 수 없습니다.

+1

[] 사이에 문자열을 가져오고 쉼표 (,)를 기준으로 문자열을 분할하고 결과를 배열에 추가하려면 정규식이 필요합니다. 당신이 시도한 것을 보여주십시오. –

+1

@TejaNandamuri 아니, 정규식이 필요하지 않습니다. 문자열을 파싱하는 몇 가지 다른 방법이 있습니다. – rmaddy

+1

@rmaddy 너희들은 모든 것을 문자 그대로 가져 가고있다 : P. 예, 다른 방법이 있습니다. –

답변

3

문자열은 유효한 JSON처럼 보이는, 그래서 ...

NSError *error; 
NSData *data = [string dataUsingEncoding:NSUTF8StringEncoding]; 
NSArray *array = [NSJSONSerialization JSONObjectWithData:data options:nil error:&error]; 

은 어레이를 제공합니다 string 입력이 포함되어 제공. 웹 요청에서 오는 경우 단계를 저장하고 요청의 NSData을 직접 변환 할 수 있습니다.

+0

나는 그것을하고 있었고 다각형은지도에 그려지지 않았다. 이 질문을 게시 20 분 후, 나는 서버가 경도 대신 위도를 반환한다는 것을 발견하고 그 반대도 마찬가지입니다. 아무것도 검색하지 않고 2 시간 ... 답장을 보내 주셔서 감사합니다. 귀하의 도움에 대한 답변으로 표시하겠습니다. :) –

관련 문제