正则表达式测试
在线正则表达式测试与调试工具,实时高亮匹配结果,支持捕获组查看与替换功能。所有处理在浏览器本地完成。
常见问题
正则表达式有哪些常用标志(Flags)?
g 全局匹配,查找所有匹配项而非在第一个匹配后停止;i 忽略大小写;m 多行模式,^ 和 $ 匹配每行的开头和结尾;s 让 . 匹配换行符;u 启用 Unicode 支持,可正确处理 emoji 和中文等字符。
替换模式中 $1、$& 等符号是什么意思?
$& 代表整个匹配的文本;$1、$2 等代表第 1、2 个捕获组;$` 代表匹配位置之前的文本;$' 代表匹配位置之后的文本;$<name> 代表命名捕获组。这些符号来自 JavaScript 的 String.prototype.replace() 规范。
为什么我的正则表达式匹配不到任何内容?
常见原因:① 未开启 g 标志导致只匹配第一个(检查 flags 栏);② 正则中的特殊字符(如 . + * ( ))未转义,需加 \ 前缀;③ 使用了零宽断言(?= ?<=)但匹配内容为空;④ 测试文本的换行符与 . 不匹配(可开启 s 标志解决)。
如何使用捕获组提取匹配中的部分内容?
用括号 () 包裹想要提取的部分即可创建捕获组。例如正则 (\d{4})-(\d{2})-(\d{2}) 匹配日期后,$1 为年份、$2 为月份、$3 为日期。在匹配详情面板中可以查看每个捕获组的值。
常用正则模板怎么用?
正则输入框下方提供了一组常用正则模板标签,包括邮箱、手机号、URL、IP 地址、日期、中文、数字、字母、大小写字母数字、身份证号等。点击任意标签,对应的正则表达式会自动填入输入框并立即生效,方便快速参考和学习常见正则写法的结构。
这个工具支持哪些正则语法?
本工具使用浏览器内置的 JavaScript 正则引擎,支持 ECMAScript 2018+ 标准语法,包括:前瞻断言(?= ?!)、后瞻断言(?<= ?<!)、命名捕获组(?<name>)、Unicode 属性转义(\p{...},需开启 u 标志)等现代特性。
支持哪些键盘快捷键?
按 Ctrl+Enter(Mac 上按 Cmd+Enter)可快速复制当前匹配结果。匹配模式下会复制所有匹配的详情文本报告(含编号、位置和捕获组);替换模式下则复制替换预览的完整文本。
输入文本有长度限制吗?
有。正则表达式上限 500 字符,测试文本上限 50,000 字符(约 50KB),匹配结果展示上限 100 条(超过 100 条时仅展示前 100 条并给出提示)。设置上限是为了保障页面实时响应的流畅性——正则匹配在浏览器主线程执行,过大的输入或过多的结果会导致页面卡顿。
测试文本会被上传到服务器吗?
不会。所有正则匹配和替换运算都在您的浏览器本地完成,测试文本和正则表达式不会离开您的设备。GoGoGong 所有工具均遵循隐私优先原则,无需上传数据。