Sustitución de un carácter en una cadena en Objective-C

Esperando que alguien pueda ayudarme – Me gustaría replace un cierto personaje en una cadena y me pregunto cuál es la mejor manera de hacerlo.

Conozco la location del personaje, así que, por ejemplo, si quiero cambiar el tercer carácter de una cadena de A a B, ¿cómo lo codificaría?

Si siempre es el mismo personaje que puedes usar:

stringByReplacingOccurrencesOfString:withString: 

Si es la misma cadena en la misma location, puede usar:

 stringByReplacingOccurrencesOfString:withString:options:range: 

Si es solo una location específica, puede usar:

 stringByReplacingCharactersInRange:withString: 

Documentación aquí: https://developer.apple.com/documentation/foundation/nsstring

Así por ejemplo:

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

newText sería igual a "Boat"

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

Aquí está el código:

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

Utilice el replaceCharactersInRange: withString: en un object NSMutableString .