免费工具 文本批量替换(多组查找替换,支持正则)
一篇文案里要改十几个词、一份链接清单里要统一 UTM 写法、一批商品标题要换掉不合规的说法:把规则一行一组写好(也可以直接从 Excel 复制两列),一次全部替换。每条规则命中几次、哪几行被改了,都在下面列出来。
- 多组规则一次替换
- 支持正则表达式
- 本地运行
写好规则,一次替换
上面粘贴原文,下面一行写一组规则:查找 => 替换为,或从表格复制的「查找、替换为」两列(中间是 Tab)。只写查找、不写替换就是删除。
文字只在当前浏览器页面里,不会上传。
分隔符可以是 =>、→ 或 Tab;以 # 开头的行是注释。
替换次数
4
所有规则一共实际改动了多少处(换上的和原文一样的不算)。
命中的规则
3
至少替换了一处的规则数。
改动的行
3
替换后和原来不一样的行数。
规则检查
每条规则的命中数
没有改动任何文字的规则标成橙色,常见原因是大小写、全角半角或空格不一致。
| # | 查找 | 替换为 | 结果 |
|---|---|---|---|
| 1 | 史上最低价 | 限时优惠价 | 替换 1 处 |
| 2 | 最低价 | 活动价 | 替换 1 处 |
| 3 | tapcub | TapCub | 替换 2 处 |
改动预览
只列出被改动的行:划线的是删掉的,绿色的是换上的。
- 1
TapcubTapCub 网站统计,史上最低限时优惠价,限时 3 天! - 2小程序统计、在线客服一站搞定,
tapcubTapCub 帮你看清每一位访客。 - 3活动价仅限新用户,
最低活动价以结算页为准。
TapCub 网站统计,限时优惠价,限时 3 天!
小程序统计、在线客服一站搞定,TapCub 帮你看清每一位访客。
活动价仅限新用户,活动价以结算页为准。版本 v1.0更新于 更新记录
先看命中数,再看预览
批量替换最怕两件事:该换的没换到、不该换的被换了。命中数和预览就是用来查这两件事的。
每条规则的替换数
没有改动的规则标成橙色:常见原因是原文里的写法和规则不完全一样,比如大小写、全角半角、多一个空格。命中次数比预想的多,说明规则可能改到了不该改的地方。
改动预览
逐行列出被改的地方,划线的是删掉的字,绿色的是换上的字。替换里带换行、行数变了时,预览按整段显示。
依次执行和同时替换
依次执行时,第 2 条规则会作用在第 1 条替换后的结果上,所以「A → B」「B → C」最后会把 A 变成 C;同时替换时每个位置只换一次,可以把两个词互换。
规则检查
正则写错时会标出是第几行、错在哪里,这条规则跳过,其它规则照常执行。用了 GA4 不支持的写法(前瞻、后顾、反向引用)也会提示。
正则表达式写好后,想确认它在 GA4 里能不能用、匹配了哪些值,用正则表达式在线测试按 RE2 规则检查。
三步完成批量替换
规则可以手写,也可以在 Excel 里整理成「查找、替换为」两列后整块复制进来。
-
1
粘贴原文
文章、商品标题清单、链接清单、代码都可以。
-
2
写规则
一行一组,
旧词 => 新词。长的词写在前面:先换「史上最低价」,再换「最低价」,否则长词会被短词规则拆开。 -
3
核对后复制
看命中数和预览,确认无误后复制或下载替换结果。
规则怎么写
默认是普通文字替换,所有符号都按字面意思;勾「使用正则表达式」后按 JavaScript 正则执行。
- 分隔符优先认 Tab(从表格复制的两列),其次是
=>和→;分隔符两边的空格会去掉,查找内容本身要以空格开头时用正则\s或\x20 - 正则模式默认带
g(全部替换)、u(按 Unicode 字符)和m(^$匹配每一行的开头结尾) - 替换里可以用
$1…$99、$<名字>、$&(整个匹配)和$$(美元符号本身),同 JavaScript 的String.replace - 匹配到空字符串(如单独的
^、\b)不算替换,避免在每个位置都插入文字
| 想做的事 | 规则 | 勾选 |
|---|---|---|
| 改一个词 | 微信号 => 公众号 | — |
| 删除一个词 | 【广告】(不写替换) | — |
| 把逗号换成换行 | , => \n | 识别转义 |
| 统一 UTM 来源写法 | utm_source=(wechat|weixin) => utm_source=wechat | 正则 + 忽略大小写 |
| 删掉行尾空格 | [ \t]+$ => | 正则 |
| 给手机号打码 | (1\d{2})\d{4}(\d{4}) => $1****$2 | 正则 |
一段促销文案的批量改词
本页默认示例:3 行促销文案、3 条规则,依次执行,忽略大小写。
| # | 规则 | 命中 | 说明 |
|---|---|---|---|
| 1 | 史上最低价 => 限时优惠价 | 1 | 第 1 行 |
| 2 | 最低价 => 活动价 | 1 | 只剩第 3 行的「最低价」;第 1 行已经被规则 1 换掉了 |
| 3 | tapcub => TapCub | 2 | 第 1 行的「Tapcub」和第 2 行的「tapcub」(忽略大小写) |
一共替换 4 处,3 行都有改动。如果把规则 1 和规则 2 的顺序反过来,「史上最低价」会先被换成「史上活动价」,规则 1 就找不到可替换的了——这就是「长的写在前面」的原因。广告文案里还有哪些说法要改,可以用广告法违禁词检测先查一遍。
批量替换容易出错的地方
替换是一次性改动大量文字,出错了不容易发现。下面几种最常见。
短词规则写在长词前面
先换「最低价」再换「史上最低价」,长词就永远匹配不到了。把长的、具体的规则放在前面。
依次执行时想互换两个词
「A → B」「B → A」依次执行,最后全变成 A。互换要选「同时替换」。
改到了词的一部分
把 cat 换成 dog,category 也会变成 dogegory。英文词勾「全词匹配」;中文没有词边界,规则写得长一点更稳妥。
正则里的特殊字符没转义
正则模式下 . ? ( 都有特殊含义,要匹配字面的点写成 \.。只做普通替换时不要勾正则。
统一写法,报表才不会被拆开
统计里最常见的「同一个东西变成好几行」,原因就是写法不统一:UTM 来源大小写不同、事件名有新旧两套。批量替换能在投放和埋点之前把写法统一。
怎么一次替换多个不同的词?
在「替换规则」里一行写一组,例如「旧词 => 新词」,写多少行都可以。也可以在 Excel 里整理成两列(查找、替换为),选中后复制粘贴进来,Tab 会被当成分隔符。Excel、WPS 自带的「查找和替换」(Ctrl+H)一次只能换一组,要换很多组时,把单元格内容复制进来批量替换,再整列粘回去。
批量替换支持正则表达式吗?
支持。勾「使用正则表达式」后,查找按 JavaScript 正则执行,替换里可以用 $1 引用分组。注意 GA4、Looker Studio 用的是 RE2,不支持前瞻、后顾和反向引用,用了的话工具会提示。
「依次执行」和「同时替换」有什么区别?
依次执行:一条规则全部替换完,再执行下一条,后面的规则会作用在前面替换后的结果上。同时替换:从头到尾扫一遍,每个位置只按第一条命中的规则换一次,换上的文字不会再被改,适合两个词互换。
怎么把逗号替换成换行?
规则写 , => \n(中文逗号就写 , => \n),保持「识别 \n \t 转义」勾选。反过来把换行换成逗号,写 \n => ,。
怎么删除某个词?
规则里只写要删的词,不写 => 和替换内容,就是替换成空,也就是删除。
为什么有的规则没有改动?
最常见的是写法不完全一致:大小写、全角半角(「,」和「,」)、多一个空格。可以勾「忽略大小写」,或先用文本去重 · 清理做全角转半角、合并空格。
我的文字会被上传吗?
不会。替换在你的浏览器里完成,原文和规则都不进网址、不发给 TapCub。