正则表达式集锦(一)

来源:互联网 发布:如何看待马蓉 知乎 编辑:程序博客网 时间:2024/05/01 23:05

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];

    }

}

0 0
原创粉丝点击