web-dev-qa-db-fra.com

iPhone: comment vérifier si une sous-chaîne existe dans une chaîne?

J'ai un nom de chaîne et je veux comparer si cette chaîne contient une sous-chaîne comme "_thumb.png".

35
Devang
[string rangeOfString:string1].location!=NSNotFound

rangeOfString: documentation.

64
unexpectedvalue

Vous pouvez essayer ceci:

NSString *originalString;
NSString *compareString;

Laissez votre string être stocké dans originalString et le substring que vous souhaitez comparer est stocké dans compareString.

if ([originalString rangeOfString:compareString].location==NSNotFound)
{       
    NSLog(@"Substring Not Found");  
}
else
{
    NSLog(@"Substring Found Successfully");
}
16
Gypsa

la réponse de Ssteinberg semble assez bonne, mais il y a aussi ceci:

NSRange textRange;
textRange =[string rangeOfString:substring];

if(textRange.location != NSNotFound)
{

//Does contain the substring
}

que j'ai trouvé ici .

3
Eric Brotto
NSString *string = @"hello bla bla";
if ([string rangeOfString:@"bla"].location == NSNotFound)
{
    NSLog(@"string does not contain bla");
}  
else 
{
    NSLog(@"string contains bla!");
}
2
Mohit

Dans ios 8 ou OS X 10.10 on peut utiliser.

if(![textLine containsString:@"abc"])
{
     [usableLines addObject:textLine];
}
1
Subhash
0
santosh