我有一个应用程序,我想知道如果我尝试根据街道名称(例如“ceska”)查找街道,我的应用程序是否可以匹配名称包含变音符号的街道,例如“Česká”。

我试过使用:

let predicate = NSPredicate(format: "name contains[c] %@", searchText)

使用 name contains[d] 时它不起作用。

最佳答案

小写字母 č 有三种搜索变体。有不带变音符号的小写变体 c 、大写变体 Č 和不带变音符号的大写变体 C
d 中的选项 contains 控制变音符号。c 中的选项 contains 控制区分大小写。

如果您正在寻找文本 ceska 则:

  • contains 只会找到 ceska(完全匹配)
  • contains[c] 会找到 ceskaCeska
  • contains[d] 会找到 ceskačeska
  • contains[cd] 会找到 ceska , česka , CeskaČeska

  • Realm Swift v2.5.0 开始支持变音符号不敏感修饰符。

    关于ios - 使用 Realm Swift 进行变音符号不敏感过滤,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42962103/

    10-09 19:13