正则批量替换
TODO: 截图 — 工具主界面(文本模式)
概述
正则批量替换(Regex Applier)是一个强大的文本处理工具,支持通过预设的多条正则规则链,一键批量处理文本内容或文件。无论是清洗日志、格式化代码、提取结构化数据,还是批量修改文件内容,它都能高效完成。
核心功能
- 双引擎设计:浏览器端 JS 引擎提供毫秒级实时预览,后端 Rust 引擎以极高性能处理大批量文件
- 预设规则链:将多条正则规则组成"预设",按顺序依次应用,支持拖拽排序和快速开关
- 两种处理模式:直接输入文本(或粘贴剪贴板)即时处理,或选择文件/文件夹批量处理
- 一键处理:从剪贴板读取 → 应用规则 → 写回剪贴板,一次点击完成全流程
- 预设管理:创建、复制、导入/导出预设,内置 18 种常用正则快捷模式
快速上手
场景一:文本清洗(5 分钟)
假设你有一段包含邮箱、URL 和多余空白的文本,想快速清理。
在主页点击 正则批量替换 卡片进入工具,默认处于「文本模式」。
TODO: 截图 — 工具默认主界面
点击 显示预设(如已显示则跳过),然后点击 添加预设 → 选择「默认预设」(或新建一个)。
TODO: 截图 — 添加预设下拉菜单
点击 管理规则 打开预设管理器。
在右侧编辑区输入:
- 规则名称:移除 URL
- 正则表达式:
https?://[^\s]+ - 替换内容:
[链接已移除]TODO: 截图 — 规则编辑界面
在 测试输入 框里粘贴样例文本,右侧会实时显示替换预览。
TODO: 截图 — 实时预览高亮效果
点击 添加规则 继续添加:
- 规则名称:压缩空白
- 正则:
\s+ - 替换:
(一个空格) - 多行模式:勾选
g标志(JS 引擎会默认添加g和m标志)
回到主界面,在 输入文本 框粘贴待处理内容,输出文本 面板会自动显示处理结果。
TODO: 截图 — 输入/输出对比
点击 复制 或 发送到聊天 使用处理结果。
场景二:批量处理文件
将顶部的 处理模式 切换为「文件模式」。
TODO: 截图 — 模式切换按钮
通过拖拽或点击按钮,添加要处理的文件/文件夹。
TODO: 截图 — 文件模式界面,带拖拽高亮
设置 输出目录(处理后的文件将保存在此)。
可选:添加 文件名后缀(如
_processed),避免覆盖原文件。点击 开始处理文件,工具将调用 Rust 后端引擎执行批量替换。
TODO: 截图 — 处理中/完成状态
功能详解
① 顶部操作栏
| 区域 | 说明 |
|---|---|
| 处理模式 | 「文本模式」用于即时处理输入内容;「文件模式」用于处理磁盘上的文件 |
| 显示/隐藏预设 | 切换预设选择区域的可见性 |
| 查看日志 | 打开日志弹窗,显示规则应用记录和错误信息(有错误时会显示徽章) |
| 管理规则 | 打开预设管理器弹窗,进行规则的增删改查和测试 |
② 预设系统
预设是一组正则规则的集合,按顺序依次应用。支持:
- 添加预设:从已有预设列表中选择,预设按添加顺序排列
- 拖拽排序:通过拖拽预设标签调整应用顺序
TODO: 截图 — 预设标签拖拽排序
- 移除预设:点击预设标签上的 ✕ 按钮
- 状态持久化:选中的预设和排序会在重新打开工具后自动恢复
③ 文本模式
- 输入文本:支持直接输入、粘贴(
Ctrl+V)或从剪贴板读取 - 一键处理:点击「一键处理」按钮,自动从剪贴板读取 → 应用规则 → 写回剪贴板
- 输出文本:只读文本框,输入变化或预设变化时自动实时更新
- 发送到聊天:将处理结果直接发送到 LLM 聊天输入框
④ 文件模式
| 参数 | 说明 |
|---|---|
| 待处理文件 | 支持拖拽或 选择文件/选择文件夹 添加;每个文件显示处理状态(待处理/处理中/成功/失败) |
| 输出目录 | 处理后的文件保存目录,支持拖拽设置 |
| 文件名后缀 | 在原文件名后添加后缀(如 log_clean → log_clean.txt) |
| 强制 .txt | 忽略原始扩展名,统一保存为 .txt 格式 |
| 处理后清除 | 处理成功的文件自动从列表移除 |
⑤ 预设管理器(管理规则弹窗)
TODO: 截图 — 预设管理器全貌
左侧面板 — 预设与规则列表:
| 操作 | 说明 |
|---|---|
| 预设选择器 | 下拉切换当前编辑的预设 |
| 新建 / 复制 / 重命名 / 删除 | 预设的完整生命周期管理(至少保留一个预设) |
| 从文件导入 | 选择 .json 文件导入预设 |
| 从剪贴板导入 | 粘贴 JSON 格式的预设或规则数组 |
| 导出预设 | 将当前预设保存为 .json 文件 |
| 规则列表 | 显示预设中的所有规则;支持拖拽排序、关键词搜索、启用/禁用开关、快速删除 |
| 添加规则 | 为当前预设新增一条空规则 |
右侧面板 — 规则编辑与测试:
| 区域 | 说明 |
|---|---|
| 规则名称 | 可选,便于识别规则用途 |
| 正则表达式 | 支持 /pattern/flags 语法教程;验证失败时显示具体错误 |
| Rust 兼容性 | 实时检测正则是否能在 Rust 后端执行(影响文件模式) |
| 快捷规则 | 18 种常用模式,点击直接插入到正则输入框的光标位置 |
| 替换内容 | 支持捕获组引用 $1、$2 等 |
| 测试输入 | 输入样例文本,实时查看匹配次数和替换结果,匹配项高亮显示 |
| 输出预览 | 显示替换后的文本,替换内容以绿色高亮 |
TODO: 截图 — 规则测试区,展示匹配高亮
高级用法
组合场景:清洗+格式化一条龙
创建一个预设,包含以下规则链:
^[ \t]+→""(移除行首空白)\s+$→""(移除行尾空白)\r\n→\n(统一换行符)\n{3,}→\n\n(压缩多余空行)
这样一条规则链就变成了一个「文本清洗工坊」,每次只需选择预设 → 粘贴 → 一键处理。
批量替换实战
假设你要批量处理 src/ 下的所有 Markdown 文件:
- 创建预设:「替换内部链接」
- 规则:
\]\(\.\.\/→]((将相对路径../替换为当前目录)
- 规则:
- 切换到文件模式,添加
src/文件夹 - 设置输出目录为
src_clean/ - 设置后缀
_cleaned - 点击处理
Rust 引擎会在几秒内处理所有文件,并在日志中显示每项操作详情。
正则语法提示
工具支持标准 JavaScript 正则语法(/pattern/flags 格式):
| 标志 | 含义 |
|---|---|
g | 全局匹配(默认启用) |
m | 多行模式(默认启用) |
i | 忽略大小写 |
s | 点号匹配换行符 |
常用捕获组引用:
$1,$2— 按顺序引用捕获组$&— 匹配的完整文本- `$`` — 匹配前的文本
$'— 匹配后的文本
常见问题
Q:为什么我的规则在文本模式有效,文件模式却失效了?
A:可能是正则语法在 Rust 后端不兼容。JS 和 Rust 的正则引擎有差异(如 Rust 不支持前瞻 (?=...) 和后瞻 (?<=...))。在管理规则时,右侧会显示 Rust 兼容性 状态标签,如果标记为「不兼容」,文件模式将跳过该规则。建议在文件模式中避免使用前瞻/后瞻断言。
Q:文件处理到一半中断了,已经修改的文件会怎样?
A:Rust 引擎采用顺序处理(逐文件读取 → 应用规则 → 写入),处理成功的文件会完整写入输出目录。中断时,已成功处理的文件不受影响,未处理或处理中的文件需要重新执行。
Q:如何分享我的预设给其他人?
A:在预设管理器中打开预设,点击 导出预设 保存为 .json 文件。接收者在同一页面点击 从文件导入 或 从剪贴板导入 即可使用。
Q:一键处理(粘贴 → 处理 → 复制)为什么没有弹出提示?
A:一键处理会直接操作系统剪贴板,处理完成后会弹出成功提示。如果没有任何反应,请检查:
- 是否已选中至少一个预设
- 剪贴板中是否有文本内容
- 查看日志面板是否有错误信息
Q:我可以对同一个预设中的规则调整执行顺序吗?
A:可以。在预设管理器的左侧规则列表中,直接拖拽规则卡片即可调整顺序。规则从上到下依次执行,前面的输出会作为后面的输入。