1

我得到了这个结果

{lhs: "1 U.S. dollar", rhs: "44.5097254 Indian rupees", error: "", icc: true}

在带有 ASIHTTPRequest 方法的 NSString 中。

但我只想在一个 NSString 中读取 44.5097254。怎么做?

4

2 回答 2

1

那是一个 JSON 对象,您需要对其进行解析,然后获取所需的值。

这是一个不错的教程:http: //ios-blog.co.uk/tutorials/parsing-json-on-ios-with-asihttprequest-and-sbjson/

于 2012-09-06T11:32:38.443 回答
0

您可以使用以下方法获得它

-(NSString*)getNumberFromString(NSString*)theString{
    NSError *error = NULL;
    NSRegularExpression *regex = [NSRegularExpression regularExpressionWithPattern:@"rhs: \"(([0-9]*[.]*[0-9]*)*)" options:NSRegularExpressionCaseInsensitive | NSRegularExpressionAnchorsMatchLines error:&error];
    NSArray *matches = [regex matchesInString:theString options:0 range:NSMakeRange(0, [theString length])];
    NSTextCheckingResult *match = [matches objectAtIndex:0];
    return [theString substringWithRange:[match rangeAtIndex:1]]);

}

NSRegularExpression您可以在 Apple 文档中找到更多信息

于 2012-09-06T11:36:26.850 回答