什么是正则表达式测试器?
正则表达式(Regex/RegExp)测试器,实时显示匹配结果并高亮捕获组。支持 JavaScript 正则语法,包括分组捕获 `()`、非捕获组 `(?:)`、前瞻 `(?=)`、后顾 `(?<=)`、量词 `*+?{}`、字符类 `[]` 等。内置常用模板:邮箱验证、手机号、URL、IP 地址、日期格式等。适合前端开发、数据清洗、日志分析等场景。所有匹配在浏览器本地完成。
使用场景
- ◆表单输入验证(邮箱、手机号、身份证号)
- ◆日志文件模式匹配和提取
- ◆文本批量替换(如清理 HTML 标签)
- ◆数据清洗(提取结构化信息)
- ◆学习正则表达式语法
如何使用?
- 1在"正则表达式"框输入模式(如 `\d+`)
- 2在"测试文本"框粘贴待匹配内容
- 3实时查看匹配结果和高亮
- 4选择预设模板快速开始
功能特点
- ✓实时匹配
- ✓高亮显示
- ✓常用模板
- ✓捕获组展示
- ✓标志位支持(g/i/m/s)
常见问题
什么是正则表达式?
正则表达式(Regex)是用特殊字符描述文本模式的语法。例如 `\d+` 匹配一个或多个数字,`[a-z]+` 匹配小写字母序列。广泛用于搜索、验证、替换。
支持哪些正则语法?
支持 JavaScript 正则语法(ECMAScript),包括:字符类 `[]`、量词 `*+?{n,m}`、分组 `()`、断言 `^$\b`、前瞻/后顾 `(?=)(?<=)`。不支持 PCRE 特有语法如递归匹配。
g、i、m、s 标志分别是什么?
g=全局匹配(找所有匹配);i=忽略大小写;m=多行模式(^$ 匹配每行);s=单行模式(. 匹配换行符)。
\d 和 [0-9] 有什么区别?
在 JavaScript 中,`\d` 等价于 `[0-9]`,只匹配 ASCII 数字。某些正则引擎(如 Python/Java)的 `\d` 还匹配 Unicode 数字(如阿拉伯数字),但 JS 不会。
我的文本会被上传吗?
不会。所有正则匹配都在浏览器本地完成,文本不会发送到服务器。
为什么我的正则匹配不到预期结果?
常见原因:(1) 忘记加 g 标志导致只匹配第一个;(2) 特殊字符未转义(如 `.` 应写为 `\.`);(3) 贪婪/非贪婪模式选择错误(`.*` vs `.*?`)。