52 votes

Remplacer un caractère dans une chaîne de caractères en Objective-C

J'espère que quelqu'un pourra m'aider - je voudrais remplacer un certain caractère dans une chaîne de caractères et je me demande quelle est la meilleure façon de le faire ?

Je connais l'emplacement du caractère, donc, par exemple, si je veux changer le troisième caractère d'une chaîne de A à B, comment dois-je le coder ?

94voto

theChrisKent Points 10963

Si c'est toujours le même caractère, vous pouvez l'utiliser :

stringByReplacingOccurrencesOfString:withString:

Si c'est la même chaîne au même endroit, vous pouvez utiliser :

stringByReplacingOccurrencesOfString:withString:options:range:

Si est juste un endroit spécifique que vous pouvez utiliser :

stringByReplacingCharactersInRange:withString:

Documentation ici : http://developer.apple.com/library/ios/#documentation/Cocoa/Reference/Foundation/Classes/NSString_Class/Reference/NSString.html

Donc, par exemple :

NSString *someText = @"Goat";
NSRange range = NSMakeRange(0,1);
NSString *newText = [someText stringByReplacingCharactersInRange:range withString:@"B"];

newText serait égal à "Boat"

32voto

Salim Points 3017
NSString *str = @"123*abc";
str = [str stringByReplacingOccurrencesOfString:@"*" withString:@""];
//str now 123abc

7voto

Zakaria Points 4314

Voici le code :

[aString stringByReplacingCharactersInRange:NSMakeRange(3,1) withString:@"B"];

5voto

Bourne Points 4260

Utilisez le replaceCharactersInRange: withString: message sur un NSMutableString objet.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X