解析字符串值

时间:2015-12-17 20:25:40

标签: objective-c parsing

- 我正在尝试使用Objective-C解析此字符串值。

  NSString * str= @"MyDataCallBack({
      "one": "john",
      "two": "mark",
      "three": "hanna"
    });";

我希望按名称获取价值内容。请考虑这个伪代码:

NSString * data = parse(“one”);

然后输出“one”

的值

NSLog(@“数据值为%@ \ n”,数据); //数据值是john

但我不知道如何实现这一目标。请帮我实现

那并告诉我如何用代码完成。

1 个答案:

答案 0 :(得分:1)

您可以直接使用NSJSONSerialization来实现此目的:

NSString * str= @"MyDataCallBack({\"one\": \"john\", \"two\": \"mark\", \"three\": \"hanna\"});";
str = [str stringByReplacingOccurrencesOfString:@"MyDataCallBack(" withString:@""];
str = [str stringByReplacingOccurrencesOfString:@");" withString:@""];
NSData *data = [str dataUsingEncoding:NSUTF8StringEncoding];
NSDictionary *ec = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableLeaves error:nil];
NSLog(@"%@",ec[@"one"]);

希望这有帮助!