Xcode 可以在 XIB 中找到/替换吗?



如果我使用Xcode的"在工作区中查找/替换",它似乎会跳过XIB文件中UIViews中包含的任何文本。

无论如何要在Xcode中执行此操作还是需要使用其他工具?

谢谢!

>XCode将成功重构IBOutlet名称,即使它们在笔尖中连接。所以回答你:

在选择文本上的"查找/替换"之前,请先查看 Xcode 是否会重构它。它不会重构某些内容(例如枚举和 #defines)。如果它将重构您的目标文本,请选择它,它应该没问题。

您可以从命令行使用 find 和 sed

find . -name '*.xib' -type f -exec sed -i "" 's/OldText/NewText/g' {} 
例如,我

只需要找到并替换从SC到MCSC的所有前缀的类,我使用了:

find . -name '*.xib' -type f -exec sed -i "" 's/[[:<:]]SC/MCSC/g' {} 
[

[:<:]] 表示 OS X 上的单词边界(请参阅 https://stackoverflow.com/a/5734237/456366)。

如果用于文本/字符串替换而不是文件,则查找并替换Xcode的选项。

如果你想这样做,你可以有你的shell脚本/苹果脚本。

如果你真的有很多这样的文本想要查找/替换,你可能会发现IBTool很有用。

它通常用于从/导入文本。XIB 出于翻译原因,但它也应该满足您的需求。

您可以在 iPhone 应用程序本地化指南上查看 IBTool 用法示例。您会对指南的第 2 点和第 5 点感兴趣。

  • 使用 IBTool 导出字符串
  • 您可以在任何文本编辑器中查找/替换
  • 重新导入字符串

最新更新