RegexTest — 全部在本地浏览器内计算,文本不会上传

正则表达式 输入即时匹配,无需点按钮

/ /

匹配高亮 相邻匹配交替配色,方便看清边界

匹配明细 位置按字符计,从 0 开始

替换预览 支持 $1 $& $<名> 等替换语法

常用正则速查 点任意一行即可填入上方

关于性能:像 (a+)+、(.*)* 这类「嵌套量词」在长文本上会触发灾难性回溯。 本页把匹配和替换都放在 Web Worker 里计算,并设了 1.5 秒时间预算: 超时就终止该线程并给出提示,页面本身不会卡死。另有三层常规保护:匹配数上限 3000 条、 高亮只渲染前 200 KB、输入超过 200 KB 时不再自动跑(需要手动点「仍要匹配」)。
位置怎么算:按 UTF-16 代码单元计数,与 JavaScript 的 str.slice() 一致; 一个 emoji 通常占 2 个位置。勾上 u 标志后,正则本身按码位匹配,但位置计数仍按代码单元。
为什么要加 g:不加时只找第一个匹配;matchAll 在非全局正则上会直接抛错, 所以本页会按是否勾选 g 走不同分支。