我得到了这个结果
{lhs: "1 U.S. dollar", rhs: "44.5097254 Indian rupees", error: "", icc: true}
在带有 ASIHTTPRequest 方法的 NSString 中。
但我只想在一个 NSString 中读取 44.5097254。怎么做?
那是一个 JSON 对象,您需要对其进行解析,然后获取所需的值。
这是一个不错的教程:http: //ios-blog.co.uk/tutorials/parsing-json-on-ios-with-asihttprequest-and-sbjson/
您可以使用以下方法获得它
-(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 文档中找到更多信息