我有一个 iOS 应用程序,UITextField
它允许用户输入数字。如何确保用户输入的值是有效数字(整数或小数)。这是我尝试过的,但由于某种原因,它不适用于十进制数:
NSCharacterSet *notDigits = [[NSCharacterSet decimalDigitCharacterSet] invertedSet];
if ([numString rangeOfCharacterFromSet:notDigits].location == NSNotFound) {
NSLog(@"valid number");
}
else {
NSLog(@"invalid number");
}
如果我输入一个十进制数字,例如 435.634,上面的代码会在控制台日志中返回“无效数字”。我不明白为什么这在我使用时不起作用decimalDigitCharacterSet
?