Fork me on GitHub

用正则表达式使UITextField接受规定的值

只能输入非零开头的正整数用下面的代码

- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
{
NSString *result = [textField.text stringByReplacingCharactersInRange:range withString:string];
if ([result length] == 0) return YES; // Allow delete all character which are entered.

NSString *regex = @"^[0-9]*[1-9][0-9]*$";
NSPredicate *prd = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", regex];
return [prd evaluateWithObject:result];
}



posted on 2012-03-01 09:45  pengyingh  阅读(281)  评论(0)    收藏  举报

导航