在线正则表达式测试器

以交互方式构建和调试 JavaScript 正则表达式。输入模式,切换 g、i、m、s、u 和 y 标志,测试文本中的匹配项和捕获组会随输入实时高亮。你还可以使用 $1、$2 等引用预览替换结果,或从电子邮件、URL、IPv4、UUID、ISO 日期等常用模式开始。

使用方法

  1. 在“模式”字段中输入正则表达式,或从“常用模式”中选择一个。
  2. 切换所需的标志,例如 g(全局)、i(忽略大小写)或 m(多行)。
  3. 粘贴测试文本,查看高亮的匹配项和捕获组列表。
  4. 可选:输入替换字符串查看替换后的输出,然后复制结果。

示例

输入

模式:(\w+)@(\w+\.\w+)   标志:g
测试文本:联系 ada@example.com 或 bob@test.org
替换:[$1 at $2]

输出

2 个匹配
匹配 1:ada@example.com  ($1 = ada, $2 = example.com)
匹配 2:bob@test.org     ($1 = bob, $2 = test.org)
替换结果:联系 [ada at example.com] 或 [bob at test.org]

常见问题

这个测试器使用哪种正则表达式风格?

它使用 JavaScript 的 RegExp 引擎,因此语法和行为与浏览器及 Node.js 中的运行结果一致。其他风格的特性(例如 PCRE 的占有量词)不受支持。

如何在替换内容中引用捕获组?

使用 $1 到 $9 引用编号捕获组,$& 表示完整匹配,$$ 表示一个字面美元符号。

为什么只看到一个匹配?

如果没有 g(全局)标志,JavaScript 在找到第一个匹配后就会停止。开启 g 即可找出文本中的所有匹配。

我的测试文本会被上传吗?

不会。所有匹配和替换都在浏览器本地运行。

相关工具