2012-01-03 12 views
5

muszę przeanalizować ten ciąg znaków w trzech różnych elementów:NSString parsowania

Location: 1|#69.83623|#24.432223|#Cupertino, California 

Wartość ta jest przechowywana w jednym NSString. Potrzebuję go w trzech różnych ciągach. Jeden ciąg dla szerokości geograficznej, jeden dla długości i jeden dla lokalizacji.

Każdy pomysł, jak mogę to zrobić?

Dzięki!

Odpowiedz

12

Można użyć tej metody, aby uzyskać tablicę różnych elementów:

NSArray *bits = [locationString componentsSeparatedByString: @"|#"]; 

Każda pozycja w NSArray będzie NSString.

0
NSString *t = @"Location: 1|#69.83623|#24.432223|#Cupertino, California"; 
    NSArray *k = [t componentsSeparatedByString:@"|"]; 
    NSLog(@"components %@", k); 
4

Spróbuj następującą

NSString *location = @"1|#69.83623|#24.432223|#Cupertino, California"; 
NSArray *components = [location componentsSeparatedByString:@"|#"]; 

NSLog(@"%@",components); 
float latitude = [[components objectAtIndex:1] floatValue]; 
float longitude = [[components objectAtIndex:2] floatValue]; 
NSString *loc = [components objectAtIndex:3]; 
+0

to działa bardzo dobrze. Dziękuję Ci –