正则表达式:
/
/
常用:
测试文本
匹配结果
输入正则表达式和测试文本
正则表达式在线测试与替换
边写正则边看结果:上方输入表达式与标志位,左侧输入测试文本,右侧实时高亮所有匹配项,并列出每个匹配的位置与捕获分组内容。
下方还可以直接预览替换结果,用 $1 $2 引用分组,改一次看一次,不用来回切换工具。
主要功能
- 实时高亮:输入即匹配,所有命中位置在测试文本中直接标出。
- 标志位开关:g 全局、i 忽略大小写、m 多行、s 点匹配换行、u Unicode 独立勾选。
- 匹配详情:展示每个匹配项的内容、起始位置以及各捕获分组的取值。
- 替换预览:填写替换模板后即时预览结果,支持 $1、$& 等引用语法。
- 常用正则:内置邮箱、手机号、URL 等常用表达式,一键填入再按需修改。
使用步骤
- 在正则输入框中填写表达式,按需勾选右侧的 g / i / m / s / u 标志。
- 在左侧"测试文本"中粘贴要被匹配的内容。
- 在右侧"匹配结果"中查看高亮与分组详情。
- 需要替换时点击"替换模式",填写替换模板并查看预览。
常见问题
这里用的是哪种正则引擎?
用的是浏览器原生的 JavaScript RegExp,遵循 ECMAScript 语法。它与 Python、PCRE、Java 的写法大体相通,但 (?P<name>...) 命名分组、变长后行断言等特性支持情况不同,跨语言使用时需要留意。
为什么我的正则匹配不到内容?
常见原因有三类:一是忘了勾选 g 标志导致只匹配第一处;二是特殊字符没有转义,例如匹配小数点应当写 \.;三是没勾选 m 或 s,导致 ^ $ 与 . 的行为和预期不符。
贪婪匹配和非贪婪匹配有什么区别?
量词 * 和 + 默认是贪婪的,会尽可能多地匹配字符;在量词后加问号变成 *? 或 +? 即为非贪婪,尽可能少地匹配。例如对 <a><b> 使用 <.+> 会匹配整串,而 <.+?> 只匹配 <a>。
页面会记录我输入的正则和文本吗?
不会。匹配、替换全部在浏览器内完成,输入内容不会发送到服务器。