我继承了一堆C ++文件,需要更改函数和变量名,以满足我们新的C ++编码“标准”。
与所有C / C ++代码一样,有变量/函数,例如my_new_function或My_Newer_Function ......
Java人员强迫我们使用驼峰式的风格,所以我想做的是搜索任何下划线并使下一个字母大写并删除下划线,即:
my_new_function成为myNewFunction
和
My_Newer_Function成为MyNewerFunction
另外,如果名称中有一个数字,例如my_8th,它只会删除'_'以成为my8th。这应该是一个单独的正则表达式。
我有一些关于正则表达式的一般知识,但是这个已经让我感到难过..并且有这么多文件和很少的时间,我来到了SO成员的慈善聚会中寻求帮助。
提前谢谢。
是的,我知道,我应该让Java人员这样做,但我只是在这里工作......
- )
答案 0 :(得分:0)
答案 1 :(得分:0)
根据我的经验,如果您尝试使用单个命令大量更改代码,则可能会发现异常(例如,引用文本)。
我建议你构建一个shell:
1. for each file
2. get the names of variables/functions
3. for each name apply the sed command to get its new-name
4. on the fly build a sed command to replace exactly each name with the new-name in the the file
......昂贵但安全......