1.判断字符串是否为电话号码,你可以取出部分判断联通、移动、电信!
+(BOOL)checkTelNumber:(NSString*)telNumber
{
if (telNumber.length < 11)
{
return NO;
}else{
/**
* 移动号段正则表达式
*/
NSString *CM_NUM = @"^((13[4-9])|(147)|(15[0-2,7-9])|(178)|(18[2-4,7-8]))\\d{8}|(1705)\\d{7}$";
/**
* 联通号段正则表达式
*/
NSString *CU_NUM = @"^((13[0-2])|(145)|(15[5-6])|(176)|(18[5,6]))\\d{8}|(1709)\\d{7}$";
/**
* 电信号段正则表达式
*/
NSString *CT_NUM = @"^((133)|(153)|(177)|(18[0,1,9]))\\d{8}$";
NSPredicate *pred1 = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", CM_NUM];
BOOL isMatch1 = [pred1 evaluateWithObject:telNumber];
NSPredicate *pred2 = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", CU_NUM];
BOOL isMatch2 = [pred2 evaluateWithObject:telNumber];
NSPredicate *pred3 = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", CT_NUM];
BOOL isMatch3 = [pred3 evaluateWithObject:telNumber];
if (isMatch1 || isMatch2 || isMatch3) {
return YES;
}else{
return NO;
}
}
}
2.判断是否有空格
+(BOOL)checkIfHasWhitespaceInString:(NSString *)string{
// NSString *_string = [NSString stringWithFormat:@"123 456"];
NSRange _range = [string rangeOfString:@" "];
if (_range.location != NSNotFound) {
//有空格
return YES;
}else {
//没有空格
return NO;
}
}
3.判断是否包含特殊字符
+(BOOL)checkIfHasSpecialCharacterInString:(NSString *)string{
//***需要过滤的特殊字符:~¥#&*<>《》()[]{}【】^@/£¤¥|§¨「」『』¢¬ ̄~@#¥&*()——+|《》$_€。
NSRange urgentRange = [string rangeOfCharacterFromSet: [NSCharacterSet characterSetWithCharactersInString: @"~¥#&*<>《》()[]{}【】^@/£¤¥|§¨「」『』¢¬ ̄~@#¥&*()——+|《》$_€"]];
if (urgentRange.location == NSNotFound)
{ //有
return NO;
}
//没有
return YES;
}
网友评论