regex - 在vim,正则表达式中清空文件中的所有方法?

标签 regex vim keyboard-shortcuts

我正在使用 vim 编辑器,我想清空类中的所有方法,例如

class A {

     public:
        int getNumber() const {
             return number;
        }

        void setNumber(int num) {
             number = num;
        }


};

我想要一个可以替换的正则表达式,这样结果就是这个
class A {

     public:
        int getNumber() const;

        void setNumber(int num};


};

我知道我可以使用 %s 进行全局替换,但是在方法主体下获取所有内容正是我正在寻找的。

最佳答案

由于大括号当然可能嵌套在您的函数中,很遗憾,不可能创建一个可以匹配相应的结束大括号的正则表达式。

幸运的是,VIM 确实有移动到对应(它将移动到下一个括号/括号/等并跳转到相应的开始/结束),使用 % 键(大多数键盘布局上的 shift-5 我相信吗?),所以基本上,站在大括号之前的空间, c%; 将用分号替换整个 body 。

找到函数的左大括号是完全不同的事情,我会看看我是否可以为您想出一些东西,但要让您继续前进,请执行一次,然后继续点击 。 (句号)为每个函数再次执行它。

关于regex - 在vim,正则表达式中清空文件中的所有方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/478114/

相关文章:

r - 如何使用 r 删除文本文档中没有 http 的 url

vim - vim 在哪里搜索它的文件名补全 ctrl-x ctrl-f?

visual-studio - Visual Studio 命令不起作用。 ctrl + f5 不运行我的应用程序

keyboard-shortcuts - Karabiner-Elements 如何映射 pc 风格的家庭端键

javascript - 用我自己的自定义快捷方式覆盖浏览器快捷方式

r - 基于正则表达式的替换

Swift 3 替换发生次数准确

java - 解析Java字符串特殊字符错误

vim - 插入换行符而不进入插入模式,vim

regex - 删除文本文件中模式后的所有字符