开发者

how to detect lines of code with regex in VIM

开发者 https://www.devze.com 2023-01-01 09:18 出处:网络
I have so many println(\"\")开发者_开发知识库 in my codes .. I know it is messy ... I want to put comment for each of the println(\"\");

I have so many println("")开发者_开发知识库 in my codes .. I know it is messy ... I want to put comment for each of the println("");

how to do that in VIM ? I mean I want to do that on multiple files.

Also if possible, can it detect whether the lines has // already or not ... if the lines has been commented .. I don't want to add new //


To append a //comment to all uncommented println(...) calls on their own lines:

:%s/^\(\s*println(.*);\)\s*$/\1\/\/comment/gc

To comment out all the uncommented println(...) calls on their own lines

:%s/^\(\s*println(.*);\)\s*$/\/\/\1/gc


You could also use the :global command:

:g|println|normal I//

:g executes the command (here :normal I//) on all the lines when the first argument (here println) matches.

Also if you want to do this on all opened buffers, use the :bufdo command:

:bufdo g|println|normal I//

And to only do this on uncommented lines Amarghosh's regexp is perfect:

:bufdo g|\s*println(.*);|normal I//
0

精彩评论

暂无评论...
验证码 换一张
取 消