美文网首页
iOS 判断字母、数字、汉字

iOS 判断字母、数字、汉字

作者: gaookey | 来源:发表于2021-11-25 22:35 被阅读0次
/// 全汉字
- (BOOL)isOnlyChinese {
    return [[NSPredicate predicateWithFormat:@"SELF MATCHES %@", @"[\u4e00-\u9fa5]+"] evaluateWithObject:self];
}

/// 全数字
- (BOOL)isOnlyNumbers {
    return [[NSPredicate predicateWithFormat:@"SELF MATCHES %@", @"[0-9]*"] evaluateWithObject:self];
}

/// 全字母
- (BOOL)isOnlyLetters {
    return [[NSPredicate predicateWithFormat:@"SELF MATCHES %@", @"[a-zA-Z]*"] evaluateWithObject:self];
}

/// 字母或数字
- (BOOL)isOnlyAlphaNumeric {
    return [[NSPredicate predicateWithFormat:@"SELF MATCHES %@", @"[a-zA-Z0-9]*"] evaluateWithObject:self];
}
/// 只有字母
- (BOOL)isOnlyLetters {
    NSCharacterSet *set = [[NSCharacterSet characterSetWithCharactersInString:@"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"] invertedSet];
    return ([self rangeOfCharacterFromSet:set].location == NSNotFound);
}

/// 只有数字
- (BOOL)isOnlyNumbers {
    //NSCharacterSet *set = [[NSCharacterSet characterSetWithCharactersInString:@"0123456789"] invertedSet];
    NSCharacterSet *set = [[NSCharacterSet decimalDigitCharacterSet] invertedSet];
    return ([self rangeOfCharacterFromSet:set].location == NSNotFound);
}

/// 字母和数字
- (BOOL)isOnlyAlphaNumeric {
    NSCharacterSet *set = [[NSCharacterSet characterSetWithCharactersInString:@"0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"] invertedSet];
    return ([self rangeOfCharacterFromSet:set].location == NSNotFound);
}

相关文章

网友评论

      本文标题:iOS 判断字母、数字、汉字

      本文链接:https://www.haomeiwen.com/subject/uvoztrtx.html