← 全部工具
数据不出浏览器
在线查找与替换(支持正则)
免费 find and replace。支持普通字符串或正则,批量替换文本。
让查找替换不出意外
字面替换安全但能力有限。正则替换威力大、破坏力也大:没有锚定的模式会改写你并不想动的子串,而反向引用在分组没有参与匹配时会静默地替换成空。
先测试,再替换。先用「匹配」跑一遍模式,确认它只选中目标文本(包括该「一个都不选」的情况)。模式匹配过多的问题,在替换之前修远比在替换之后改便宜得多。
两个转义引发了多数事故:点号匹配任意字符,所以 version.1 也会匹配 version21;替换串里的美元符号是分组引用而不是字面美元。用 ^ 或词边界锚定,能把大多数误替换变成无操作。
常见问题
- 正则怎么用?
- 勾选正则后按 JavaScript RegExp 语法编写模式。
- 区分大小写?
- 可开关;关闭时不区分大小写匹配。
- 会上传吗?
- 不会。
- 替换时怎么使用捕获分组?
- 把要保留的部分用括号包起来,在替换串里用 $1、$2 引用。捕获到的文本会原样插入,所以没有匹配到的分组会留下空位而不是报错——在全量应用之前,先拿样本确认一下。
- 为什么替换改动的地方比预期多?
- 常见原因是没转义的点号或缺少锚定。点号匹配任意单个字符,所以本意针对 version.1 的模式也会命中 version21;没有 ^ 或词边界时,匹配还能从行的任意位置开始。请转义点号并加上锚定。
- 查找替换能跨行吗?
- 只在显式开启多行模式时可以,默认是逐行处理的。不开多行模式时,看起来跨行的模式会「一个都匹配不到」——这比匹配过宽更常见。