我希望我的输出为“23”,但仍显示“123”。
NSString *valorTextField = [[NSString alloc] initWithFormat:@"123"];
[valorTextField stringByReplacingOccurrencesOfString:@"1" withString:@""];
NSLog(@"%@", valorTextField);
答案 0 :(得分:11)
stringByReplacingOccurrencesOfString
会返回 new 字符串:
NSString *valorTextField = [[NSString alloc] initWithFormat:@"123"];
NSString *replaced = [valorTextField stringByReplacingOccurrencesOfString:@"1" withString:@""];
NSLog(@"%@", replaced);
或者,您可以使用NSMutableString
并使用。{
replaceOccurrencesOfString:withString:options:range:
方法。
答案 1 :(得分:5)
您没有再次将返回的字符串分配给valorTextField
。你只是在执行功能。实际字符串不变。而是写:
valorTextField = [valorTextField stringByReplacingOccurrencesOfString:@"1" withString:@""];
NSLog(@"%@", valorTextField);