当我们搜索任何应用程序时,我正在使用NSPredicate执行搜索,就像在iPhone上一样。

我说了4个关键字

  • Deccan
  • 新德里
  • 艾哈迈达巴德
  • 萨拉姆德里

  • 我试图用创建谓词
    NSPredicate *predicate = [NSPredicate predicateWithFormat:@"keyword BEGINSWITH[c] 'd'"它给了我 Deccan 作为输出。
    但是问题是我希望每个单词都以 d 开头,因此从上面的示例中,我需要输出为
    Deccan,新德里,萨拉姆德里,但不是艾哈迈达巴德

    从几个小时就陷入了这个问题。尝试包含,比赛,但我的运气不好..

    向正确道路的任何帮助将不胜感激。

    最佳答案

    谢谢你们的回应
    这是我想出的

    NSString *matchString =  [NSString stringWithFormat: @".*\\b%@.*",searchText];
    NSString *predicateString = @"keyword MATCHES[c] %@";
    NSPredicate *predicate =[NSPredicate predicateWithFormat: predicateString, matchString];
    

    关于ios - NSPredicate用于常规搜索,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10277876/

    10-16 04:49