【发布时间】:2010-09-21 01:10:37
【问题描述】:
我正在寻找一种工具来替换整个项目中的多行。例如:
#include "../DiscreteIO/Discrete.h"
#include "../PCI/pci.h"
#include "../Arinc429/ARINC429.h"
与
#include "../PCI/pci.h"
#include "../DiscreteIO/DiscreteHW.h"
#include "../DiscreteIO/Discrete.h"
我尝试了两种适用于此类搜索和替换的工具。 Wildedit 和 Actual search and replace 两者似乎都是优秀的工具,但却是共享软件。有人知道类似的工具吗?有什么免费的,还是该花点钱了?
澄清:
通过一个项目在这种情况下意味着一千多个 c 文件。文本编辑器一次只能执行一个文件(Textpad、Programmers notepad)或所有打开的文件(nodepad++)。我没有尝试过任何其他编辑器,但我认为他们会遇到类似的问题。如果我错了,请纠正我。
像 sed 和 awk 这样的工具是一种解决方案,但存在一些问题,因为我不经常使用它们,并且由于我不是这些工具方面的专家,因此需要花一些时间才能开始工作。
答案是:全部...
超编辑可以工作,但我已经有一个编辑器,如果我只是将它用作搜索和替换工具,价格会很高。
基于 Sed、AWK 和正则表达式的工具可以工作,但在某些情况下可能会很麻烦。
Wild Edit 可以工作,而且不贵。
我最终的决定是发挥我的正则表达式技能。
【问题讨论】:
-
类似问题here
-
正如我在答案中链接到的教程中所示,UltraEdit 可以处理数千个文件,而不是在编辑器中打开。
-
如果您总是需要将这些文件放在一起,按需要的顺序创建一个包含所需内容的单个标头不是更好吗?如果标题可以按任何顺序包含,那将是最好的 - 每个都应该是self-contained and idempotent。我也建议去掉
../符号。
标签: search