2

我想知道是否可以过滤包含多个单词的数组以获得过滤数组,该数组仅包含使用谓词以字符串开头的单词:

我想一个例子会自己说话:

大批:

  • 青椒
  • 白葡萄

@"pe" 的过滤数组

  • 青椒

目前我正在应用一个谓词,如下所示:

  NSPredicate *predicate = [NSPredicate predicateWithFormat:@"SELF contains[c] %@",searchText];
  NSArray *tempArray = [[self.searchContent objectAtIndex:INGREDIENT] filteredArrayUsingPredicate:predicate];
  [self.ingredientsFiltered addObjectsFromArray:tempArray];

但这会给我青椒和白葡萄,因为@“pe”也是胡椒的子串。有没有推荐的方法来实现这一目标?

4

1 回答 1

2

试试这个,

NSPredicate *predicate = [NSPredicate predicateWithFormat:@"SELF MATCHES[c] %@", [NSString stringWithFormat: @".*\\b%@.*",searchText]];
于 2012-12-05T23:48:06.330 回答