iOS 判断纯汉字,还是是否含有汉字

参考:http://www.jianshu.com/p/18cc511b5828

在一些特定的情况下,我们需要判断字符串是否为纯汉字,还是只是含有汉字的情况。
我把它写成了一个分类,方便大家使用

NSString+Chinese.h
#import <Foundation/Foundation.h>

@interface NSString (Chinese)

- (BOOL)isChinese;//判断是否是纯汉字

- (BOOL)includeChinese;//判断是否含有汉字

@end
NSString+Chinese.m
#import "NSString+Chinese.h"

@implementation NSString (Chinese)

- (BOOL)isChinese
{
    NSString *match = @"(^[\u4e00-\u9fa5]+$)";
    NSPredicate *predicate = [NSPredicate predicateWithFormat:@"SELF matches %@", match];
    return [predicate evaluateWithObject:self];
}

- (BOOL)includeChinese
{
    for(int i=0; i< [self length];i++)
    {
        int a =[self characterAtIndex:i];
        if( a >0x4e00&& a <0x9fff){
            return YES;
        }
    }
    return NO;
}



文/梦亦趣(简书作者)
原文链接:http://www.jianshu.com/p/18cc511b5828
著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”。
posted @ 2016-11-14 18:02  勇猛的小黑  阅读(424)  评论(0编辑  收藏  举报