跳转到内容

VS Code 正则表达式

代码注释

js

在 Visual Studio Code 中使用正则表达式来匹配单行和多行注释, 同时避免匹配到 URL, 可以使用以下正则表达式示例:

单行注释

js
// 匹配单行
(?<!http:|https:)//.*$

这个正则表达式使用了负向前瞻 (Negative Lookahead), 以确保 // 不是 URL 的一部分.

多行注释

js
// 匹配多行 /* */
/\*(?:(?!\*/).)*\*/

这个正则表达式使用了惰性量词 (.*?)和否定前瞻, 以匹配不包含*/ 的任意字符序列.

匹配单行和多行

要合并上述的正则表达式以匹配单行和多行注释的情况, 同时避免匹配到 URL, 你可以使用以下正则表达式:

js
//  匹配单行或多行//或者/**/
(?<!http:|https:)\/\/[^\r\n]*|\/\*[\s\S]*?\*\/

这个正则表达式使用两部分来匹配单行和多行注释:

  1. (?<!http:|https:)\/\/[^\r\n]* 匹配单行注释,[^\r\n]* 匹配任何不是换行符的字符, 以确保整个匹配在一行内.
  2. \/\*[\s\S]*?\*\/匹配多行注释,[\s\S]*? 匹配任何字符包括换行符, 使用懒惰量词来确保最短匹配. 这个正则表达式应该可以同时匹配单行和多行注释, 但不会匹配包含在 URL 中的//.

html

js
/<!--[\s\S]*?-->/g

参考

正则大全|支持 web / vscode / idea / Alfred Workflow 多平台