2013-02-27 2 views
0

L'expression suivante utilisant NSSPredicate vérifiera que le mot clé 'CAT' est présent dans nos données. Je veux mettre une variable au lieu du mot clé 'CAT'. Comment puis-je le faire, puisque je suis un démarreur espère que vous serez gentil avec moi.Merci.Correspondance de variable NSSPredicate - Objectif c

NSPredicate *catPredicate = 
[NSPredicate predicateWithFormat:@"SELF MATCHES '.*(CAT).*'"]; 

Répondre

1

Pour ce faire, vous pouvez construire la chaîne de modèle en dehors du prédicat, puis configurez le prédicat:

NSString *searchString = @"CAT"; 
NSString *regexString = [NSString stringWithFormat:@".*(%@).*", searchString]; 

NSPredicate *pred = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", regexString]; 
+0

thanx somuch !!! C'est vraiment ce que je cherche. –

1

Vous pouvez simplement utiliser cette méthode d'une manière plus étendue, à savoir:

NSString *myString = @"CAT";  
[NSPredicate predicateWithFormat:@"SELF MATCHES '.*(%@).*'",myString]; 
+0

merci .. j'ai essayé cela plusieurs fois, mais ne fonctionne pas! –