Find & Replace
One input per line. Output is numbered to match the input order.
Pinned tools are listed in your favourites on the home page.Copies a link to this tool that carries your current input, so it opens ready to run.Gives you an iframe snippet for putting this tool on your own site.
Ctrl+Enter Run · Ctrl+Shift+C Copy · Esc Clear
Understand Find & Replace
在整篇文档中查找并替换文本,可按字面文本处理,也可使用正则表达式。
How it works
在字面模式下,搜索词中的每个正则元字符都会先被转义,因此搜索 `a.b` 精确匹配 `a.b`,而不是「a、任意字符、b」。在正则模式下,你的模式按原样编译,全局标志默认开启(除非你关掉),忽略大小写标志默认开启(除非你要求区分大小写)。只有正则模式才会解释替换串中的 美元符号:`$1` 插入第一个捕获组,美元符号后跟一个和号 插入整个匹配,因此模式 `(\w+)@(\w+\.\w+)` 配上替换 `$2/$1`,会把 `[email protected]` 变成 `example.com/user`。
When to use it
- 不打开编辑器,就在粘贴进来的文件中重命名某个符号或 URL
- 用一条带捕获组的模式重塑一列数据——去掉前缀、调换两个字段、统一分隔符
- 从粘贴的日志中剔除噪声,比如时间戳或 ANSI 转义序列
- 转换分隔符,例如在导入文件前把制表符换成逗号
Watch out for
- 除非你打开区分大小写,匹配都是不区分大小写的,这与多数编辑器相反。在你改设置之前,替换 "id" 也会命中 "ID" 和 "Id"。
- 在正则模式下若不启用全局选项,只有第一处匹配会被替换。而在字面模式下,`$1` 和 美元符号后跟一个和号 会作为普通文本插入而不被解释,因此同一个替换串在两种模式下含义不同。
- 像 `(a+)+b` 这样嵌套量词的模式可能发生灾难性回溯,在较长输入上冻结标签页。请给模式加锚点,避免把量词套在另一个量词里。
- 在结构化文本中间做替换会悄悄破坏它。在 JSON、CSV 或 HTML 内部做字面替换,完全不知道自己正处在带引号的字符串或某个属性里——替换之后请校验输出。
Frequently Asked Questions
如何做不区分大小写的查找替换?
启用「不区分大小写」模式(或在正则模式中加上 "i" 标志)。搜索会匹配大写、小写和大小写混合的出现位置。替换保留被匹配文本的确切大小写,而不是搜索词的大小写。
如何在替换中使用正则反向引用?
查找模式中的捕获组在替换串中用 $1、$2 等引用。例如查找 (\w+)@(\w+\.\w+) 并替换为 $2/$1,会把 [email protected] 变成 domain.com/user。命名组用
lt;name>,美元符号后跟一个和号 插入整个匹配,$ 插入一个字面美元符号。可以跨多行替换吗?
启用正则模式并加上 "s"(dotAll)或 "m"(多行)标志。"m" 标志让 ^ 和 $ 匹配行边界;"s" 让点号(.)也匹配换行符,以便编写跨行模式。
How to Use Find & Replace
- Paste or type your input in the input area above.
- The tool processes your input automatically or click Run.
- Copy or download the result using the action buttons.
- Use Ctrl+Enter to run quickly from the keyboard.