在线测试正则表达式
编写一个模式,用真实文本进行测试,即时高亮显示每一处匹配 —— 一切都在浏览器中完成。
高亮匹配结果
匹配列表
未找到匹配项。
关于正则表达式测试器
直接在浏览器中编写和调试正则表达式。输入模式和标志,粘贴测试文本,即可实时查看高亮匹配 —— 无需等待、无需上传,任何数据都不会发送到服务器。
功能:
- 输入时实时高亮匹配,带200毫秒防抖
- 完整支持JavaScript标志:g、i、m、s、u
- 每个匹配都可查看编号和命名捕获组
- 支持$1和$<name>的查找替换预览
如何测试正则表达式
- 在斜杠之间输入或粘贴你的模式
- 切换需要的标志:g、i、m、s或u
- 粘贴测试文本,即可立即看到高亮的匹配
- 切换到替换标签,使用$1或$<name>预览查找替换
常见问题
这个正则表达式测试器免费吗?
是的。测试和调试正则表达式完全免费,没有次数限制,也无需注册。
这个工具使用哪种正则表达式方言?
这个工具使用浏览器原生的JavaScript正则表达式引擎运行你的模式,因此结果与Node.js或任何浏览器控制台完全一致。
我的测试数据会被发送到其他地方吗?
不会。你的模式和测试文本完全在浏览器中处理 —— 不会上传或存储任何内容。
为什么我的正则表达式在这里能用,但在Python或Go中不行?
每种语言的正则表达式引擎都有各自的特性。这个工具使用的是JavaScript方言,因此像后行断言、命名组或Unicode属性转义等功能,在Python的`re`模块、Go的`regexp`包或PCRE中可能表现不同。请始终使用你代码实际运行的引擎进行测试。
g、i、m、s、u这些标志分别是什么意思?
g表示查找所有匹配而不是只找第一个,i表示忽略大小写,m使^和$匹配每行的开头和结尾,s使.也能匹配换行符,u则启用完整的Unicode模式。
为什么带有*或+的模式会让其他测试工具卡死?
能匹配空字符串的模式(如/a*/g)或在特定输入下会指数级回溯的模式,可能会让简单的匹配引擎卡死。这个工具将匹配数量上限设为10万条,并且始终会在零长度匹配后手动前进,因此即使遇到棘手的模式也能保持响应流畅。
隐私保护
所有匹配都使用JavaScript的RegExp引擎在你的浏览器本地完成。你的模式和测试文本永远不会被上传或存储。