首页 > 系统 > iOS > 正文

iOS特殊字符

2019-11-08 00:38:18
字体:
来源:转载
供稿:网友

iOS键盘中有一些特殊字符,我们常常会对它们做过滤和限制

例如,我们在账号登陆的时候限制,即:已经点击该按钮的时候,该:

+ (BOOL)checkAccountFormat:(NSString *)str{    /* 判断字符串是否为空 */    if (isStringEmpty(str)) {        return NO;    }        /* 判断长度是否合法 */    if (str.length < 4 || str.length > 20) {        return NO;    }        /* 用正则来限制是否合理 [a-zA-Z0-9_] 范围在这些 */    NSError *error = nil;        NSRegularExPRession *expression = [NSRegularExpression regularExpressionWithPattern:@"^[a-zA-Z0-9_]*$" options:NSRegularExpressionCaseInsensitive error:&error];        if (error) {        NSLog(@"%@", error);        return NO;    }        NSUInteger numberOfMatches = [expression numberOfMatchesInString:str options:0 range:NSMakeRange(0, str.length)];        //NSLog(@"regex count == %d", numberOfMatches);    return numberOfMatches;}

还有一种实现,我们可以在输入的时候就限制其输入,使之无法输入,例如我们在对输入框限制汉字输入的时候:

/* 可以输入字母和数字,和一切iphone上的特殊字符,因为有些特殊字符,服务器并不限制 */#define kAlphaNumSpecial @"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789 -/:;()¥&@/".,?!'[]{}#%^*+=_//|~<>$€£•"/* 在代理方法中用字符集限制 */- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string{    NSCharacterSet *cs = [[NSCharacterSet characterSetWithCharactersInString:kAlphaNumSpecial] invertedSet];    NSString *filtered = [[string componentsSeparatedByCharactersInSet:cs] componentsJoinedByString:@""];    return [string isEqualToString:filtered];}而关于,Xcode中一些特殊字符怎么输入,我们可以看这个:

http://www.jianshu.com/p/518445088d11


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表