1、正则表达式(0.0-9.9)
- (BOOL)validateRebt:(NSString *)text
{
NSPredicate *pred = [NSPredicatepredicateWithFormat:@"SELF MATCHES %@",@"^(\\d|9)(\\.\\d)?$"];
if (text.length ==0) {
returnYES;
}
return [predevaluateWithObject:text];
}
2、正则表达式(0.00 - 999999.99)
- (BOOL)validatePrice:(NSString *)text
{
//
NSPredicate *pred = [NSPredicatepredicateWithFormat:@"SELF MATCHES %@",@"^\\d{1,6}(\\.\\d{1,2})?$"];
if (text.length ==0) {
returnYES;
}
return [predevaluateWithObject:text];
}
3、正则表达式(0 - 9999)
- (BOOL)validateNum:(NSString *)text
{
// (\\d{0,})?
NSPredicate *pred = [NSPredicatepredicateWithFormat:@"SELF MATCHES %@",@"([1-9][0-9]*)|([0])"];
if (text.length ==0) {
returnYES;
}
return [predevaluateWithObject:text];
}
4、正则表达式:判断是否是一个有效的邮箱地址
- (BOOL)isValidateEmail:(NSString *)Email
{
NSString *emailCheck =@"[A-Z0-9a-z._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,4}";
NSPredicate *emailTest = [NSPredicatepredicateWithFormat:@"SELF MATCHES %@",emailCheck];
return [emailTestevaluateWithObject:Email];
}
5、正则表达式:车牌号验证
- (BOOL) validateCarNo:(NSString *)carNo
{
NSString *carRegex =@"^[\u4e00-\u9fa5]{1}[a-zA-Z]{1}[a-zA-Z_0-9]{4}[a-zA-Z_0-9_\u4e00-\u9fa5]$";
NSPredicate *carTest = [NSPredicatepredicateWithFormat:@"SELF MATCHES %@",carRegex];
return [carTestevaluateWithObject:carNo];
}
6、正则表达式:车型
- (BOOL) validateCarType:(NSString *)CarType
{
NSString *CarTypeRegex =@"^[\u4E00-\u9FFF]+$";
NSPredicate *carTest = [NSPredicatepredicateWithFormat:@"SELF MATCHES %@",CarTypeRegex];
return [carTestevaluateWithObject:CarType];
}
7、正则表达式:判断中文
- (BOOL)validateChinese:(NSString *)chinese
{
NSString *chineseRegex =@"^[\u4e00-\u9fa5]{0,}$";
NSPredicate *passWordPredicate = [NSPredicatepredicateWithFormat:@"SELF MATCHES %@",chineseRegex];
return [passWordPredicateevaluateWithObject:chinese];
}
8、正则表达式:身份证号
- (BOOL) validateIdentityCard: (NSString *)identityCard
{
BOOL flag;
if (identityCard.length <=0) {
flag = NO;
return flag;
}
NSString *regex2 =@"^(\\d{14}|\\d{17})(\\d|[xX])$";
NSPredicate *identityCardPredicate = [NSPredicatepredicateWithFormat:@"SELF MATCHES %@",regex2];
return [identityCardPredicateevaluateWithObject:identityCard];
}
9、正则表达式:判断字符串是否全部为数字
- (BOOL)isAllNmubersWithText:(NSString *)text
{
//^[0-9]*$
NSString *numbers =@"^[0-9]+$";
NSPredicate *numbersTest = [NSPredicatepredicateWithFormat:@"SELF MATCHES %@",numbers];
return [numbersTestevaluateWithObject:text];
}
10、正则表达式:小数点后两位,整数位数自定义(numbers=0表示整数位无限制,numbers>0表示整数位限制为numbers位)
+(BOOL)validateNumber:(NSString *)text withIntegerNumber:(int)numbers
{
if (numbers>0) {
NSString *str = [NSStringstringWithFormat:@"^\\d{1,%d}(\\.\\d{1,2})?$",numbers];
NSPredicate *pred = [NSPredicatepredicateWithFormat:@"SELF MATCHES %@", str];
if (text.length ==0) {
returnYES;
}
return [predevaluateWithObject:text];
}else{
NSPredicate *pred = [NSPredicatepredicateWithFormat:@"SELF MATCHES %@",@"^(?!0\\d)\\d+(\\.\\d{1,2})?$"];
if (text.length ==0) {
returnYES;
}
return [predevaluateWithObject:text];
}
}