J'ai un NSString avec 10 caractères. Je dois ajouter un tiret - à la position de caractère 4 et 8. Quelle est la manière la plus efficace de faire ceci? merciManipulation de chaînes dans Objective-C
2
A
Répondre
12
Vous avez besoin d'une chaîne mutable, pas un NSString.
NSMutableString *str = [NSMutableString stringWithString:old_string];
[str insertString:@"-" atIndex:8];
[str insertString:@"-" atIndex:4];
Code fixe en fonction de la réponse de stko, qui est sans bug.
6
Vous devez d'abord veiller à insérer le tiret à l'index le plus haut. Si vous insérez d'abord à l'index 4, vous devrez insérer à l'index 9 au lieu de 8 pour le deuxième tiret.
par exemple. Cela ne produit pas la chaîne désirée ...
NSMutableString *s = [NSMutableString stringWithString:@"abcdefghij"];
[s insertString:@"-" atIndex:4]; // s is now @"abcd-efghij"
[s insertString:@"-" atIndex:8]; // s is now @"abcd-efg-hij"
Bien que celui-ci fait:
NSMutableString *s = [NSMutableString stringWithString:@"abcdefghij"];
[s insertString:@"-" atIndex:8]; // s is now @"abcdefgh-ij"
[s insertString:@"-" atIndex:4]; // s is now @"abcd-efgh-ij"
0
Voici une façon légèrement différente de le faire - ce qui est d'obtenir une copie mutable de votre NSString d'origine.
NSMutableString *newString = [originalString mutableCopy];
[newString insertString:@"-" atIndex:8];
[newString insertString:@"-" atIndex:4];
Puisque vous êtes sur l'iPhone - il est important de noter que depuis le newString
est créé avec mutableCopy
vous possédez la mémoire et sont responsables de le libérer à un moment futur.
Questions connexes
- 1. Manipulation de chaînes dans jQuery
- 2. manipulation de chaînes dans AppleScript
- 3. Manipulation de chaînes dans jQuery
- 4. Manipulation de chaînes dans MySQL
- 5. manipulation de chaînes iphone
- 6. manipulation de chaînes
- 7. Manipulation de chaînes requise
- 8. javascript manipulation de chaînes
- 9. manipulation de chaînes iphone
- 10. C# manipulation de chaînes
- 11. C# manipulation de chaînes
- 12. javascript manipulation de chaînes
- 13. TextBox Recherche manipulation de chaînes
- 14. Manipulation de chaînes dans MS SQL Server
- 15. Manipulation de chaînes dans Objective-C
- 16. Manipulation métacaractères dans les chaînes de recherche
- 17. Manipulation de chaînes en C#
- 18. manipulation de chaînes en Python
- 19. Combine chaîne en ObjectiveC
- 20. Apprentissage de Haskell: manipulation de chaînes question
- 21. Personnalisation de writeToFile dans ObjectiveC
- 22. Méthode de suppression Ruby (manipulation de chaînes)
- 23. Analyseur AMF0 dans ObjectiveC
- 24. Manipulation de chaînes: Division de données délimitées
- 25. Problème de manipulation de chaînes DAO maladroit
- 26. Manipulation de chaînes de style C?
- 27. Analyse rapide, manipulation de chaînes Python
- 28. Codedom et la manipulation de chaînes
- 29. Une manipulation de chaînes Question pour .NET
- 30. C++ manipulation de chaînes à la compilation
Merci, je vais modifier ma réponse (car elle est toujours acceptée.) – Derrick