【问题标题】:Swift Full Text Search Recommended SolutionSwift全文搜索推荐方案
【发布时间】:2018-09-14 23:05:02
【问题描述】:

我想知道Swift 中是否有推荐的解决方案/库用于集成全文搜索(即在您键入时过滤呈现的数据的搜索栏,自动完成)?

我目前使用Firestore 作为我的后端。

我看过的是Algolia

【问题讨论】:

  • 您最终找到了经济高效的解决方案吗? Algolia 看起来功能丰富,但它太贵了......在我的情况下,由于记录限制而昂贵

标签: ios swift full-text-search google-cloud-firestore


【解决方案1】:

Algolia 可能是目前最好的解决方案,也是 Firebase 自己推荐的。需要记住的几件事是,您需要一个付费的 Firebase 计划才能实施,因为您需要一个将数据发送到 Algolia 进行索引的云功能。

一旦您的数据在 Algolia 中,您可以使用一个很棒的 Swift library 来实现您需要的搜索栏/自动完成。

【讨论】:

    【解决方案2】:

    您可以使用NSPredicate 搜索对象内的文本,如下所示

    let searchString = "test"
    var arr:NSArray =
        [["value" : "its a test text to find"],
         ["value" : "another text"],
         ["value" : "find this text"],
         ["value" : "lorem ipsum is a placeholder text commonly"],
         ["value" : "lorem ipsum is a"]]
    
    
    var pre:NSPredicate = NSPredicate(format: "value CONTAINS[c] %@", searchString)
    var result:NSArray = arr.filtered(using: pre) as NSArray
    
    print(result)
    

    它将根据您搜索的文本返回一个包含结果的数组

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-02-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-10-17
      • 1970-01-01
      相关资源
      最近更新 更多