With the simple use of a regular expression to find out if a string contains Chinese, Japanese or Korean (aka CJK) characters.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#import <Foundation/Foundation.h> | |
@interface NSString (CJK) | |
/** | |
Detect if the string contains Chinese, Japanese or Korean characters | |
@return YES if the string contains CJK characters, NO otherwise | |
*/ | |
– (BOOL)containsAsianCharacters; | |
@end |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#import "NSString+CJK.h" | |
@implementation NSString (CJK) | |
– (BOOL)containsAsianCharacters | |
{ | |
if (![self length]) | |
return NO; | |
NSRegularExpression *regex = [NSRegularExpression regularExpressionWithPattern:@"[\u2E80-\u9FFF]" options:NSRegularExpressionCaseInsensitive error:nil]; | |
return ([regex matchesInString:self options:0 range:NSMakeRange(0, [self length])]); | |
} | |
@end |
Well done! thanks.