使用NSRegularExpression检测字符串是否包含西里尔文的示例

我查看了关于NSRegularExpression的Apple参考 ,并了解为了查看该字符串是否是Cyrillic我应该使用\p{script=cyrillic} 。 但是,我无法在参考指南或SO中的答案中找到如何完成此操作的实际示例。 我理想的目标是:

 if (string contains \p{script=cyrillic}){ return YES; } else { return NO; } 

也许(我是iOS编程新手):

 - (BOOL)containsCyrillic:(NSString*)str { NSString* const pattern = @"\\p{script=cyrillic}+"; NSRegularExpression* regex = [[NSRegularExpression alloc] initWithPattern:pattern options:0 error:nil]; NSRange range = NSMakeRange(0, [str length]); return [regex numberOfMatchesInString:str options:0 range:range] > 0; } 

然后使用( NSString的类别可能会更好?)

 NSLog(@"hello: %hhd", [self containsCyrillic:@"hello"]); NSLog(@"привет: %hhd", [self containsCyrillic:@"привет"]);