Query Parse containsString make不敏感

use*_*162 15 uisearchbar ios parse-platform

我想知道是否有人能够提供帮助.我正在尝试使用一个术语搜索Parse类SearchBar.该containsString然是区分大小写的,我想这是不区分大小写.请参阅下面的代码;

-(void)filterResults:(NSString *)searchTerm {

[self.searchResults removeAllObjects];
PFQuery *query = [PFQuery queryWithClassName: @"Firefacts"];
[query whereKeyExists:@"Number"];
[query whereKey:@"Number" containsString:searchTerm];
NSArray *results = [query findObjects];
[self.searchResults addObjectsFromArray:results];
}
Run Code Online (Sandbox Code Playgroud)

任何帮助将不胜感激.

Tar*_*ngh 29

请改用正则表达式(?i)!归功于/sf/answers/675864241/,/sf/answers/675863051/http://www.regular-expressions.info/modifiers.html

所以更换

[query whereKey:@"Number" containsString:searchTerm];
Run Code Online (Sandbox Code Playgroud)

[query whereKey:@"Number" matchesRegex:[NSString stringWithFormat:@"(?i)%@",searchTerm]];
Run Code Online (Sandbox Code Playgroud)

或者你也可以使用

[query whereKey:@"Number" matchesRegex:searchTerm modifiers:@"i"];
Run Code Online (Sandbox Code Playgroud)

你的最终代码应该是:

PFQuery *query = [PFQuery queryWithClassName: @"Firefacts"];
[query whereKeyExists:@"Number"];
[query whereKey:@"Number" matchesRegex:searchTerm modifiers:@"i"];
Run Code Online (Sandbox Code Playgroud)

  • 很好的答案和工作,非常感谢你:-) (3认同)
  • 太好了!与swift完美配合:D干得好! (2认同)