判断手机,邮箱格式合法性
来源:互联网 发布:怎么当淘宝代理商 编辑:程序博客网 时间:2024/04/28 13:45
一、最简单的就是利用系统的NSPredicate
//利用正则表达式验证
- (BOOL)validateEmail:(NSString *)email
{
@"[A-Z0-9a-z._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,4}"
NSString *emailRegex = @"^\\w+([-+.]\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*$";
NSPredicate *emailTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", emailRegex];
return [emailTest evaluateWithObject:email];
}
-(BOOL)validatePhone:(NSString *)phone
{
NSString *phoneRegex =@"\\b(1)[358][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]\\b";
NSPredicate *phoneTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@",phoneRegex];
return [phoneTest evaluateWithObject:phone];
}
if (![self validateEmail:self.addressTextField.text]) {
[TKLoadingView showTkloadingAddedTo:self.navigationController.view title:@"您输入的不是邮箱地址\n请重新输入"
activityAnimated:NO];
[TKLoadingView dismissTkFromView:self.navigationController.view animated:YES afterShow:2.0];
[self.addressTextField becomeFirstResponder];
return;
}
-(BOOL)validateEmail:(NSString*)email
{
if((0 != [email rangeOfString:@"@"].length) &&
(0 != [email rangeOfString:@"."].length))
{
NSCharacterSet* tmpInvalidCharSet = [[NSCharacterSet alphanumericCharacterSet] invertedSet];
NSMutableCharacterSet* tmpInvalidMutableCharSet = [[tmpInvalidCharSet mutableCopy] autorelease];
[tmpInvalidMutableCharSet removeCharactersInString:@"_-"];
/*
*使用compare option 来设定比较规则,如
*NSCaseInsensitiveSearch是不区分大小写
*NSLiteralSearch 进行完全比较,区分大小写
*NSNumericSearch 只比较定符串的个数,而不比较字符串的字面值
*/
NSRange range1 = [email rangeOfString:@"@"
options:NSCaseInsensitiveSearch];
//取得用户名部分
NSString* userNameString = [email substringToIndex:range1.location];
NSArray* userNameArray = [userNameString componentsSeparatedByString:@"."];
for(NSString* string in userNameArray)
{
NSRange rangeOfInavlidChars = [string rangeOfCharacterFromSet: tmpInvalidMutableCharSet];
if(rangeOfInavlidChars.length != 0 || [string isEqualToString:@""])
return NO;
}
//取得域名部分
NSString *domainString = [email substringFromIndex:range1.location+1];
NSArray *domainArray = [domainString componentsSeparatedByString:@"."];
for(NSString *string in domainArray)
{
NSRange rangeOfInavlidChars=[string rangeOfCharacterFromSet:tmpInvalidMutableCharSet];
if(rangeOfInavlidChars.length !=0 || [string isEqualToString:@""])
return NO;
}
return YES;
}
else {
return NO;
}
}
- 判断手机,邮箱格式合法性
- 判断邮箱的合法性
- js判断手机,邮箱格式是否正确
- 判断邮箱合法性的方法
- 判断域名格式合法性
- 判断字符数 中文 邮箱号 密码位数 手机格式 邮箱格式
- 设置手机邮箱格式
- checkEmail判断邮箱格式
- 邮箱,手机号格式判断
- iOS判断邮箱格式
- 判断是否邮箱格式
- 判断电话格式 邮箱格式
- iOS判断邮箱合法性的代码实现案例
- ios开发-判断邮箱、手机号、车牌、身份证。。。。。合法性
- iOS开发之判断手机号和邮箱的合法性
- 正则判断手机、密码、邮箱
- java 判断邮箱和手机
- 正则判断手机、邮箱等
- JavaScript入门基础 (一)
- MySQL字符串函数使用样例(字符串截取)
- GCC源码分析(三)——中间语言
- MFC网络编程
- An Introduction to ASP.NET Web API
- 判断手机,邮箱格式合法性
- 编程珠玑--位图法排序
- 如何在linux系统下查看计算机配置
- linux ssh key配置方法
- [FastDFS] FastDFS 配置文件详解
- Android软件开发之PreferenceActivity中的组件
- poj 3343 Against Mammoths
- Java中的注解以及应用 @Deprecated @SupressWarning @Override
- 硬件相关信息介绍(一)