我试图获取该字符串的整数:@“用户登录(3次尝试)”。
我找不到任何例子,如何扫描括号内。有任何想法吗?
以下是代码:
Nsstring *logString = @"user logged (3 attempts)";NSScanner *aScanner = [NSScanner scannerWithString:logString];[aScanner scanInteger:anInteger];NSLog(@"Attempts: %i",anInteger);解决方法 “这是我从字符串中获取某些值的方法
首先我定义了这个方法
- (Nsstring *)getDataBetweenFromString:(Nsstring *)data leftString:(Nsstring *)leftData rightString:(Nsstring *)rightData leftOffset:(NSInteger)leftPos; { NSInteger left,right; Nsstring *foundData; NSScanner *scanner=[NSScanner scannerWithString:data]; [scanner scanUpToString:leftData intoString: nil]; left = [scanner scanLocation]; [scanner setScanLocation:left + leftPos]; [scanner scanUpToString:rightData intoString: nil]; right = [scanner scanLocation] + 1; left += leftPos; foundData = [data substringWithRange: NSMakeRange(left,(right - left) - 1)]; return foundData; }
然后叫它
foundData = [self getDataBetweenFromString:data leftString:@"user logged (" rightString:@"attempts)" leftOffset:13];
leftOffset是左字符串的字符数
可能是一个更简单的清洁方式,但这是我的解决方案。
总结以上是内存溢出为你收集整理的objective-c – 如何使用NSScanner?全部内容,希望文章能够帮你解决objective-c – 如何使用NSScanner?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)