我有一个字符串字段,我知道用户稍后会想要搜索它。受 WWDC 2012 Core Data Best Practices session 的启发,我计划将字符串的规范化版本存储到一个单独的字段中,以便优化我的搜索谓词。
我主要关心的是不区分大小写,但是当我规范化字符串时,我认为我也应该规范化 unicode 表示。但我想确保我使用了正确的规范化形式(即 C、D、KC 或 KD)。我是否先转换为小写有关系吗?(本地化不是我的强项。)
所以:
- 调用 NSString 的搜索规范化的正确方法是什么?
- 确保存储标准化版本的最佳方法是什么。
我将发布我的第一次尝试作为答案,但我很想听听我错在哪里、其他建议或改进。(不幸的是,虽然他们在该视频中显示了搜索谓词,但我认为他们没有显示会话中的代码。)