首页 > 代码库 > 判断输入的字符串是否为 纯数字 还是 纯字母
判断输入的字符串是否为 纯数字 还是 纯字母
汇总:
- NSScanner: NSScanner是一个类,用于在字符串中扫描指定的字符,尤其是把它们翻译/转换为数字和别的字符串。可以在创建NSScaner时指定它的string属性,然后scanner会按照你的要求从头到尾地扫描这个字符串的每个字符。
- NSCharacterSet:主要用来判断已知字符串是否包含制定字符集,而不可以用来保存字符串。
1.使用NSScanner来判断
//判断是否为整形:- (BOOL)isPureInt:(NSString*)string{ NSScanner* scanner = [NSScanner scannerWithString:string]; int val; return[scan scanInt:&val] && [scan isAtEnd]; }//判断是否为浮点形:- (BOOL)isPureFloat:(NSString*)string{ NSScanner* scan = [NSScanner scannerWithString:string]; float val; return[scan scanFloat:&val] && [scan isAtEnd];}if( ![self isPureInt:str1] || ![self isPureFloat:str1]) { alert.text = @"警告:含非法字符,请输入纯数字!"; return;}
2.使用NSCharacterSet
- (NSCharacterSet *)controlCharacterSet; //控制符
- (NSCharacterSet *)whitespaceCharacterSet; //空格
- (NSCharacterSet *)whitespaceAndNewlineCharacterSet;//首位空格
- (NSCharacterSet *)decimalDigitCharacterSet; //十进制数字
- (NSCharacterSet *)letterCharacterSet; //文字
- (NSCharacterSet *)lowercaseLetterCharacterSet; //小写字母
- (NSCharacterSet *)uppercaseLetterCharacterSet; //大写字母
- (NSCharacterSet *)nonBaseCharacterSet; //非基础
- (NSCharacterSet *)alphanumericCharacterSet; //字母数字
- (NSCharacterSet *)decomposableCharacterSet; //可分解
- (NSCharacterSet *)illegalCharacterSet; //非法
- (NSCharacterSet *)punctuationCharacterSet; //标点
- (NSCharacterSet *)capitalizedLetterCharacterSet; //大写
- (NSCharacterSet *)symbolCharacterSet; //符号
- (NSCharacterSet *)newlineCharacterSet NS_AVAILABLE(10_5, 2_0);//换行符
//判断是否是纯字母- (BOOL)isPureCharacters:(NSString *)string{ string = [string stringByTrimmingCharactersInSet:[NSCharacterSet letterCharacterSet]]; if(string.length > 0) { return NO; } return YES;}//判断是否是纯数字- (BOOL)isPureNum:(NSString *)string{ string = [string stringByTrimmingCharactersInSet:[NSCharacterSet decimalDigitCharacterSet]]; if(string.length > 0) { return NO; } return YES;}//判断是否包含连续的数组或字母,yes为包含- (BOOL)rangeString:(NSString *)string { BOOL result = NO; for (int i = 0; i < string.length; i++) { if (string.length - i < 4 ) { break; } NSString *newStr = [string substringWithRange:NSMakeRange(i, 4)]; if ([self isPureCharacters:newStr] || [self isPureNum:newStr]) { NSLog(@"%@",newStr); result = YES; break; } } return result;}
判断输入的字符串是否为 纯数字 还是 纯字母
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。