我希望能够将数字放在`符号后面和任何非数字字符前面并将其转换为整数。
实施例
Original String: 2*3*(123`)
Result: 123
Original String: 4`12
Result: 4
谢谢, 问候。
答案 0 :(得分:2)
您可以使用正则表达式。你可以找到所有这样的事件:
NSString *mystring = @"123(12`)456+1093`";
NSRegularExpression *regex = [NSRegularExpression regularExpressionWithPattern:@"([0-9]+)`" options:0 error:nil];
NSArray *matches = [regex matchesInString:mystring options:0 range:NSMakeRange(0, mystring.length)];
for (NSTextCheckingResult *match in matches) {
NSLog(@"%@", [mystring substringWithRange:[match rangeAtIndex:1]]);
}
// 12 and 1093
如果您只需要一次,请用以下内容替换for循环:
if (matches.count>0) {
NSTextCheckingResult *match = [matches objectAtIndex:0];
NSLog(@"%@", [mystring substringWithRange:[match rangeAtIndex:1]]);
}
答案 1 :(得分:1)
可以有更好的方法来做到这一点,我可以快速提出这个,
NSString *mystring = @"123(12`)";
NSString *neededString = nil;
NSScanner *scanner =[NSScanner scannerWithString:mystring];
[scanner scanUpToString:@"`" intoString:&neededString];
neededString = [self reverseString:neededString];
NSLog(@"%@",[self reverseString:[NSString stringWithFormat:@"%d",[neededString intValue]]]);
要反转字符串,您可以看到this