\]\*> 是 Sublime 中唯一能稳定删除所有单行 HTML 标签的正则,不跨行、不误删属性值中的 ,但删后文本粘连,且对 和 块无效。

这个写法看着简单,实际在 Sublime 的 PCRE 引擎里问题一堆: 这是真正可落地的操作链,漏一步就白干: 这不是正则错了,是 HTML 语义剥离后的必然结果。原始 标题 | 真正容易被忽略的是:删完后文本可能缺换行符,尤其末尾。Sublime 不保证文件以 ]*> 是 Sublime 里唯一能稳定删掉所有单行 HTML 标签(包括 、)的正则,它不跨行、不误吞属性值里的 或 → 替换为 >,但删完后文本会粘连,且对 <script></script> 和 块完全无感。为什么不用
<.>?
<.> 默认不跨行,遇到 就断成两截,只删开头不删结尾<script>console.log('<div>')</script> 里的字符串也当标签删掉alt="A > B" 这种含 > 的属性值,.*? 会在第一个 > 就收手,导致标签残留.* 图标时,整个表达式被当作文本字面量,根本不会执行正则匹配怎么安全执行
]*> 替换?
.* 图标已点亮(启用正则),但 \n 图标必须关闭(禁用 . 匹配换行符)]*>,替换框彻底留空(别填 \n、空格或不可见字符)\n 图标误开了删完标签后文本粘连、空行乱飞怎么办?
删完只剩“标题内容”,中间没换行也没空格。得补三步:
(?:\r\n|\r|\n)+ → 替换为 \n(解决 Windows/Linux 换行不一致)\n;再查 |
\n(注意顺序,避免嵌套干扰)
\n 图标,查找 ^\s*$ → 替换框留空(删掉带空格、Tab、甚至全角空格的伪空行)遇到
<script></script> 或 怎么办?]*> 对它们完全无效,且会误删里面的内容。Sublime 没有 HTML 解析器,不存在“自动跳过”的能力,必须人工干预:
Ctrl+Shift+P → 输入 Fold Tags,选中所有 <script></script> 和 块并折叠,再运行 ]*>
Ctrl+D 选中全部 <script>...</script> 和 ,按 Ctrl+Shift+P → Selection: Invert Selection,再执行替换html2text 或 BeautifulSoup 处理,正则只是临时救急手段\n 结尾,而很多工具(比如 Python 脚本、CI 流水线)要求 POSIX 兼容。删完记得检查最后一行是否高亮显示,必要时手动补一个换行,或运行 Ctrl+Shift+P → Insert Final Newline。
前端入门到VUE实战笔记:立即使用
在学习笔记中,你将探索 前端 的入门与实战技巧!











