2011-08-18 5 views
0

문자열을 정렬해야합니다 (높거나 낮음이 아님), 문자열은 각 숫자를 쉼표로 구분하고 세 번째 숫자마다 공백을 두어 설정합니다.문자열의 내용을 배열로 배열

26,2496,1492252306 1049,99,68353132 8609959587920 4717,99,43863427 807,99,67243688 1382,99,37865117 10889914810482 95,99,67711274 5,99,200000000 3310,99,25639438 75,99,157217334 1923,99,29678736 48,99,118806349 133,99,35055345 563,99,21098356 3410,99,17805574 47,99,62821143 25049914821240 5,99,200000000 3076,99,19425499 474,99,31321799 3983,99,16825678 17826,99,13768252 1129,99,17249030 5393,99,14082021 338,120,137201472 2850,1944 -1, -1 -1, -1 -1, - 1 -1, -1 4509,3988 3863,3987 2632,4148 5790,4105 -1, -1 -1, -1

3 가지 숫자 각각에 대해 일종의 연관성을 만들어야합니다. 어떤 2 차원 배열과 사전의 라인을 따라 뭔가처럼. 어떠한 제안?

+0

난 정말 죄송합니다, 질문이 무엇인지 이해하지 않습니다. – Vic

답변

2

이렇게, 당신의 문자열이 "를 사용해, myNumbers"라는 변수에 저장됩니다 가정 :

NSString *myNumbers = @"26,2496,1492252306 1049,99,68353132 860,99,59587920 4717,99,43863427 807,99,67243688 1382,99,37865117 1088,99,14810482 95,99,67711274 5,99,200000000 3310,99,25639438 75,99,157217334 1923,99,29678736 48,99,118806349 133,99,35055345 563,99,21098356 3410,99,17805574 47,99,62821143 2504,99,14821240 5,99,200000000 3076,99,19425499 474,99,31321799 3983,99,16825678 17826,99,13768252 1129,99,17249030 5393,99,14082021 338,120,137201472 2850,1944 -1,-1 -1,-1 -1,-1 -1,-1 4509,3988 3863,3987 2632,4148 5790,4105 -1,-1 -1,-1"; 

NSArray *triples = [myNumbers componentsSeparatedByString:@" "]; 

NSMutableArray *matrix = [[NSMutableArray alloc] init]; 

for (NSString *triple in triples) { 
    [matrix addObject:[triple componentsSeparatedByString:@","]]; 
} 

NSLog(@"matrix: %@", matrix); 
[matrix release]; 
0

먼저 공백으로 문자열을 분할 한 다음 분할 된 각 항목을 쉼표로 다음과 같은 알고리즘으로 분할하는 방법은 무엇입니까?

threeItems = split main string with white space 
for each itemString in threeItems 
    threeItem = split itemString with comma 
    do something with threeItem 
end for 
+0

나는 당신이 달성하고자하는 것을 완전히 확신하지는 못했지만 "무언가를하는 부분"에서 2D 배열로 항목을 인덱싱하고 원하는 방식으로 정렬 할 수 있습니다. 정렬 방법에 따라 색인을 생성하는 더 좋은 방법이있을 수 있습니다. – katsuya

관련 문제