在一些特定的情况下,我们需要判断字符串是否为纯汉字,还是只是含有汉字的情况。
我把它写成了一个分类,方便大家使用
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;
}
注:相关内容我会继续更新。如果想找一些iOS方面的代码可以关注我的简书,我会持续更新,大家一起探讨探讨
在此谢谢大家阅读😊
网友评论
if( a >=0x4E00 && a <=0x9FA5){
return YES;
}