NSString から結果を計算する方法を見つけようとしています。単純な NSString 電卓カテゴリはありますか?
NSString *str = @"10+20/2";
int result = [[str stringByCalculatingResult] intValue];
NSLog (@"result:%i", result);
出力を優先:
result:20
解決ありがとうございます。
カテゴリー:
//NSString+Calculator.h
@interface NSString (Calculator)
- (NSString*)stringByCalculatingResult;
@end
//NSString+Calculator.m
@implementation NSString (Calculator)
- (NSString*)stringByCalculatingResult
{
NSExpression *expression = [NSExpression expressionWithFormat:self];
NSNumber *value = [expression expressionValueWithObject:nil context:nil];
return [value stringValue];
}
@end