NSPredicate检查字符串长度

时间:2014-03-17 22:11:30

标签: ios objective-c regex string

我需要能够构建一个检查字符串长度的NSPredicate。

我的谓词是:

NSPredicate *predicate = [NSPredicate predicateWithFormat:@"storyText.length > 20"];

我知道NSPredicate不会将length视为财产。

关于SO的解决方案表明使用正则表达式是要走的路但我还没弄明白如何做长度> 20.任何想法?

2 个答案:

答案 0 :(得分:1)

试试这个:

NSPredicate *stringLengthPredicate = [NSPredicate predicateWithBlock:^BOOL(StoryText evaluatedObject, NSDictionary *bindings) {
            return [evaluatedObject length] > 20;
        }];

Source

答案 1 :(得分:0)

尝试使用这个:

[NSPredicate predicateWithFormat:@"position == %@ AND text MATCHES %@", pos, @".{21,}"];

它应匹配至少21个字符的任何内容。