与目标c中的strncmp类似的比较

时间:2013-11-29 16:24:58

标签: objective-c comparison

这是一个实际的问题:是否可以逐个字符地比较两个字符串?就像在C中的strncmp,你给第一个字符串,第二个字符串和需要达到的匹配字符数返回YES。 谢谢你的回答:)。

2 个答案:

答案 0 :(得分:2)

有几种方法可以比较NSStrings,具体取决于您的需求:

- (NSComparisonResult)compare:(NSString *)aString;
- (NSComparisonResult)compare:(NSString *)aString options:(NSStringCompareOptions)mask;
- (NSComparisonResult)compare:(NSString *)aString options:(NSStringCompareOptions)mask range:(NSRange)range;
- (NSComparisonResult)compare:(NSString *)aString options:(NSStringCompareOptions)mask range:(NSRange)range locale:(id)locale;
- (NSComparisonResult)caseInsensitiveCompare:(NSString *)aString;
- (NSComparisonResult)localizedCompare:(NSString *)aString;
- (NSComparisonResult)localizedCaseInsensitiveCompare:(NSString *)aString;

- (BOOL)isEqualToString:(NSString *)aString;
- (BOOL)isEqual:(id)anObject;

NSComparisonResultNSInteger枚举,可以是NSOrderedAscendingNSOrderedSameNSOrderedDescending,分别为-1,0和1。

最接近strncmp(s1, s2, n)的是[s1 compare:s2 options:NSLiteralSearch range:NSMakeRange(0, n)]

答案 1 :(得分:0)

for(int i=0;i<[testlength];i++){

if ([@"test" characterAtIndex:i] == 'testSample'){

}

}
相关问题