gpt4 book ai didi

ios - 使用 NSScanner 过滤字符串并删除数字字符后的空格

转载 作者:行者123 更新时间:2023-11-29 13:42:13 28 4
gpt4 key购买 nike

我一直在尝试使用以下代码过滤字符串:

//the String with the original text  
NSString *unfilteredString = @"( A1 )";
//initialize a string that will hold the result
NSMutableString *resultString = [NSMutableString stringWithCapacity:unfilteredString.length];

NSScanner *scanner = [NSScanner scannerWithString:unfilteredString];
NSCharacterSet *allowedChars = [[NSCharacterSet decimalDigitCharacterSet] invertedSet];

while ([scanner isAtEnd] == NO) {
NSString *buffer;
if ([scanner scanCharactersFromSet:allowedChars intoString:&buffer]) {
[resultString appendString:buffer];
}
else {
[scanner setScanLocation:([scanner scanLocation] + 1)];
}
}
NSLog (@"Result: %@", resultString);

这给了我结果:

Result: ( A)

如您所见,它不仅删除了数字 1,还删除了尾随空格。

有什么提示吗?

最佳答案

我没怎么用过 NSScanner,但我认为你的问题是默认情况下 NSScanner 在扫描时会跳过空格和换行符。如果在实例化扫描仪对象后添加此行,您的代码将起作用:

[scanner setCharactersToBeSkipped:nil];

关于ios - 使用 NSScanner 过滤字符串并删除数字字符后的空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8758793/

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