Как использовать регулярное выражение в iOS sdk?Как использовать регулярное выражение в iOS sdk
Мне нужно проверить UITextField
, используя регулярное выражение, чтобы разрешить только числовые значения в UITextField
.
Как использовать регулярное выражение в iOS sdk?Как использовать регулярное выражение в iOS sdk
Мне нужно проверить UITextField
, используя регулярное выражение, чтобы разрешить только числовые значения в UITextField
.
В вашем shouldChangeCharactersInRange вы можете сделать это с помощью этого
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
{
NSString *newString = [textField.text stringByReplacingCharactersInRange:range withString:string];
NSString *expression = @"^([0-9]+$";
NSRegularExpression *regex = [NSRegularExpression regularExpressionWithPattern:expression
options:NSRegularExpressionCaseInsensitive
error:nil];
NSUInteger numberOfMatches = [regex numberOfMatchesInString:newString
options:0
range:NSMakeRange(0, [newString length])];
if (numberOfMatches == 0)
return NO;
return YES;
}
спасибо за способ делегата и много кода! – user1478583
Попробуйте это, было бы полезно для вас
- (void)textFieldDidEndEditing:(UITextField *)textField
{
activeField = nil;
if (textField == tfMobile)
{
NSString *[email protected]"[0-9]*";
NSPredicate *MobNumTest=[NSPredicate predicateWithFormat:@"SELF MATCHES %@",strRegExp];
if([MobNumTest evaluateWithObject:textField.text]==NO)
{
UIAlertView *alert=[[UIAlertView alloc]initWithTitle:@"Warning" message:@"Please Enter correct contact no." delegate:nil cancelButtonTitle:@"ok" otherButtonTitles:nil];
[alert show];
[alert release];
tfMobile.text [email protected]"";
}
}
}
Вызовите этот метод, где вам нужно.it возвращает true, если checkString содержит только цифры
- (BOOL) textFieldValidation:(NSString *)checkString {
NSString *stricterFilterString = @"[0-9]+";//here + is for one or more numerals(use * for zero or more numerals)
NSString *regEx = stricterFilterString;
NSPredicate *emailTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", regEx];
return [emailTest evaluateWithObject:checkString];
}
[Что вы пробовали] (http://www.whathaveyoutried.com) – akk
@RKK - Очевидно, не пытались искать! –
@RKK Если я не пробовал, как сделать сейчас о регулярном выражении! я смутил, как использовать 9-0 $, как этот символ в моем кодировании! – user1478583