使用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:@"привет"]);