我在NSArray中很少有德语字符串(像åä等变音符号)。 例如,在数组中考虑像“gënder”这样的单词。 用户在文本字段中输入“gen”。 我可以检查字符串中与“gen”字符匹配的单词。 如何通过将变音符号视为英语字符串来比较字符串...? 所以在上面的例子中,当用户输入“gen”时,它必须返回“gënder”。
这种比较有什么解决方案吗?
答案 0 :(得分:10)
使用各种NSString比较方法的NSDiacriticInsensitiveSearch
选项。如文档中所述:
搜索忽略了变音符号。 例如,'ö'等于'o'。
例如:
NSString *text = @"gënder";
NSString *searchString = @"ender";
NSRange rng = [text rangeOfString:searchString
options:NSDiacriticInsensitiveSearch];
if (rng.location != NSNotFound)
{
NSLog(@"Match at %@", NSStringFromRange(rng));
}
else
{
NSLog(@"No match");
}