zoukankan      html  css  js  c++  java
  • iOS 中文字符判断 正则NSRegularExpression 谓词NSPredicate 和 NSRange

    废话不说,直接上代码

    #pragma mark - 中文字符判断
    
    
    // 正则匹配是否包含中文
    - (BOOL)validateContainsChinese:(NSString *)content
    {
        NSRegularExpression *regularexpression = [[NSRegularExpression alloc]
                                                  initWithPattern:@"^[u4e00-u9fa5]"
                                                  options:NSRegularExpressionCaseInsensitive
                                                  error:nil];
        return ([regularexpression numberOfMatchesInString:content
                                                   options:NSMatchingReportProgress
                                                   range:NSMakeRange(0, content.length)] > 0);
    }

    // 谓词匹配是否为全中文
    - (BOOL)validateAllChinese:(NSString *)content
    {
        NSString *regEx = @"^[u4e00-u9fa5]+$";
        NSPredicate *predicate = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", regEx];
        
        return [predicate evaluateWithObject:content];
    }

    // 谓词匹配包含中文
    - (BOOL)validateContainsChineseT:(NSString *)content
    {
        NSString *regEx = @".+[u4e00-u9fa5].+";  // @"^[u4e00-u9fa5].*" - ^为匹配中文开始
        NSPredicate *predicate = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", regEx];
        
        return [predicate evaluateWithObject:content];
    }

    // 匹配包含中文:利用rangeOfString:option:直接查找
    - (BOOL)validateRangeContainsChinese:(NSString *)content
    {
        NSString *regEx = @".*[u4e00-u9fa5].*";
        NSRange range = [content rangeOfString:regEx options:NSRegularExpressionSearch];
        
        return range.length;
        
    }

    // 匹配全是中文:利用rangeOfString:option:直接查找
    - (BOOL)validateRangeAllChinese:(NSString *)content
    {
        NSString *regEx = @"^[u4e00-u9fa5]+S";
        NSRange range = [content rangeOfString:regEx options:NSRegularExpressionSearch];
        
        return range.length;
        
    }


  • 相关阅读:
    .net Core
    4.1 愚人节
    迷茫了....
    关于Plupload结合上传插件jquery.plupload.queue的使用
    兼容浏览器 回车键 keydown事件
    JS判断是否是IE浏览器的几种方式
    IE IE8 iframe的onload方法分析 IE浏览器onload事件失效
    java 获取请求的完整url地址
    SQLSERVER 数据库基础操作
    java 四舍五入 保留两位小数
  • 原文地址:https://www.cnblogs.com/pruple/p/7450654.html
Copyright © 2011-2022 走看看