gpt4 book ai didi

objective-c - 如何使用 NSScanner?

转载 作者:太空狗 更新时间:2023-10-30 03:16:06 25 4
gpt4 key购买 nike

我刚读过 Apple documentation对于 NSScanner。我正在尝试获取此字符串的整数:

@"user logged (3 attempts)"

我找不到任何例子,如何在括号内扫描。有什么想法吗?

代码如下:

NSString *logString = @"user logged (3 attempts)";
NSScanner *aScanner = [NSScanner scannerWithString:logString];

[aScanner scanInteger:anInteger];

NSLog(@"Attempts: %i", anInteger);

最佳答案

Ziltoid 的解决方案有效,但它的代码比您需要的多。

我不会为给定的情况费心实例化 NSScanner。 NSCharacterSet 和 NSString 给你所有你需要的:

    NSString *logString = @"user logged (3 attempts)";
NSString *digits = [logString stringByTrimmingCharactersInSet:
[[NSCharacterSet decimalDigitCharacterSet] invertedSet]];
NSLog(@"Attempts: %i", [digits intValue]);

或者在 Swift 中:

    let logString = "user logged (3 attempts)"
let nonDigits = NSCharacterSet.decimalDigitCharacterSet().invertedSet
let digits : NSString = logString.stringByTrimmingCharactersInSet(nonDigits)
NSLog("Attempts: %i", digits.intValue)

关于objective-c - 如何使用 NSScanner?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/594797/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com