ani*_*nio 5 c++ regex linux sed
所以我有一个巨大的代码库,需要添加一个命名空间。我没有手动执行此操作,而是想到使用 grep、xargs 和 sed 将命名空间添加到所有源文件中...
但我的技能达不到标准。理想情况下
namespace foo
{
Run Code Online (Sandbox Code Playgroud)
将在所有包含之后添加,并在 .h 文件中的 #endif 之后添加 '}'。
对于 .cpp 文件,在所有包含之后添加“使用命名空间 foo”就足够了。
我一直在搞 sed,但还没有走多远。
任何帮助,将不胜感激。谢谢!
这不是一件容易的事。造成问题的因素包括
language "C" { C-stuff }namespace Foo {和结尾“}”的位置也很困难。
language C.template声明(如果有),当然还有 doxygen 注释等。祝你好运!写一个剧本需要半个多小时。这比重写所有代码花费的时间要少得多。我建议你使用比 sed 更强大的东西。Perl、Python 和 ruby 是三个不错的选择。