Je recommande ci-dessous NSString Catégorie.
NSString+Extend.h
#import <Foundation/Foundation.h>
@interface NSString (Extend)
- (BOOL)containsString:(NSString *)aString ignoringCase:(BOOL)flag;
- (BOOL)containsString:(NSString *)aString;
@end
NSString+Extend.m
#import "NSString+Extend.h"
@implementation NSString (Extend)
- (BOOL)containsString:(NSString *)aString
{
return [self containsString:aString ignoringCase:NO];
}
- (BOOL)containsString:(NSString *)aString ignoringCase:(BOOL)flag
{
unsigned mask = (flag ? NSCaseInsensitiveSearch : 0);
return [self rangeOfString:aString options:mask].length > 0;
}
@end
#import "NSString+Extend.h"
NSString *url = @"http://localHost:8070/serviceCase=ActiveService";
NSString *findString = @"ActiveService";
BOOL isContains = [url containsString:findString];
if(isContains)
{
//do stuff
}
else
{
//do stuff
}
Il est une excellente solution, mais cela dépend vraiment du nombre de comparaisons de chaînes qui doivent être fait. Si nous parlons seulement de quelques endroits dans le code, je pense que votre solution est un peu exagérée. – Jesper
Je sais. mais, quand je teste la performance comparer à rangeOfString n'a pas OverKill. Quand un temps plus tard en utilisant l'algorithme KMP, je vais créer des catégories. –