ZH
我的工具

正则表达式解释器

粘贴正则表达式,即可得到逐个标记的大白话解释,并检查它在 JavaScript 中是否有效,同时显示捕获组和实时测试结果。

可粘贴正则本身,也可粘贴 /ab+c/gi 这样的 JavaScript 字面量。
我的工具 →
广告

正则表达式非常浓缩:十来个字符里就可能藏着一个先行断言、一个懒惰量词和两个捕获组。这个解释器会把正则拆成一个个标记,用大白话逐个说明,并用缩进表示它属于哪个分组。它还会告诉你该正则能否在 JavaScript 中编译,标出只在 PCRE、Python 或 Java 中才有效的语法,并对测试字符串运行,让你看到匹配结果和每个捕获组。

使用方法

  1. 粘贴正则——可以只粘贴正则本身,如 \d{3}-\d{4},也可以粘贴 JavaScript 字面量,如 /\d+/gi。
  2. 如果标志不在字面量中,请另外添加。
  3. 也可以输入测试字符串,查看第一个匹配及其分组。
  4. 点击“计算”。从上到下阅读解释表,缩进的行位于分组之内。

计算公式

正则 → 标记(字面量、转义、字符类、分组、量词、锚点、分支)→ 每个标记一行大白话。

{2,} 或 +? 这样的量词单独占一行,并且总是作用于它正上方的那一项。有效性检查使用你浏览器自带的引擎(new RegExp),所以“在 JavaScript 中是否可用:是”表示该正则确实可以在那里编译。Unicode 集合和限定范围的修饰符语法不在这个标记分析器的覆盖范围内,请改用“正则转自然语言”工具。计算在 Worker 中运行,两秒后停止。

示例

默认的邮箱正则 ^(?<user>[\w.+-]+)@((?:[A-Za-z0-9-]+\.)+[A-Za-z]{2,})$ 的解释如下:字符串开头;名为 "user" 的捕获组 1,包含一个或多个单词字符、点、加号或连字符;一个 "@";捕获组 2,包含一次或多次“标签加点”的重复,再加两个或更多字母;字符串结尾。它有 2 个捕获组,对 ada.lovelace+news@example.co.uk,分组 1 捕获 ada.lovelace+news,分组 2 捕获 example.co.uk。

常见问题

它解释的是哪种正则风格?

以 JavaScript 为准,因为这是你的浏览器运行的内容。常见的 PCRE、Python 和 Java 语法——原子组、占有量词、\A、(?P<name>…)、内联 (?i)——都能识别,并标注为 JavaScript 中不可用。

为什么对 \A 也显示“在 JavaScript 中是否可用:是”?

没有 u 标志时,JavaScript 会把 \A 这样的未知转义当作普通字母 A,所以正则可以编译,但含义不同。解释中会对此发出警告。

它会解释这个正则能匹配什么文本吗?

它会解释每个标记,合起来就是这条规则。要查看实际行为,请使用测试字符串:会显示第一个匹配和每个捕获组。

我的正则会被发送到别处吗?

不会。标记分析和测试都在你的浏览器中本地运行。

资料来源

最后更新:

引用此工具
APA

kakaoCalc. (2026, November 8). 正则表达式解释器. https://kakao.mobile/zh/tools/regex-explainer/

MLA

“正则表达式解释器.” kakaoCalc, 8 Nov. 2026, kakao.mobile/zh/tools/regex-explainer/.

广告