我試圖查看NSString
是否包含來自預定義字符串(A,B或C中的任何一個)的任何字符。NSPredicate測試NSString是否包含另一個NSString中的字符
我知道我能做到這一點:
NSCharacterSet *abc = [NSCharacterSet characterSetWithCharactersInString: @"ABC"];
NSRange range = [sequence rangeOfCharacterFromSet: abc];
BOOL result = (range.location != NSNotFound);
這導致是如果輸入字符串包含至少一個A,B或C.
我想看看我是否能使用NSPredicate
作爲替代,所以我一直在玩它(例如,見也在這裏:Checking to see if an NSString contains characters from a different NSString),但我總是得到NO的結果:
NSPredicate *abcPredicate = [NSPredicate predicateWithFormat: @"SELF matches 'ABC'"];
result = [stedPredicate evaluateWithObject: myString];
我試圖取代火柴包含,BU沒有幫助。
也試過:
NSPredicate *stedPredicate = [NSPredicate predicateWithFormat: @"SELF LIKE 'ABC'"];
我怎樣才能改變謂語爲它工作?
這將檢查如果字符串包含像「ABC」這樣的子字符串,而不是「ABC」中的任何字符 –