Answers:
您可以使用该方法
- (NSString *)stringByReplacingOccurrencesOfString:(NSString *)target
withString:(NSString *)replacement
...以获取替换了子字符串的新字符串(请参见 NSString
其他文档)
使用范例
NSString *str = @"This is a string";
str = [str stringByReplacingOccurrencesOfString:@"string"
withString:@"duck"];
str
过程中发生了一些变化
NSString
对象是不可变的(不能更改),但是有一个可变的子类NSMutableString
,它为您提供了几种替换字符串中字符的方法。这可能是您最好的选择。
也可以用stringByReplacingCharactersInRange:withString替换字符串:
for (int i = 0; i < card.length - 4; i++) {
if (![[card substringWithRange:NSMakeRange(i, 1)] isEqual:@" "]) {
NSRange range = NSMakeRange(i, 1);
card = [card stringByReplacingCharactersInRange:range withString:@"*"];
}
} //out: **** **** **** 1234
str
了我的内my 而已。