ios 常用的正则表达式(手机号邮箱md5加密验证空字符串等)
2017-06-01 15:15
615 查看
可以写一个nssring的category 给nsstring 增加一些方法,而这些方法就是一些正则表达式。
比如写一个叫做Helper的类 创建完了就是 NSString+Helper
然后在进行编写 .h 和.m文件
.m文件
这样就 大功告成了。使用的时候 导入类名:#import "NSString+Helper"
然后用的时候 ,就可以直接用了
比如:
如果在使用过程中遇见什么问题,可以联系我qq 673658917@qq.com
一起成长。
比如写一个叫做Helper的类 创建完了就是 NSString+Helper
然后在进行编写 .h 和.m文件
#pragma mark - 验证相关 /* 验证相关 */ //1.是否是手机号 - (BOOL)isMobileNumber; //2.是否是邮箱 -(BOOL)isValidateEmail; //3.是否是空字符串 - (BOOL)isNullStr; //4.是否是空对象 -(BOOL)isNull; //5.数字转字符串 +(NSString*) stringFromInteger:(NSInteger)num; //6.密码是否符合彼标准 8-14位字母数组的组合 -(BOOL)isValidatePwd; #pragma mark - 功能相关 /* 功能相关 */ //1.md5加密 - (NSString *) md5; //2.将字符串的首尾空格去掉 - (NSString *) trim;
.m文件
/* 验证相关 */ //1.是否是手机号 - (BOOL)isMobileNumber{ NSString * MOBILE = @"^1[3-9]\\d{9}$"; NSPredicate *regextestmobile = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", MOBILE]; if ([regextestmobile evaluateWithObject:self] == YES) { return YES; }else{ return NO; } } //2.是否是邮箱 -(BOOL)isValidateEmail{ NSString *emailRegex = @"^([a-z0-9A-Z]+[-_|\\.]?)+[a-z0-9A-Z]@([a-z0-9A-Z]+(-[a-z0-9A-Z]+)?\\.)+[a-zA-Z]{2,}$"; NSPredicate *emailTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", emailRegex]; return [emailTest evaluateWithObject:self]; } //3.是否是空字符串 - (BOOL)isNullStr{ if ([self isEqualToString:@"<NULL>"]) { return YES; }else if ([self isEqualToString:@"(null)"]){ return YES; }else if ([self isEqualToString:@"(NULL)"]){ return YES; }else if ([self isEqualToString:@"<null>"]){ return YES; } return NO; } //4.是否是空对象 -(BOOL)isNull{ // 判断是否为空串 if ([self isEqual:[NSNull null]]) { return YES; } else if ([self isKindOfClass:[NSNull class]]) { return YES; } else if (self==nil){ return YES; } return NO; } //5.数字转字符串 +(NSString*) stringFromInteger:(NSInteger)num{ return [NSString stringWithFormat:@"%ld",num]; } //6.密码是否符合彼标准 8-14位字母数组的组合 -(BOOL)isValidatePwd{ NSString *pwdRegex = @"^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z]{8,14}$"; NSPredicate *pwdTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", pwdRegex]; return [pwdTest evaluateWithObject:self]; } #pragma mark - 功能相关 /* 功能相关 */ //1.md5加密 - (NSString *) md5{ const char* str = [self UTF8String]; unsigned char result[CC_MD5_DIGEST_LENGTH]; CC_MD5(str, (CC_LONG)strlen(str), result); NSMutableString *ret = [NSMutableString stringWithCapacity:CC_MD5_DIGEST_LENGTH*2]; for(int i = 0; i<CC_MD5_DIGEST_LENGTH; i++) { [ret appendFormat:@"%02x",result[i]]; } return ret; } //2.将字符串的首尾空格去掉 - (NSString *) trim{ return [self stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]]; }
这样就 大功告成了。使用的时候 导入类名:#import "NSString+Helper"
然后用的时候 ,就可以直接用了
比如:
//验证电话号码 NSString *phoneNUM = @"17778176004"; NSLog(@"phoneNUM:%d",[phoneNUM isMobileNumber]); //邮箱验证 NSString *emailStr = @"673658917@qq.com"; NSLog(@"emailStr:%d",[emailStr isValidateEmail]); //md5加密 这个规则需要自己设置 前后台统一就好了 NSString *md5Str = @"abcdefg"; NSLog(@"md5Str:%@",[md5Str md5]); //去掉前后的空格 NSString *trimStr = @" 1234567890 "; NSLog(@"trimStr:%@",[trimStr trim]); //是否是空字符串 NSString *nullStr = @"(null)"; NSLog(@"nullStr:%d",[nullStr isNullStr]); //是否是空对象 貌似设置为空的时候就掉不起来下边的方法 NSString *nullObj = nil; [nullObj isNull]; NSLog(@"null:%d",[nullObj isNull]);
如果在使用过程中遇见什么问题,可以联系我qq 673658917@qq.com
一起成长。
相关文章推荐
- iOS最新验证手机号常用正则表达式(邮箱,车牌号)
- iOS开发用正则表达式验证身份证,邮箱,手机号等
- iOS 常用的正则表达式(手机、邮箱验证等)
- ios 正则表达式之验证手机号、邮箱、身份证、银行卡
- iOS正则表达式,手机号、邮箱验证
- 常用的正则表达式来验证信息.如:网址 邮箱 手机号等
- ios使用常用正则表达式验证密码身份证手机号
- 常用的正则表达式来验证信息.如:网址 邮箱 手机号等
- iOS开发正则表达式,验证是否是邮箱,手机号,银行卡号,URL等等
- ios使用常用正则表达式验证密码身份证手机号【转】
- ios之常用邮箱/手机号/车牌/身份证号/密码正则表达式使用
- iOS正则表达式,手机号、邮箱验证
- ios使用常用正则表达式验证手机号
- iOS验证邮箱, 手机号, 密码, 账户名 --- 正则表达式
- iOS中用正则表达式验证邮箱和手机号
- ios使用常用正则表达式验证密码身份证手机号
- iOS常用正则表达式验证(手机号、密码格式、身份证号等)
- ios 正则表达式之验证手机号、邮箱、身份证、银行卡
- iOS正则表达式验证手机号、邮箱、身份证号等
- iOS 用正则表达式验证邮箱和手机号