iOS判斷一個字符串中是否都是數字

[objc] view plain copy
  1. 第一種方式是使用NSScanner:  
  2. 1. 整形判斷  
  3. - (BOOL)isPureInt:(NSString *)string{  
  4. NSScanner* scan = [NSScanner scannerWithString:string];   
  5. int val;   
  6. return [scan scanInt:&val] && [scan isAtEnd];  
  7. }  
  8.    
  9. 2.浮點形判斷:  
  10. - (BOOL)isPureFloat:(NSString *)string{  
  11. NSScanner* scan = [NSScanner scannerWithString:string];   
  12. float val;   
  13. return [scan scanFloat:&val] && [scan isAtEnd];  
  14. }  
  15. 第二種方式是使用循環判斷  
  16. - (BOOL)isPureNumandCharacters:(NSString *)text   
  17. {   
  18.     for(int i = 0; i < [text length]; ++i) {  
  19.         int a = [text characterAtIndex:i];   
  20.         if ([self isNum:a]){  
  21.             continue;   
  22.         } else {   
  23.             return NO;   
  24.         }   
  25.     }   
  26.     return YES;   
  27. }  
  28. 或者 C語言中常用的方式.  
  29. - (BOOL)isAllNum:(NSString *)string{  
  30.     unichar c;  
  31.     for (int i=0; i<string.length; i++) {  
  32.         c=[string characterAtIndex:i];  
  33.         if (!isdigit(c)) {  
  34.             return NO;  
  35.         }  
  36.     }  
  37.     return YES;  
  38. }  
  39. 第三種方式則是使用NSString的trimming方法  
  40. - (BOOL)isPureNumandCharacters:(NSString *)string   
  41. {   
  42. string = [string stringByTrimmingCharactersInSet;[NSCharacterSet decimalDigitCharacterSet]];  
  43. if(string.length > 0)   
  44. {  
  45.      return NO;  
  46. }   
  47. return YES;  
  48. }  
  49. 以上三種能夠幫助實現判斷是否爲數字的函數,iOS中沒有直接判斷是否是數字的方法,所以只能夠自己添加方法去實現了.  
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章