在线 RegEx 正则测试 工具

实时匹配、高亮显示、常用语法速查

//
匹配详情 (Match Info)0 matches
No matches found...
测试文本 (Test String)
字符数: 109
Hello World! This is a simple Regex Tester. Try matching words or numbers like 123 or 2025. 你好,世界!测试一下中文字符匹配。
匹配高亮
.任意字符
\d数字
\w单词字符
^/$开头

正则表达式测试通过了?

如果不只是测试,而是想把您的文本处理工具分享给世界, 可以使用我们的静态部署服务,快速构建并托管您的工具网站。

免费部署工具站

为什么需要这款 在线正则表达式测试工具

正则表达式(Regular Expression,简称 Regex)是开发者日常工作中处理文本的利器。无论是在 IDE 中查找替换,还是在代码中校验用户输入,拥有一个实时、高亮、可视化的调试环境能极大提升效率。我们提供的工具完全免费,并在本地浏览器运行,确保您的数据隐私安全。

正则表达式语法速查表 (Cheatsheet)

字符类 (Character Classes)
.匹配除换行符外的任意字符
\w匹配字母、数字、下划线 [a-zA-Z0-9_]
\d匹配数字 [0-9]
\s匹配空白符 (空格, Tab, 换行)
[abc]匹配方括号内的任意字符
[^abc]匹配不在方括号内的任意字符
数量限定符 (Quantifiers)
*匹配 0 次或多次
+匹配 1 次或多次
?匹配 0 次或 1 次
{n}匹配恰好 n 次
{n,}匹配至少 n 次
{n,m}匹配 n 到 m 次
定位符 (Anchors)
^匹配字符串的开头
$匹配字符串的结尾
\b匹配单词边界
\B匹配非单词边界
(?=p)正向先行断言 (Lookahead)
(?!p)负向先行断言 (Negative Lookahead)
修饰符 (Flags)
gGlobal: 全局匹配,不要在找到第一个匹配后停止
iInsensitive: 忽略大小写
mMultiline: 多行模式,^ 和 $ 匹配每一行
sSingle line: 单行模式,. 可以匹配换行符
uUnicode: 开启 Unicode 支持

常见问题与高级技巧 (Advanced FAQ)

Q: 贪婪 (Greedy) 与 懒惰 (Lazy) 匹配有什么区别?

默认情况下,正则表达式是“贪婪”的,它会尽可能多地匹配字符。例如 a.*b 在匹配 "aabab" 时,会匹配整个字符串。

如果您希望它尽可能少地匹配,可以使用“懒惰”模式,只需在量词后加一个 ?。例如 a.*?b 匹配 "aabab" 时,会先得到 "aab"。

String: <div>test</div><div>test2</div>
Greedy: <.*> Matches entire string
Lazy: <.*?> Matches <div> then </div>...

Q: 如何使用正则表达式验证电子邮箱?

验证邮箱是一个经典难题,完美的 RFC 5322 标准正则极其复杂。但在实际 Web 开发中,我们通常使用一个“足够好”的版本来覆盖 99% 的场景:

^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$
提示:前端正则校验只是一道防线,请务必在后端发送验证邮件来确保邮箱真实有效。如果您正在构建一个需要发送邮件的应用,可以查看我们的 Next.js 部署指南 来快速搭建后端服务。

觉得这个工具好用?它是使用 React 和 Next.js 构建的完全静态页面。
您也可以制作这样的工具,并使用 上码 (Upma) 免费托管,与世界分享您的创意。