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

  1. Paste or type your input in the input area above.
  2. The tool processes your input automatically or click Run.
  3. Copy or download the result using the action buttons.
  4. Use Ctrl+Enter to run quickly from the keyboard.