【问题标题】:How to search on unicode characters with alphabets? [duplicate]如何使用字母搜索 unicode 字符? [复制]
【发布时间】:2015-03-07 21:32:35
【问题描述】:
我想对一些带有 unicode 字符的字符串进行搜索,但用户会输入字母。基于这些字母,搜索应该适用于所有数据(包括 unicode)。示例:如果用户搜索关键字“cre”,它应该返回“crème”。在排序中,"è" 可以通过 "e" 进行搜索。 "A"-"À" 等也是如此。
我试过了
NSString* finish = [[str componentsSeparatedByCharactersInSet:[[NSCharacterSet letterCharacterSet] invertedSet]] componentsJoinedByString:@""];
但它不起作用。请问还有什么解决办法吗?
谢谢。
【问题讨论】:
标签:
ios
search
unicode
nsstring
ascii
【解决方案1】:
我上网并找到了一些有用的东西,正是我所需要的。我想回答我的问题,所以如果有人像我一样遇到同样的问题,他可以尽快得到解决方案。这意味着搜索所有 unicode/字母字符。
答案是当您搜索时,请设置您的搜索选项,如下所示。
NSCaseInsensitiveSearch|NSDiacriticInsensitiveSearch|NSWidthInsensitiveSearch
我的代码:
**
NSRange nameRange = [stringtosearch rangeOfString:searchString options:NSCaseInsensitiveSearch|NSDiacriticInsensitiveSearch|NSWidthInsensitiveSearch];
if (nameRange.location != NSNotFound)
// do what you want to do when its found.
**