我在 xCode 中有一个 TextField,有人要求我只承认某些类型的字符给我这个文本字符串:
^([A-ZÑÑÁÉÍÓÚÀÈÌÒÙÄËÏÖÜ ])*$
或者这个:
^([0-9])*$
我知道一个使用名为 textField shouldChangeCharactersInRange 的 UITextFieldDelegate 的方法,这是我实现此方法的方式:
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
{
NSString *allowedCharacters = @"abcdefghijklmnñopqrstuvwxyzABCDEFGHIJKLMÑNOPQRSTUVWXYZ0123456789.@-_ ";
NSCharacterSet *characterSet = [NSCharacterSet characterSetWithCharactersInString:allowedCharacters];
if ([string stringByTrimmingCharactersInSet:characterSet].length == 0)textField.text = [textField.text stringByReplacingCharactersInRange:range withString:string];
return NO;
return YES;
}
如果您看到,在我的编程中,我的变量allowedCharacters存储了我所有的有效字符,但格式不同(我必须写下所有允许的字符),
我想编写类似的程序,但使用我伙伴的文本格式 ^([0-9])*$(使用范围的文本)我该怎么做
提前致谢