在我当前的实现中,UISearchBarController
我[NSString compare:]
在filterContentForSearchText:scope:
委托方法中使用基于它们的名称属性将相关对象返回到UITableView
您开始输入的结果中。
到目前为止,这在英语和韩语中效果很好,但我想做的是在NSString
's 定义的字符簇中进行搜索。这仅适用于少数几种语言,韩语就是其中之一。
在英语中,compare:
在您输入每个字母后返回新结果,但在韩语中,一旦您完成识别的字素簇,就会生成结果。我希望能够通过构成音节的各个元素来搜索我的韩语对象名称属性。
任何人都可以阐明如何解决这个问题吗?我确信它与手动搜索 UTF16 字符或使用较低级别的类有关。
干杯!
这是一个不起作用的特定示例:
`NSString *string1 = @"이";
`NSString *string2 = @"ㅣ";
NSRange resultRange = [[string1 decomposedStringWithCanonicalMapping] rangeOfString: [string2 decomposedStringWithCanonicalMapping] options:(NSLiteralSearch)];
结果总是 NSNotFound,有或没有decomposedStringWithCanonicalMapping
.
有任何想法吗?