推荐使用正则]*>一键删除HTML标签:它匹配尖括号内不含>的任意标签,避免跨行误删、引号干扰及注释破坏,比更稳定可靠。

怎么用正则一键删掉 HTML 标签只留文本
Sublime Text 本身不带“去标签”按钮,但靠 Find → Replace + 正则就能秒杀。关键是别用太暴力的 <.> —— 它在嵌套或含属性、注释、script/style 内容时会误删或漏删。
推荐用这个更稳的正则表达式:
<[^>]*>
它匹配「以 开头、中间不含 >、以 > 结尾」的任意标签(包括自闭合如 、),但不会跨行吃掉内容,也不会误吞 这类字符串里的尖括号。
- 打开
Ctrl+H(Windows/Linux)或Cmd+H(macOS) - 勾选
.*(即开启正则模式) - 查找框填:
]*> - 替换框留空
- 点
Replace All
为什么 <.> 在 Sublime 里容易出问题
这个看似简洁的非贪婪写法,在 Sublime 的正则引擎(PCRE 变种)中对换行和特殊结构支持较弱。常见翻车场景:
立即学习“前端免费学习笔记(深入)”;
- 遇到
:因默认不跨行,n Hello worldn<.>只能匹配单行内的标签,换行后就断了 - 遇到
click%20me%EF%BC%9A%E5%BC%95%E5%8F%B7%E5%86%85%20>%20%E4%BC%9A%E8%A2%AB%E6%8F%90%E5%89%8D%E7%BB%93%E6%9D%9F%E5%8C%B9%E9%85%8D%EF%BC%8C%E5%AF%BC%E8%87%B4%E5%88%A0%E4%B8%8D%E5%B9%B2%E5%87%80%E7%94%9A%E8%87%B3%E5%88%A0%E9%94%99 - %E9%81%87%E5%88%B0%20
%EF%BC%9A%E6%AD%A3%E5%88%99%E6%B2%A1%E5%81%9A%E6%B3%A8%E9%87%8A%E8%AF%86%E5%88%AB%EF%BC%8C%E7%9B%B4%E6%8E%A5%E6%8A%8A%20Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
