替换Objective-C中字符串中的一个字符

时间:2011-03-07 18:39:59

标签: objective-c ios string nsstring

希望有人可以帮助我 - 我想替换字符串中的某个字符,我想知道最好的方法是什么?

我知道角色的位置,例如,如果我想将字符串中的第3个字符从A更改为B - 我将如何编码?

4 个答案:

答案 0 :(得分:87)

如果它总是使用相同的字符:

stringByReplacingOccurrencesOfString:withString:

如果它是同一位置的相同字符串,您可以使用:

stringByReplacingOccurrencesOfString:withString:options:range:

如果只是您可以使用的特定位置:

stringByReplacingCharactersInRange:withString:

此处的文档: https://developer.apple.com/documentation/foundation/nsstring

例如:

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

newText等于“Boat”

答案 1 :(得分:28)

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

答案 2 :(得分:6)

以下是代码:

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

答案 3 :(得分:4)

replaceCharactersInRange: withString:对象上使用NSMutableString消息。