检查NSString是否为整数

时间:2012-09-02 17:32:53

标签: iphone ios sdk

  

可能重复:
  NSString is integer?

我正在寻找一个字符串是否只有数字。基本上是:

if (string is integer):
   #do whatever
else:
   #error

我该怎么做?谢谢!

3 个答案:

答案 0 :(得分:5)

我使用过[NSCharacterSet decimalDigitCharacterSet]。绝对运作良好。

NSCharacterSet* notDigits = [[NSCharacterSet decimalDigitCharacterSet] invertedSet];

if ([newString rangeOfCharacterFromSet:notDigits].location == NSNotFound)
{
// newString consists only of the digits 0 through 9
}

答案 1 :(得分:0)

我认为this应该对您有所帮助,Stack Overflow上存在许多类似的问题。

答案 2 :(得分:0)

-(BOOL)isANumber:(NSString *)string{
    NSPredicate *numberPredicate = [NSPredicate predicateWithFormat:@"SELF MATCHES '^[0-9]+$'"];
    return [numberPredicate evaluateWithObject:string];
}