您的位置:首页 > 其它

正则表达式集锦(一)

2016-04-22 12:00 441 查看

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

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: