- (BOOL)isPhoneNumber; // 电话
- (BOOL)isIPAddress; //IP地址
- (BOOL)isIdcard; // 身份证
- (BOOL)isChinese ; //中文
- (BOOL)isEnglishChinese;//中文或英文
- (BOOL)iSNumber; //是数字
- (BOOL)iSNumber_English;
- (BOOL)match:(NSString *)pattern
{
// 1.创建正则表达式
NSRegularExpression *regex = [[NSRegularExpression alloc] initWithPattern:pattern options:0 error:nil];
// 2.测试字符串
NSArray *results = [regex matchesInString:self options:0 range:NSMakeRange(0, self.length)];
return results.count > 0;
}
- (BOOL)isQQ
{
// 1.不能以0开头
// 2.全部是数字
// 3.5-11位
return [self match:@"^[1-9]\\d{4,10}$"];
}
- (BOOL)isPhoneNumber
{
// 1.全部是数字
// 2.11位
// 3.以13\15\18\17开头
return [self match:@"^1[3578]\\d{9}$"];
// JavaScript的正则表达式:\^1[3578]\\d{9}$\
}
- (BOOL)isIPAddress
{
// 1-3个数字: 0-255
// 1-3个数字.1-3个数字.1-3个数字.1-3个数字
return [self match:@"^\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}$"];
}
- (BOOL)isIdcard{
return [self match:@"^(\\d{14}|\\d{17})(\\d|[xX])$"];
}
-(BOOL)isChinese{
return [self match:@"(^[\u4e00-\u9fa5]+$)"];
}
- (BOOL)isEnglishChinese{
return [self match:@"\\[[0-9a-zA-Z\\u4e00-\\u9fa5]+\\]"];
}
-(BOOL)iSNumber{
return [self match:@"[0-9]+$"];
}
-(BOOL)iSNumber_English{
return [self match:@"[a-zA-Z0-9]+$"];
}