CanDoYa
ZH

免费正则表达式测试器

全程在浏览器中运行,无需上传,无需注册。

JavaScript 标志:d、g、i、m、s、u、v、y。请勿输入斜杠。

输入正则表达式和测试文本即可开始。
匹配项和分组
输入正则表达式以查看匹配结果。

支持 JavaScript 替换标记,包括 $&、$1 和 $<name>。

替换预览
输入有效模式以预览替换结果。
分享此工具

正则表达式测试器有什么用?

正则表达式测试器会用一段示例文本运行正则表达式,并列出每个匹配项的位置、捕获组和替换结果。本工具使用浏览器的 JavaScript RegExp 引擎,可按前端或 Node.js 代码中的标志和替换标记直接验证模式。

使用方法

  1. 1输入模式. 输入正则表达式,不要添加开头和结尾的斜杠。
  2. 2设置 JavaScript 标志. 添加 g 查找全部匹配、i 忽略大小写,或用 m 处理多行锚点。
  3. 3粘贴测试文本. 查看每个实时匹配项、起止偏移量、编号捕获组和命名捕获组。
  4. 4尝试替换. 输入含 $&、$1 或 $<name> 等标记的替换文本,然后复制预览。

适用人群

输入内容时结果会自动更新。请勿在模式两侧添加斜杠,填好 JavaScript 标志后再粘贴真实文本。匹配和替换都在浏览器本地完成,日志、源码片段和测试数据不会上传。

常见问题

这个正则表达式测试器免费吗?

免费,无需注册、账户或付费,也没有使用次数限制。现代浏览器打开即可使用,并提供实时匹配详情、捕获组和替换预览。

模式和测试文本会上传吗?

不会。模式、标志、测试文本和替换表达式都由浏览器的 JavaScript RegExp 引擎在本地处理,输入的数据不会发送到服务器。

最多能测试多少文本?

因为没有上传,所以不存在固定的上传限制。实际限制取决于浏览器内存和模式复杂度。为保证页面流畅,匹配列表最多显示前 500 项,但替换预览仍会处理完整文本。

这个测试器使用哪种正则表达式语法?

它通过原生 RegExp 引擎使用 JavaScript 正则表达式语法。PCRE、Python、Java 或 .NET 的模式可能表现不同,因为各引擎支持的特性和转义规则并不完全相同。

g 标志会改变什么?

g 标志会让 JavaScript 在首次匹配后继续查找后续所有匹配项。没有 g 时,测试器只报告第一个匹配项,替换预览也只替换这一处。

能测试编号捕获组和命名捕获组吗?

可以。编号捕获组显示为 $1、$2 等,以 (?<name>...) 编写的分组还会按名称显示。未匹配的可选分组会明确标注,两种分组都能用于替换表达式。

为什么有效的模式没有匹配结果?

模式语法正确也可能无法匹配当前文本。请先检查大小写、空白字符、锚点和标志。m 会改变 ^ 和 $ 对换行边界的处理方式,s 则允许点号匹配换行符。