是否有一种简单的方法可以从VSCode中的打开文件中删除所有注释?最好是行和块注释。
最感兴趣的是Java,还有Python和R.
答案 0 :(得分:8)
remove comments
。 简单的//.*
将匹配所有单行注释(以及更多; D)。 #.*
可用于匹配python注释。 /\*[\s\S\n]*\*/
匹配阻止评论。您也可以合并它们://.*|/\*[\s\S\n]*\*/
(正则表达式中的|
表示"或",.
表示任何字符,*
表示" 0或更多"并显示要匹配的字符数,因此.*
表示直到行尾的所有字符)
当然有一些注意事项,例如urls(https://...
)有双斜杠并且会匹配第一个规则,而且上帝知道代码中哪个#
与该python规则匹配。所以必须进行一些阅读/调整!
一旦你开始摆弄你的正则表达式,它可能需要一辈子才能完美,所以要小心。如果您之前没有触及正则表达式,我可能会走简单路线!但是,了解一些简单的正则表达式对你有好处,因为它几乎无处不在。
答案 1 :(得分:5)
这将是一个简单的方法。键入 CTRL + F 并键入 //.*
并选择如下图所示的正则表达式。
现在你可以看到所有的注释行都被选中了。用空格替换它们。替换可以启用上图中>标志的点击。
对于第二个文本字段,输入一个空格并按 Enter。它将一一删除注释行。长按可以删除所有注释行。
答案 2 :(得分:1)
抱歉,我无法发表评论(信誉不足),但需要完成 ippi 答复: 您可以为单行注释正则表达式添加回溯条件,以避免包含诸如http(s)://
之类的网址示例:
(?<=[^:])\/\/.*
因此完整的正则表达式如下所示:
(?<=[^:])\/\/.*|/\*[\s\S\n]*\*/
答案 3 :(得分:1)
如果您不想安装删除选定评论的扩展程序,您可以尝试这种方法,
答案 4 :(得分:0)
由于tslint-to-eslint-config的错误,我不得不删除tsconfig.json中的注释; fix is merged现在供参考。
但是我通过在vscode中打开正则表达式搜索模式并将其输入搜索字段来解决了该问题:
$2
并将其放入替换字段:
store
您可以在regex101.com上看到此功能(替换后)here