【问题标题】:Calculate characters up to %@ in NSString [closed]在 NSString 中计算最多 %@ 的字符 [关闭]
【发布时间】:2013-04-23 01:10:40
【问题描述】:

我有各种各样的 NSString,例如:

NSString *string = [NSString stringWithFormat:@"Item Used %@ times",item.numberOfUses];

NSString *string = [NSString stringWithFormat:@"Created %@ items",item.count];

重点是,字符的数量总是不同的。我需要做的是计算从字符串开头到但不包括'%@'的字符数,包括空格,并将该值作为整数。

我曾尝试调查 NSScanner,但到目前为止都失败了。这样做的正确方法是什么?

干杯。

【问题讨论】:

  • NSScanner 可以工作。显示您的代码!
  • 呃,%@ 不应该用于显示整数。
  • 你想在这里做什么??当有更简单的方法时,有人怀疑您正在尝试以艰难的方式做某事。
  • 为什么不能使用[theLiteralFormatString rangeOfString:@"%@"]
  • 我想我们都同意这个问题有点疯狂。

标签: objective-c nsstring nsscanner


【解决方案1】:

您不能将第一部分存储在 NSString 中,询问其长度,然后将其添加到格式化字符串中吗? 像这样:

NSString * firstPart = @"Item Used ";
int length = [firstPart length];

NSString *string = [NSString stringWithFormat:@"%@%d times", firstPart, item.numberOfUses];

【讨论】:

  • 是的,当我们知道整数是什么时,他要求从字符串中提取整数,这很奇怪,因为我们形成字符串:它是item.numberOfUsesitem.count。但是,如果您所拥有的是界面中的按钮标题或标签,则可能会发生这种情况。
  • 不,他是在询问您所说的 int 之前的字符数!
猜你喜欢
  • 1970-01-01
  • 2015-01-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-03-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多