iOS 判断一个字符串是不是纯特殊字符

  • 今天在做APP的时候需要判断用户输入的密码是不是全部都是指定的特殊字符,开始想到用正则去验证,无奈自己不会正则,在网上找了几个正则都不好,所以干脆自己动手写方法去判断,方法如下:
-(BOOL)isAllCharacterString:(NSString *)string
{
    NSString *regex = @"[~`!@#$%^&*()_+-=[]|{};':\",./<>?]{,}/";//规定的特殊字符,可以自己随意添加
    
    //计算字符串长度
    NSInteger str_length = [string length];
    
    NSInteger allIndex = 0;
    for (int i = 0; i<str_length; i++) {
        //取出i
        NSString *subStr = [string substringWithRange:NSMakeRange(i, 1)];
        if([regex rangeOfString:subStr].location != NSNotFound)
        {  //存在
            allIndex++;
        }
    }
    
    if (str_length == allIndex) {
        //纯特殊字符
        return YES;
    }
    else
    {
        //非纯特殊字符
        return NO;
    }
}

用法:

 if ([self isAllCharacterString:@"#$%^#$%^#$%^"]) {
        NSLog(@"全是纯特殊字符");
    }
    else
    {
        NSLog(@"不全是纯特殊字符");
    }
  • 结果:全是纯特殊字符
9FB6B415-C5E5-4993-A57B-0BC9ED859630.png

 if ([self isAllCharacterString:@"#$%^#$%123"]) {
        NSLog(@"全是纯特殊字符");
    }
    else
    {
        NSLog(@"不全是纯特殊字符");
    }
  • 结果:不全是纯特殊字符
35E87AA5-3557-498D-B0E4-B6FCE964371F.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容