2010-11-20 16 views
0

Je ne comprends pas cette ligne de code: if ([@ "+/-" isEqual: opération])NSString question ObjectiveC

où l'opération est un NSString (et cette opération peut être soit un « + "a" - "ou a"/"). Comment est-il possible de les vérifier tous en même temps sans avoir d'erreur?

Merci, -Z

Répondre

0

Qu'à cela ne tienne, je manque un bouton qui correspond à cette chaîne, s'il vous plaît ignorer

0

Il ne fonctionne pas. isEqual compare une chaîne à un objet et renvoie NO si l'objet n'est pas une chaîne. Si vous souhaitez comparer les chaînes, utilisez isEqualToString. Mais cela va comparer "+/-" à l'opération. Pour voir si l'opération est l'un des +, - ou/vous devez vérifier chaque caractère, à son tour, ou utiliser une expression régulière, ou quelque chose comme ça

NSCharacterSet * set = [[NSCharacterSet characterSetWithCharactersInString:@"+-/"]]; 

if ([operatin rangeOfCharacterFromSet:set].location != NSNotFound) { 
    NSLog(@"This string does not contain +-/ characters"); 
} 
+0

svenito Cher, heureux d'avoir posé après tout. Il s'avère que le bouton de ma calculatrice (et son fonctionnement) était censé contenir la chaîne "+/-"; mais je ne connaissais pas NSCharacterSet, et je serai certainement capable de l'utiliser à l'avenir. Merci! -z – zazu