gpt4 book ai didi

ios - 搜索 NSString 中的任何字符

转载 作者:行者123 更新时间:2023-11-28 22:31:04 25 4
gpt4 key购买 nike

我有以下代码来搜索 NSString:

for (NSDictionary *obj in data) {
NSString *objQuestion = [obj objectForKey:@"Question"];
NSRange dataRange = [objQuestion rangeOfString:searchText options:NSCaseInsensitiveSearch];
if (dataRange.location != NSNotFound) {
[filteredData addObject:obj];
}
}

这工作正常,但有一个问题。如果 objQuestion 是:“Green Yellow Red”并且我搜索“Yellow Green Red”,则对象不会显示,因为我的搜索顺序不正确。

我该如何更改我的代码,以便无论我以何种顺序搜索单词,对象都会显示?

最佳答案

您应该将搜索文本分解为单词并搜索每个单词。

NSArray *wordArray= [searchText componentsSeparatedByString: @" "];
for (NSDictionary *obj in data) {
NSString *objQuestion = [obj objectForKey:@"Question"];
BOOL present = NO;
for (NSString *s in wordArray) {
if (s) {
NSRange dataRange = [objQuestion rangeOfString:s options:NSCaseInsensitiveSearch];
if (dataRange.location != NSNotFound) {
present = YES;
}
}
}
if (present) {
[filteredData addObject:obj];
}
}

关于ios - 搜索 NSString 中的任何字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17450386/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com