如何在unicode字符串中使用regex不区分大小写?

时间:2011-11-10 19:22:58

标签: objective-c regex cocoa-touch

让我们说我想搜索希腊作品Καλημέρα,这意味着早上好 如何搜索ΚΑΛΗΜΕΡΑκαλημέρα甚至κΑΛΗΜερα

1 个答案:

答案 0 :(得分:1)

在此示例中使用NSCaseInsensitiveSearch项目1& 3匹配项目2& 4:

NSString *morningList = @" Καλημέρα, ΚΑΛΗΜΕΡΑ, καλημέρα, κΑΛΗΜερα";
NSArray *morningTests = [NSArray arrayWithObjects:@"Καλημέρα", @"ΚΑΛΗΜΕΡΑ", @"καλημέρα", @"κΑΛΗΜερα", nil];

for (NSString *morning in morningTests) {
    NSRange range = [morningList rangeOfString:morning options:NSCaseInsensitiveSearch];
    NSLog(@"location of '%@': %lu", morning, range.location);
}

NSLog输出:

location of 'Καλημέρα': 1
location of 'ΚΑΛΗΜΕΡΑ': 11
location of 'καλημέρα': 1
location of 'κΑΛΗΜερα': 11

不完全是被问到但可能有帮助。