UtilForge

正则表达式测试器 - 在线测试正则表达式

免费在线正则表达式测试工具。即时测试 JavaScript 正则表达式,查找匹配项并调试模式。

//g

什么是正则表达式?

正则表达式(Regex 或 Regexp)是一种定义搜索模式的字符序列。几乎所有的编程语言和文本编辑器都支持正则表达式。

正则表达式如何工作

正则表达式引擎逐个字符地将模式与目标字符串进行匹配。元字符具有定义匹配规则的特殊含义。

正则表达式示例

电子邮件地址

[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}Contact us at support@utilforge.dev or info@example.com

网址链接

https?://[^\s/$.?#].[^\s]*Visit https://utilforge.dev or http://localhost:3000 for more

密码强度

^(?=.*[A-Za-z])(?=.*\d)[A-Za-z\d]{8,}$Password123 weak Test1234

常用正则表达式

名称模式
仅数字^\d+$
仅字母^[a-zA-Z]+$
字母数字^[a-zA-Z0-9]+$
十六进制颜色^#?([a-fA-F0-9]{6}|[a-fA-F0-9]{3})$
电话号码^\+?[1-9]\d{1,14}$
日期(YYYY-MM-DD)^\d{4}-\d{2}-\d{2}$
IPv4 地址\b(?:\d{1,3}\.){3}\d{1,3}\b
用户名^[a-zA-Z0-9_.-]{3,20}$
十进制数字^-?\d+(\.\d+)?$
UUID^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$

如何使用正则表达式测试器

  1. 1

    在上方输入框中输入您的正则表达式模式

  2. 2

    在下方输入区域粘贴或输入要测试的文本

  3. 3

    点击「测试」查看所有匹配项及其位置和捕获组

  4. 4

    使用标志切换启用全局、忽略大小写、多行或点匹配换行模式

常见问题

此工具支持什么正则表达式语法?

此工具支持 JavaScript 正则表达式语法,基于 ECMAScript 标准,支持字符类、量词、分组、前瞻断言和反向引用等功能。

测试正则表达式时数据会发送到服务器吗?

不会。所有正则表达式测试完全在您的浏览器中使用 JavaScript 内置的 RegExp 引擎完成。

正则表达式标志 g、i、m、s 有什么作用?

g(全局)查找所有匹配项。i(忽略大小写)不区分大小写。m(多行)按行匹配边界。s(dotall)使点也匹配换行符。

为什么我的正则表达式在 JavaScript 和其他语言中表现不同?

虽然大多数正则表达式功能是通用的,但每种编程语言都有自己的正则表达式语法标准。

正则表达式中的前瞻(lookahead)和后顾(lookbehind)是什么?

前瞻和后顾是零宽断言,用于检查当前位置之后或之前的内容,而不消耗字符。JavaScript 支持前瞻 (?=...) 和负前瞻 (?!...)。后顾 (?<=...) 和 (?<!...) 在现代浏览器中可用。当文本后面(或前面)是——或不是——某个模式时才匹配它,可以使用这些断言。

如何从文本中提取所有电子邮件地址或电话号码?

启用全局标志 (g),并使用诸如 \b[\w.+-]+@[\w-]+\.[\w.-]+\b 的模式来匹配电子邮件地址。使用 g 标志时,引擎会返回测试文本中的每一个匹配,而不是在第一个匹配处停止。电子邮件、电话号码、日期和 IP 地址的现成模式已列在上方的常用正则表达式部分。

发现此工具有问题?

报告问题