Ios NSString检测数字然后插入括号
我正在制作一个iOS计算器应用程序。我希望能够在字符串中找到相邻的数字字符和括号,如以下示例所示:Ios NSString检测数字然后插入括号,ios,ipad,nsstring,formatting,calculator,Ios,Ipad,Nsstring,Formatting,Calculator,我正在制作一个iOS计算器应用程序。我希望能够在字符串中找到相邻的数字字符和括号,如以下示例所示: 23(8+9) (89+2)(78) (7+8)9 我希望能够在这些事件之间插入一个字符: 23(8+9)将23*(8+9) (89+2)(78)将是(89+2)*(78) (7+8)9将是(7+8)*9 这里是我编写的一个快速函数,它使用正则表达式查找匹配模式,然后在需要的地方插入一个“*”。它可以匹配两个括号(例如“5”(“或”)3,也可以匹配一个数字和括号(例如“5”)。如果中间有空格
- 23(8+9)
- (89+2)(78)
- (7+8)9
- 23(8+9)将23*(8+9)
- (89+2)(78)将是(89+2)*(78)
- (7+8)9将是(7+8)*9
NSString *result;
result = [self stringByInsertingMultiplicationSymbolInString:@"23(8+9)"];
NSLog(@"Result: %@", result);
result = [self stringByInsertingMultiplicationSymbolInString:@"(89+2)(78)"];
NSLog(@"Result: %@", result);
result = [self stringByInsertingMultiplicationSymbolInString:@"(7+8)9"];
NSLog(@"Result: %@", result);
这将输出:
Result: 23*(8+9)
Result: (89+2)*(78)
Result: (7+8)*9
注意:此代码使用ARC,因此如果使用MRC,请记住自动释放复制的字符串。您的第一个示例没有更改表达式的含义吗?似乎是DDMathParser的合适任务。哇!太神了我要用DDMathParser,但你的标记是正确的!
Result: 23*(8+9)
Result: (89+2)*(78)
Result: (7+8)*9