使用NSPredicate过滤NSArray

时间:2013-03-06 09:28:01

标签: iphone ios objective-c nsarray nspredicate

我有一个NSArray,我想用谓词过滤。这就是我所拥有的。

NSLog(@"text is %@",txtSearch.text);
NSPredicate *bPredicate =
[NSPredicate predicateWithFormat:@"SELF beginswith[c] '%@'",txtSearch.text];
arrSearchedPlayers =
[arrPlayers filteredArrayUsingPredicate:bPredicate];
NSLog(@"array after searched is %@",arrSearchedPlayers);

当我输入文本时,我的数组保持为空。但是当我尝试这个谓词时,

 NSPredicate *bPredicate =
    [NSPredicate predicateWithFormat:@"SELF beginswith[c] 's'"];

我得到了正确的结果。任何人都知道问题是什么?

亲切的问候

1 个答案:

答案 0 :(得分:7)

删除谓词中的额外引号

[NSPredicate predicateWithFormat:@"SELF beginswith[c] %@",txtSearch.text];