ios - 搜索功能解析 IOS

标签 ios search parse-platform

我想制作一个搜索功能,查询同一类中的两个不同键。我可以使用哪种正则表达式来返回最准确的值。示例:

 - (void)searchTableList {

[self.results removeAllObjects];

PFQuery *query = [PFQuery queryWithClassName:@"TC"];


CLLocationCoordinate2D coordinate = [self.delegate.location coordinate];
PFGeoPoint *geoPoint = [PFGeoPoint geoPointWithLatitude:coordinate.latitude
                                              longitude:coordinate.longitude];

PFQuery *query1 = [PFQuery queryWithClassName:@"TC"];

[query1 setLimit:1000];
[query1 whereKey:@"location"
   nearGeoPoint:geoPoint
withinKilometers:5];
  [query1 whereKey:@"courses" matchesRegex:[NSString stringWithFormat:@"%@",[self.searchBar.text    lowercaseString]]];

 [query1 whereKey:@"owner" notEqualTo:[PFUser currentUser].username];
 [query1 findObjectsInBackgroundWithBlock:^(NSArray *objects, NSError *error) {
   for( PFObject * object in objects)
   {
       [self.results addObject:object];
   }
 [query setLimit:1000];
 [query whereKey:@"location"
   nearGeoPoint:geoPoint
   withinKilometers:5];
     [query whereKey:@"owner" matchesRegex:[NSString stringWithFormat:@"%@",[self.searchBar.text lowercaseString]]];

   [query whereKey:@"owner" notEqualTo:[PFUser currentUser].username];
  [query findObjectsInBackgroundWithBlock:^(NSArray *objects, NSError *error) {
    for( PFObject * object in objects)
    {
        [self.results addObject:object];
    }


   [self.tableView reloadData];
}];


}];
}

我如何处理这两个查询并以最准确的信息优先的方式对它们进行排序。

最佳答案

如果要查找与多个查询之一匹配的对象,可以使用orQueryWithSubqueries: 方法。例如,如果你想找到有很多胜利或很少胜利的玩家,你可以这样做:

PFQuery *lotsOfWins = [PFQuery queryWithClassName:@"Player"];
[lotsOfWins whereKey:@"wins" greaterThan:@150];

PFQuery *fewWins = [PFQuery queryWithClassName:@"Player"];
[fewWins whereKey:@"wins" lessThan:@5];
PFQuery *query = [PFQuery orQueryWithSubqueries:@[fewWins,lotsOfWins]];
[query findObjectsInBackgroundWithBlock:^(NSArray *results, NSError *error) {
  // results contains players with lots of wins or only a few wins.
}];

关于ios - 搜索功能解析 IOS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21165055/

相关文章:

java - 无法将 TableRowSorter 添加到 SwingWorker 生成的 JTable 中

ios - Parse.com SDK : What is the purpose of PFRelation?

ios - 解析iOS SDK : Not able to fetch Objects from Array

ios - 需要在 iMessage Extension 的 insertText 方法上调用 didStartSending

c# - 包含的有效搜索

iphone - 为原始数据类型堆栈编写方法时使用 'id' 吗?

java - 在java中搜索文本文件中的字符串时出现问题

javascript - 为什么我的 AngularJS View 在使用 Parse.com JavaScript SDK 进行 AJAX 调用后没有得到更新?

ios - View 未填充数据 AFNetworking

objective-c - AVPlayer 无法播放