sublime text 清除网页注释须分三步:先用删html注释(需启用. matches newline),再用/\*[\s\s]*?\*/删js/css块注释(需设对语法),最后用^\s*(?://).*$删行注释(需关闭. matches newline)。

Sublime Text 无法安全“一键清除网页源码中的无用注释”,必须分三类正则分别处理 <!-- -->、/* */ 和 //,且 <!-- --> 必须优先删除,否则其内部的 /* 或 // 会干扰后续匹配。
先删 HTML 注释:<!--[\s\S]*?-->(必须启用 . matches newline)
HTML 的 <!-- --> 可跨多行、可嵌套字符串(如 <!-- <div class="/* not a comment */"> -->),但 Sublime 不解析语法,只靠字符匹配。不启用右下角 .\n 图标,[\s\S] 就不生效,整段注释会被跳过。
-
<!--[\s\S]*?-->是唯一可靠写法:[\s\S]显式覆盖换行符,?防止从第一个<!--吞到文件末尾最后一个--> - 别用
<!--.*?-->:默认.不匹配换行,90% 的真实 HTML 注释都删不掉 - 删完立刻按
Ctrl+Shift+F→ 粘贴该正则 → 点Find All,重点抽检:开头的 license 注释、<script></script>标签内的注释块、结尾的调试注释
再删 JS/CSS 中的 /* */ 块注释(同样启用 . matches newline)
网页源码里 <script></script> 和 <style></style> 标签内是 JS/CSS 语法,/* */ 写法虽与 C 类似,但若文件语法被设为 HTML,Sublime 不会高亮识别字符串边界——const s = "<!-- not a comment -->"; 里的











