在线 RegEx 正则测试 工具
实时匹配、高亮显示、常用语法速查
//
匹配详情 (Match Info)0 matches
测试文本 (Test String)
字符数: 109
匹配高亮
.任意字符
\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)
| g | Global: 全局匹配,不要在找到第一个匹配后停止 |
| i | Insensitive: 忽略大小写 |
| m | Multiline: 多行模式,^ 和 $ 匹配每一行 |
| s | Single line: 单行模式,. 可以匹配换行符 |
| u | Unicode: 开启 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) 免费托管,与世界分享您的创意。