我有一个 NSString,我想用 NSRegularExpression 进行测试,但它并没有像我预期的那样发挥作用,我也不知道在哪里寻找答案了。
所以这是我的代码:
BOOL companyNameContainsOnlyAuthorizedCharacters = YES;
NSError *error = nil;
NSRegularExpression *regex = [NSRegularExpression regularExpressionWithPattern:@"[\P{Letter}]" options:0 error:&error];
NSArray *matches = [[NSArray alloc] init];
matches = [regex matchesInString:[model editorName] options:0 range:NSMakeRange(0,[[model editorName] length])];
if ([matches count] > 0) {
companyNameContainsOnlyAuthorizedCharacters = NO;
}
据我所知, [\P{Letter}] 应该匹配除字母之外的任何内容。尽管如此,它只匹配字符“\”、“P”、“{”、“L”、“e”、“t”、“r”和“}”。我也试过不带括号 [],但它根本不匹配任何东西。
任何帮助将不胜感激,在此先感谢您。
编辑:另外,xcode 警告我 \P 是一个未知的转义序列......