删除代码注释

1. 适用于 JavaScript / TypeScript / Java / C# / C++ / Go / PHP 等

这些语言的注释风格主要是 ///* ... */

  • 删除单行注释 (// ...)

    \s*//.*
    • \s*:匹配注释前的任意空白字符(空格、制表符)。
    • //:匹配 // 本身。
    • .*:匹配 // 后的任意字符直到行尾。
  • 删除多行/块级注释 (/* ... */)

/\*[\s\S]*?\*/
  * `/\*`:匹配 `/*`。`*` 需要用 `\` 来转义,因为它在正则中有特殊含义。
  * `[\s\S]*?`:这是一个关键部分。
      * `[\s\S]` 匹配包括换行符在内的任意字符。
      * `*` 表示匹配零次或多次。
      * `?` 使其变为**非贪婪模式**,意味着它会匹配到第一个 `*/` 就停止。如果没有 `?`,它会从第一个 `/*` 一直匹配到文件中最后一个 `*/`,导致中间的代码被误删。
  * `\*/`:匹配 `*/`。`*` 同样需要转义。
  • ⭐️ 一次性删除所有注释(推荐): 将上面两种模式用 |(或)组合起来,可以一次性删除所有注释。

    \s*//.*|/\*[\s\S]*?\*/

2. 适用于 Python

Python 的注释风格是 #"""..."""'''...'''

  • 删除单行注释 (# ...)

    \s*#.*
  • 删除多行注释/文档字符串 ("""..."""'''...''')

    """[\s\S]*?"""|'''[\s\S]*?'''
  • ⭐️ 一次性删除所有注释(推荐)

    \s*#.*|"""[\s\S]*?"""|'''[\s\S]*?'''

    注意:这个正则也会删除作为文档字符串(docstrings)的多行字符串,这在某些情况下可能不是您想要的结果。

删除中文混合多余空格

  • 情况A:将单词两侧的多个空格压缩为单个空格 (推荐)

    • 这是一个更常见的格式化需求,能让排版更规范。
    • 查找 (Find): \s+([a-zA-Z]+)\s+
    • 替换 (Replace): $1 (注意 $1 的前后各有一个空格)
  • 情况B:完全删除单词两侧的所有空格

    • 查找 (Find): \s+([a-zA-Z]+)\s+
    • 替换 (Replace): $1 (这里 $1 前后没有空格)

删除大模型输出文本的**

\*\*([\s\S]*?)\*\*

替换 (Replace) 框中输入:

$1

匹配读书笔记导出日期

\[记录于 \d{4}-\d{1,2}-\d{1,2}\]