在Sublime Text中启用正则搜索需点击查找面板的.*图标或按Alt+R,配合Ctrl+F(Cmd+F)调出面板,使用PCRE语法可实现高效文本处理,如用"tid":"(\d+)"替换为"tid":$1去除JSON值引号,通过^.*time: 0.*\n删除含特定内容的行,利用^(?!.*time: 168).*\n删除不包含指定字符串的行,调整函数参数可用(print.*?)\)替换为$1, file=log_file),清理空行可查找\n{2,}替换为单个换行,清除行首行尾空格用^\s+或\s+$替换为空,结合Ctrl+H开启正则替换并使用Alt+Enter选中所有匹配项进入多光标编辑,注意转义字符需双写如\\d应写作\\\\d,捕获组用$1引用,熟练掌握可大幅提升编辑效率。

在Sublime Text里用正则搜索,关键就是打开查找面板并激活正则模式。操作简单,但配合PCRE语法能解决很多复杂问题,比如批量处理代码或日志文件。
开启正则搜索模式
按 Ctrl + F(Mac上是Cmd + F)调出查找面板。在输入框左侧有个 .* 图标,点击它使其高亮,这就启用了正则表达式模式。也可以用快捷键 Alt + R 来切换开关。之后你在输入框里写的模式就会按正则规则匹配,Sublime会实时高亮所有符合的结果。
常用正则技巧与实例
掌握几个典型场景的写法,效率提升很明显。
-
提取或修改带引号的值:比如把 JSON 中 `"tid":"2"` 改成 `"tid":2`(去掉value的引号)。查找:
"tid":"(\d+)",替换为:"tid":$1。这里的括号是捕获组,$1代表第一个括号里的内容。 -
删除特定行:想删掉所有包含“time: 0”的行。查找:
.*time: 0.*\n,替换框留空。或者更精确地匹配整行开头结尾:^(?!.*time: 168).*\n可以删除不包含“time: 168”的行。 -
调整函数参数:给所有print加log输出。查找:
(print.*?)\),替换为:$1, file=log_file)。这样每个print后面都会自动加上file参数。 -
清理空行或多余空格:查找两个以上连续换行
\n{2,},替换成单个换行,能快速整理文本。匹配行首或行尾空格用^\s+或\s+$,替换为空就能清除。
结合多光标和替换功能
正则不只是找,还能批量改。用 Ctrl + H 打开替换面板,同样开启正则模式。输入好查找和替换内容后,点“Replace All”一键全部修改。如果想先看看效果,可以逐个点“Replace”确认。配合 Alt + Enter 能选中当前所有匹配项,进入多光标编辑状态,这时再手动调整也方便。
基本上就这些,不复杂但容易忽略细节,比如转义字符要双写(如 \d 要写成 \\d),还有捕获组的引用方式。多试几次就能熟练了。










