什么是正则表达式测试器和调试器?

免费在线正则表达式测试和调试器。编写带有标志的 pattern,查看实时匹配高亮,检查捕获组和匹配索引。

正则表达式是开发人员武器库中最强大的工具之一——也是最难做对的工具之一。正则表达式模式中一个放错位置的字符就能把成功匹配变成不匹配,甚至更糟,匹配所有本不应匹配的内容。正则表达式测试器与调试器在您构建模式时提供即时反馈,精确显示匹配的内容、捕获组落在何处,以及每个标志如何影响结果。

在表达式字段中输入您的模式,切换任意组合的标志:全局(g)、不区分大小写(i)、多行(m)、点全部匹配(s)、Unicode(u)和粘性(y)。测试字符串区域接受任何文本,输入时匹配部分会实时高亮。在匹配结果下方,捕获组会单独显示,带有组号和匹配的文本,让您轻松看到模式的哪部分捕获了哪部分内容。

该工具使用 JavaScript 原生的 RegExp 引擎,因此行为与您在 Node.js、浏览器 JavaScript 和大多数现代 JS 框架中看到的完全一致。这意味着您在这里开发的模式可以立即在代码中工作而无任何意外。匹配次数和索引位置与结果一起显示,帮助您不仅了解匹配了什么,还了解每个匹配发生在字符串中的位置。

对于调试复杂模式,捕获组提取尤其有价值。每个组都列有组号,让您可以轻松验证捕获组是否捕获了预期内容,以及非捕获组(?:...)是否没有干扰。粘性标志(y)的行为也得到清晰展示——匹配从 lastIndex 位置开始,这对于难以内联调试的增量解析场景非常有用。

正则表达式测试器和调试器的实际应用案例

在表单中验证电子邮件地址格式

您需要一个在注册表单中验证电子邮件地址的正则表达式模式。编写模式并针对一组有效电子邮件(user@example.com、first.last@company.co.uk)和无效字符串(notanemail、@missingusername.com)进行测试。即时高亮显示哪些测试字符串匹配,您可以调整模式,直到验证在您的用例中正确工作。

从服务器日志中提取数据

您的应用日志包含如下行:“2024-03-15 14:30:00 ERROR User 12345: Connection timeout”。为时间戳、日志级别、用户 ID 和消息构建带捕获组的正则表达式。捕获组显示会单独展示提取的每个部分,确认您的模式在部署前正确解析日志格式。

构建 URL 别名生成器

创建将文章标题转换为 URL 友好的别名的正则表达式。编写一个匹配非字母数字字符并将其替换为连字符的模式,然后将多个连字符合并为一个。用包含特殊字符、尾随空格和连续标点的示例标题进行测试,确保别名输出干净。

为什么要使用正则表达式测试器和调试器?

  • 测试字符串中的实时匹配高亮
  • 带组号的捕获组提取
  • 支持所有六个正则标志(g/i/m/s/u/y)
  • 匹配索引位置和计数显示

如何使用正则表达式测试器和调试器 — 分步指南

1

在模式字段中输入你的正则表达式。

2

根据需要切换标志(g, i, m, s, u, y)。

3

将测试字符串粘贴到输入区域。

4

在下方查看高亮匹配项和捕获组。

正则表达式测试器和调试器适合哪些人?

  • 模式验证
  • 数据提取
  • 日志解析
  • 字符串匹配

正则表达式测试器和调试器专业技巧

  • 1从最简单可用的模式开始,逐步增加复杂度。调试一个两字符模式比调试一个包含嵌套组和前瞻的 50 字符模式容易得多。
  • 2当您需要所有匹配而非仅第一个时,请使用全局(g)标志。没有 g 标志,正则表达式在第一次匹配后停止。这是最常见意外行为的来源。
  • 3点全部匹配(s)标志使点字符匹配换行符。没有它,. 匹配除换行符之外的所有内容。当您的模式需要匹配跨越多行的文本时,切换此标志。
  • 4针对边界情况测试您的模式——空字符串、只含特殊字符的字符串和非常长的字符串——以确保正则表达式能妥善处理极端情况。

正则表达式测试器和调试器 — 常见问题

What regex flavor is supported?

The tool uses JavaScript's native RegExp engine, which supports the standard ECMAScript regex syntax.

What does the sticky (y) flag do?

The sticky flag matches only at the regex lastIndex position, not just anywhere in the string. It is useful for incremental parsing.

Can I use these tools with sensitive/proprietary data?

Absolutely. All processing runs locally in your browser with zero server uploads. This makes these tools safe for proprietary code, internal API keys, and confidential data.

Do these tools work offline?

Yes, once the page has loaded, most developer tools continue functioning without an internet connection. This makes them ideal for air-gapped environments or travel.

What browsers are supported?

All modern browsers are supported: Chrome, Firefox, Safari, and Edge. Internet Explorer is not supported. The tools leverage modern JavaScript APIs like Web Crypto, TextEncoder, and BigInt.

准备使用正则表达式测试器和调试器?

免费在线工具 — 在浏览器中运行,无需注册,打开即用。

立即体验
Free Forever · No Sign-up

182 Free Tools at Your Fingertips

All free online tools for developers, designers, students, and creators. Every tool works in your browser — no sign-up, no data collection.