同样的表达式,换个软件就不认识了

转义字符与捕获组引用是两套写法,混用会得到完全不同的结果。

两套写法的差异对照

搬家之前先对照一遍

用途办公软件写法代码编辑器写法
引用第一个捕获组反斜杠加数字反斜杠加数字,方向一致
匹配换行常用美元符号之外的方式单行模式与多行模式需手动切换
匹配空行不太支持用锚点组合即可
忽略大小写在对话框里勾选同样在对话框里勾选
匹配括号本身需要转义需要转义,规则相同

按用途挑的其它站

替换过程中的疑问

替换之后撤销不了怎么办

跨文件替换通常不进撤销栈。所以操作前复制副本是唯一可靠的保护措施。

正则表达式测试在哪做比较好

在一个小文件里先试。用查找全部功能看命中结果,确认之后再应用到全部文件。

插件在哪里装

通过内置的插件管理功能查找并安装,安装完成之后重启程序生效。注意插件与程序版本的兼容性。

为什么多行匹配勾了还是不行

确认表达式里的换行写法与当前模式匹配。不同模式下的锚点含义不同,需要对应调整。

大文件替换很慢正常吗

正常。几百万行的文件在替换时内存与处理器占用都会很高,建议拆分成几部分处理。

把常用的替换表达式整理成一个文本文件存着。下次遇到类似任务直接复制,比重新推导快得多。

三条常用套路

处理日志时最常做的是删掉每行的时间戳。把时间戳部分写成一组括号包起来的模式,替换框里留空,一步就能清掉。

整理配置文件时经常需要把某种键值对调换顺序。把两段内容各写成一个捕获组,替换表达式里对调两个组的位置即可。

清理多余空行时,把连续两个换行替换成一个,重复执行几次到不再变化为止。多行匹配选项要记得打开。

跨文件替换的操作顺序

  1. 把要处理的文件复制到一个单独目录,操作副本而不是原件。
  2. 打开跨文件搜索窗口,指定目标目录与文件类型。
  3. 先用查找预览一遍匹配结果,确认命中数量与预期一致。
  4. 确认无误后再执行全部替换。
  5. 替换完成后随机抽查几个文件,确认结果符合预期。