正则查找替换
用 JavaScript 正则表达式替换或提取文本;在隔离 Worker 中运行并设有硬性时限。
本地处理
文件只在当前浏览器处理;关闭或清空后不保留。
输入文本
输入或粘贴要处理的文本
调整设置
可调整正则表达式、模式、替换为 等
开始处理
在本机浏览器中处理,可随时取消
工具介绍
用正则表达式查找替换文本,或提取全部匹配内容,例如合并多余空格、调整日期格式、给手机号打码,或者从日志里收集所有邮箱地址和订单号。
使用 JavaScript 正则语法,可选忽略大小写、多行和点号匹配换行,替换时可以用 $1 引用分组。匹配在独立的 Worker 中运行,超过 10 秒会被终止,失控的表达式不会卡住页面;匹配超过 1 万处会报错停止。文本始终留在浏览器中,不上传。
使用步骤
- 粘贴要处理的文本,或点击“使用示例”。
- 在“正则表达式”中输入表达式(不要加首尾的斜杠),并在“模式”中选择“替换全部匹配”或“提取匹配内容”。
- 替换时填写“替换为”;按需勾选“忽略大小写”“^ 和 $ 匹配每一行”“. 匹配换行”。
- 点击“运行”,预览并下载文本结果(replaced.txt 或 matches.txt)和 matches.json。
格式与限制
- 输入
- 文本
- 输出
- 纯文本、JSON
- 大小上限
- 1 MB
- 可调设置
- 正则表达式;模式(替换全部匹配、提取匹配内容);替换为;忽略大小写;^ 和 $ 匹配每一行;. 匹配换行
- 隐私
- 文件留在当前浏览器会话中,不上传文件字节。
- 费用
- 免费,无需注册
常见问题
支持哪种正则语法和修饰符?
使用 JavaScript 正则表达式,输入时不带斜杠和修饰符;g 始终开启,三个勾选项分别对应 i、m、s。没有开启 u 修饰符,所以 \p{…} 这类 Unicode 属性写法无效,匹配常用汉字可以用 [\u4e00-\u9fa5]。
替换时怎么引用捕获分组?
用 $1、$2 等引用编号分组,用 $<name> 引用命名分组 (?<name>…),$& 表示整个匹配,$$ 表示美元符号本身。例如表达式 (\d{4})-(\d{2})-(\d{2}) 配合“替换为”中的 $1/$2/$3,可以把 2026-10-17 变成 2026/10/17。
能把匹配内容替换成换行吗?
不能。“替换为”是单行输入框,\n 这类转义会按字面插入反斜杠和字母 n。
提取模式下怎样只拿到分组内容?
文本结果 matches.txt 每行列出一个完整匹配;每个匹配的分组(包括命名分组)和位置都记录在 matches.json 中。
为什么运行会报错停止?
表达式有语法错误时,会在开始匹配前提示。运行超过 10 秒也会被终止,通常是 (a+)+ 这类嵌套量词引起的灾难性回溯;无论哪种模式,匹配超过 1 万处同样会报错。
用到这个工具的工作流
相关工具
文本美化
在中文与英文、数字之间加空格,并可改用中文标点、整理段落与多余空格。
大小写与命名风格转换
逐行转换字母大小写,或把短语与标识符转为驼峰、帕斯卡、下划线、短横线或常量命名。
文本差异对比
逐行对比两段文本并标注行号,可下载统一差异格式文本和 JSON 报告。
文本行处理(去重、排序、过滤)
一次完成去除首尾空白、删除空行与重复行、统计重复次数、按长度过滤、排序(含自然顺序与拼音顺序)以及添加前后缀。
汉字转拼音
将汉字转为带声调、数字声调或无声调的拼音,根据词语判断多音字;也可只取首字母或输出拼音注音。
标点符号转换
把文本中的标点全部转为中文全角或英文半角标点,数字、时间与链接中的符号保持不变。