私はいたるところを見てきましたが、これに有効な解決策が見つかりません。
私は持っている:
- (BOOL) textFieldShouldEndEditing:(UITextField *)textField {
NSString *regEx = @"/^[1-9]\d*(\.\d+)?$/";
NSRange r = [textField.text rangeOfString:regEx options:NSRegularExpressionSearch];
if (r.location == NSNotFound) {
UIAlertView *av = [[UIAlertView alloc] initWithTitle:@"Entry Error"
message:@"Enter only numbers or decimals"
delegate:self
cancelButtonTitle:@"OK"
otherButtonTitles:nil];
[av show];
return NO;
} else {
return YES;
}
}
しかし、正規表現は機能しません。数字と小数のみを受け入れるようにしたい。バックスラッシュなどを二重にする必要がある正規表現とのコードに奇妙な違いがあることは知っていますが、それを理解できませんでした。