在我當前實現的UISearchBarController
中,我使用filterContentForSearchText:scope:
委託方法中的[NSString compare:]
在開始輸入時將基於name屬性的相關對象返回到結果UITableView
。搜索或比較韓語中的字形羣集
到目前爲止,這在英語和韓語中都很出色,但我希望能夠做的是在NSString
的定義字符集內進行搜索。這隻適用於一種語言,其中韓語是一種語言。
英文中,compare:
會在您輸入的每個字母后返回新的結果,但在韓語中,一旦完成識別的字形羣集就會生成結果。我希望能夠通過構成音節的各個元素來搜索我的韓國對象名稱屬性。
任何人都可以闡明如何解決這個問題?我相信這與手動搜索UTF16字符或利用較低級別的類有關。
乾杯!
下面是隻是沒有工作一個具體的例子:
`NSString *string1 = @"이";
`NSString *string2 = @"ㅣ";
NSRange resultRange = [[string1 decomposedStringWithCanonicalMapping] rangeOfString: [string2 decomposedStringWithCanonicalMapping] options:(NSLiteralSearch)];
結果總是NSNotFound,有無decomposedStringWithCanonicalMapping
。
任何想法?
勞倫斯,那個信息太棒了。有韓國的iPhone應用程序,似乎做我一直在嘗試;但我猜想我錯誤地認爲韓文是如何存儲在UTF8/16中的。 謝謝你的回答,它肯定爲我的查詢提供了一些信息。 – Jessedc 2010-02-04 01:05:04
感謝您的幫助勞倫斯,我接受了您的答案;這是朝着正確方向邁出的一大步。 – Jessedc 2010-02-07 06:03:41