已经具有格式说明符%@的格式字符串

时间:2013-07-08 07:27:24

标签: objective-c cocoa-touch nsstring string-formatting

我有一个已包含格式化程序%@的字符串。

NSString *str = @"This is an %@";

我需要解析该字符串并将%@替换为'example'。如果我使用

[NSString stringWithFormat:@"%@", str];

我得到以下输出:

  

这是%@

我希望输出如下:

  

这是一个例子

2 个答案:

答案 0 :(得分:3)

NSString *str = @"This is an %@";

str = [str stringByReplacingOccurrencesOfString:@"%@" withString:@"example"];

答案 1 :(得分:2)

我建议将格式化的字符串用作“格式”

NSString *str = @"This is an %@";
str = [NSString stringWithFormat:str, @"example"];

正在使用各种类型。比替换更好的解决方案,因为您可以使用未指定的替换

如果您将localized.strings与要添加的x值一起使用,

非常有用;)