Ich bin neu in der iPhone-Programmierung. Kann jemand sagen, wie die JSON-Zeichenfolge im iPhone analysiert wird? Ich verwende JSON-Analyse in meiner Anwendung. Dies sind meine JSON-Daten: Das JSON-Format ist dz.
{
"firstName": "John",
"lastName": "Smith",
"age": 25,
"address": {
"streetAddress": "21 2nd Street",
"city": "New York",
"state": "NY",
"postalCode": "10021"
}
}
Wie kann ich diese Analyse durchführen?
Antworten:
1 für die Antwort № 1Sie können ein JSON-Framework verwenden, d. https://github.com/stig/json-framework
0 für die Antwort № 2
Eine andere Lösung wäre NSRegularExpression
Speichern Sie die Json-Daten in einer Zeichenfolge und verwenden Sie dann den Regex Zum Beispiel ein Regex für die erste Zeile
NSError *error = NULL;
NSRegularExpression *regex = [NSRegularExpression regularExpressionWithPattern:@""firstName":[^"]*"([^"]*)"" options:0 error:&error];
NSArray *matches = [regex matchesInString:theString options:0 range:NSMakeRange(0, [theString length])];
NSTextCheckingResult *match = [matches objectAtIndex:0];
NSLog([theString substringWithRange:[match rangeAtIndex:1]]);
Erläuterung: Der Regex sucht nach Übereinstimmungen, bei denen Sie "firstName" haben: und dann eine variable Anzahl von Zeichen außer "(weil" gibt an, wo die Daten beginnen). ([^ "]) markiert einen bestimmten Bereich in der Regex (damit Sie ihn in dieser Zeile einzeln extrahieren können) [theString substringWithRange:[match rangeAtIndex:1]]
. [^ "] bedeutet jedes Zeichen außer "(weil dies das Ende der Daten ist). Ich weiß, dass dies anfangs verwirrend sein kann. Wenn Sie sich jedoch etwas Zeit nehmen, werden Sie feststellen, dass es ziemlich einfach ist.