iOS-使用[NSPredicate predicateWithFormat]的帮助
嘿,我正在使用NSPredicate来过滤数组。目前,我使用以下代码:iOS-使用[NSPredicate predicateWithFormat]的帮助,ios,search,filter,nspredicate,predicatewithformat,Ios,Search,Filter,Nspredicate,Predicatewithformat,嘿,我正在使用NSPredicate来过滤数组。目前,我使用以下代码: NSPredicate *predicate = [NSPredicate predicateWithFormat:@"SELF.name contains[c] %@", searchText]; 当它查找attribute.name并检查它是否包含在searchText中时,它工作正常。我想知道是否有一种方法可以将它从检查是否包含在搜索文本中更改为搜索文本是否以搜索过滤器开头。也就是说,如果搜索文本是school并且我
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"SELF.name contains[c] %@", searchText];
当它查找attribute.name并检查它是否包含在searchText中时,它工作正常。我想知道是否有一种方法可以将它从检查是否包含在搜索文本中更改为搜索文本是否以搜索过滤器开头。也就是说,如果搜索文本是
school
并且我键入sc
作为过滤器,则搜索文本将保持不变,但如果我键入sco
则搜索文本school
将被过滤掉。是否有某种类型的beginswith
可以代替contains[c]
。谢谢 是的,事实上:
BEGINSWITH
左侧表达式从右侧表达式开始包含
左侧表达式包含右侧表达式ENDSWITH
左侧表达式以右侧表达式结尾LIKE
左侧表达式等于右侧表达式:?和*可以作为通配符,在哪里?匹配1个字符,*匹配0个或更多字符匹配
根据ICU v3,使用正则表达式样式比较,左手表达式等于右手表达式(有关更多详细信息,请参阅《ICU正则表达式用户指南》)是的,事实上:
BEGINSWITH
左侧表达式从右侧表达式开始包含
左侧表达式包含右侧表达式ENDSWITH
左侧表达式以右侧表达式结尾LIKE
左侧表达式等于右侧表达式:?和*可以作为通配符,在哪里?匹配1个字符,*匹配0个或更多字符匹配
根据ICU v3,使用正则表达式样式比较,左手表达式等于右手表达式(有关更多详细信息,请参阅《ICU正则表达式用户指南》)