正则表达式怎么测试?在线正则匹配

实时匹配、分组捕获、替换模式,本地不上传

写正则最怕「脑子想的是对的,跑起来却不对」:标志位漏了、分组编号搞错、替换串写错。与其在代码里反复试,不如先丢进一个正则测试器里看清楚。这篇用 NBTools 的正则表达式测试工具讲清楚怎么用。

工具在浏览器本地运行,实时显示每一处匹配的位置和分组,支持替换模式与常用正则库,内容不上传

第一步:粘贴文本、写正则

在「原始文本」粘贴待匹配内容,在「正则表达式」框写模式(如 (\d+))。下面实时显示匹配数、每处位置和捕获到的分组。

第二步:勾选标志

按需勾选标志:g 全局、i 忽略大小写、m 多行、s 点匹配换行、u Unicode、y 粘连。当前生效的标志会显示在正则框右侧。

第三步(可选):替换模式

勾「替换模式」后填替换串,可用 $1 $2 引用分组、$& 引用整段匹配、$<name> 引用命名组。结果实时生成,可一键复制。

标志位速查

标志含义典型用途
g全局搜索找出所有匹配,而非第一个
i忽略大小写匹配 Email、英文词时不区分大小写
m多行^ $ 匹配每行首尾
s点匹配换行跨行内容也要算进去时
uUnicode正确处理表情符号等码点
y粘连从上次结束位置严格续匹配

内置常用正则与多语言参考

不想从零写,点「常用正则」里的手机号、身份证、邮箱、URL、IP、日期、中文字符、整数/小数、HTML 标签、命名组,一键填入示例;展开「各语言代码参考」还能拿到 JS / Python / PHP / Go / Java / C# / Ruby 的写法,直接粘进项目。

会卡死吗?有防护

某些「灾难性回溯」正则(如 (a+)+$ 配长文本)会让浏览器卡死。工具内置两层防护:文本上限 200000 字符,单次匹配超过 1 秒就主动终止并提示,避免页面假死。

常见问题

支持哪些标志位

支持 g / i / m / s / u / y 六个标准标志,可组合勾选,右侧实时预览当前生效标志。

分组(括号)怎么看

每处匹配下方列出编号分组($1、$2…)和命名分组($<name>),方便确认捕获内容。

替换模式怎么写

勾选替换模式后,用 $1 $2 引用分组、$& 引用整段、$<name> 引用命名组;结果实时生成可复制。

有现成正则可用吗

有。内置手机号、身份证、邮箱、URL、IP、日期、中文、数字、HTML 标签、命名组等常用模式,点击即填入示例。

文本太长或卡住了怎么办

文本超过 20 万字符会提示减少输入;单次匹配超 1 秒(疑似灾难性回溯)会被终止并提示简化正则或缩短文本。

内容会上传吗

不会。所有匹配、替换都在浏览器本地完成,文本与正则不上传。

相关工具

作者:NBTools · 更新于 2026年9月11日 · 阅读约 5 分钟