正则表达式测试器

在浏览器中实时测试 JavaScript 正则表达式,支持高亮显示匹配和捕获组。

//g

测试字符串

结果无匹配

什么是正则表达式?

正则表达式(Regular Expression)是用于在字符串中搜索、提取和替换特定模式的特殊语言。在 JavaScript 中,可以通过 RegExp 对象和 match()、replace()、split() 等字符串方法来使用正则表达式。本工具使用浏览器内置的 JavaScript RegExp 引擎,无需安装任何软件即可立即测试。

标志(Flag)说明

g全局匹配 (global)

查找字符串中所有匹配项,而不是仅找到第一个匹配就停止。

i忽略大小写 (ignoreCase)

匹配时不区分大小写。/hello/i 可以匹配 Hello、HELLO 和 hello。

m多行模式 (multiline)

^ 和 $ 匹配每行的开头和结尾,而不仅仅是整个字符串的开头和结尾。

s点号匹配换行 (dotAll)

. 元字符可以匹配包括换行符(\n)在内的任意字符。

uUnicode 模式 (unicode)

启用完整的 Unicode 支持,包括 \u{XXXX} 码点转义和 Unicode 属性转义。

常用正则表达式示例

用途模式
电子邮件验证
^[\w.-]+@[\w.-]+\.\w{2,}$
提取数字
\d+
提取 URL
https?://[^\s]+
提取韩文
[가-힣]+
删除空白
\s+

常见问题

什么是正则表达式?
正则表达式是用于匹配字符串中字符组合的模式。在 JavaScript 中与 match()、replace()、test()、split() 等方法配合使用,用于搜索、验证和转换文本。
g 标志和 i 标志有什么区别?
g(global)标志查找字符串中的所有匹配项而不只是第一个。i(ignoreCase)标志使匹配不区分大小写。可以组合使用:/pattern/gi 表示不区分大小写的全局匹配。
什么是捕获组?
捕获组是正则表达式中用括号 () 括起来的部分模式,用于提取匹配字符串的特定部分。例如,(\d{4})-(\d{2})-(\d{2}) 可以分别捕获日期中的年、月、日。
验证电子邮件地址的正则表达式是什么?
基本的电子邮件验证模式是 ^[\w.-]+@[\w.-]+\.\w{2,}$,将其粘贴到上面的测试器中即可立即验证。
如何转义特殊字符?
在正则表达式的特殊字符(. * + ? ( ) [ ] { } ^ $ | \)前面加上反斜杠(\)即可将其作为普通字符匹配。例如,使用 \. 来匹配真正的句点。
这和其他编程语言的正则表达式一样吗?
本测试器使用 JavaScript 内置的 RegExp 引擎(符合 ECMAScript 标准)。大多数语法与 Python、PHP、Java 等基于 PCRE 的语言相同,但某些高级功能可能有所不同。

相关工具