正则表达式测试

在线正则表达式测试、匹配与替换

//g
标志 flags:
测试文本
匹配结果

输入正则与测试文本后,点击「测试匹配」查看结果

替换

什么是正则表达式测试?

正则表达式(Regular Expression,简称 Regex)是一种用于描述字符串匹配模式的文本语法。它使用特殊字符和规则定义搜索模式,广泛用于文本搜索、数据验证、字符串替换等场景。例如,\d{4}-\d{2}-\d{2} 可以匹配 2026-05-19 这样的日期格式。

正则表达式测试工具是一个在线的正则表达式调试环境,帮助开发者快速验证正则表达式是否正确匹配目标文本。它实时显示匹配结果、匹配位置和捕获组信息,还可以进行替换预览,是开发调试中不可或缺的辅助工具。

IqsBot 正则表达式测试工具支持 JavaScript 正则语法及所有常用标志(g/i/m/s/u/y),提供匹配结果与捕获组分析、替换预览等功能,所有处理均在浏览器本地完成。

为什么需要正则表达式测试工具?

在日常开发中,正则表达式的编写和调试非常频繁:

  • 表单验证:验证邮箱、手机号、身份证号等输入格式是否正确
  • 数据提取:从日志、HTML、配置文件中提取特定信息
  • 字符串替换:批量替换文本中的特定模式(如日期格式转换)
  • API 开发:编写路由匹配规则和参数校验
  • 日志分析:从大量日志中筛选和提取关键信息

使用 IqsBot 正则表达式测试工具,你可以实时测试正则表达式的匹配效果,查看捕获组内容,预览替换结果,大幅提升正则编写的效率。

相比其他在线正则工具,IqsBot 的核心优势是纯浏览器端运行——你的数据不会上传到任何服务器,完全在本地处理。对于包含敏感信息的日志和文本,这一点尤其重要。

如何使用 IqsBot 正则表达式测试工具

基础用法

  1. 输入正则:在正则表达式输入框中输入模式(如 (\d+)-(\d+)-(\d+)
  2. 设置标志:勾选需要的标志(g 全局、i 忽略大小写等)
  3. 输入测试文本:在左侧文本框中输入要匹配的文本
  4. 点击「测试匹配」:右侧显示匹配结果,包含位置和捕获组信息
  5. 查看结果:每个匹配项显示完整匹配内容和各捕获组

高级功能

  • 标志支持:支持 g(全局)、i(忽略大小写)、m(多行)、s(dotAll)、u(Unicode)、y(sticky)
  • 捕获组分析:显示每个匹配的捕获组内容和编号
  • 位置信息:显示每个匹配在文本中的起止位置
  • 替换预览:填写替换字符串(支持 $1$2 等捕获组引用),一键预览替换结果
  • 示例数据:点击「示例数据」快速加载测试用例
  • 支持 /pattern/flags 写法:可以直接粘贴 /(\d+)/g 格式的正则

使用示例

示例1:日期格式匹配与替换

正则表达式:(\d{4})-(\d{2})-(\d{2})

标志:g、m

测试文本:

订单日期:2026-05-19
创建时间:2025-12-01
无效:99-01

匹配结果:2 处匹配

替换为 $3/$2/$1,替换结果:

订单日期:19/05/2026
创建时间:01/12/2025
无效:99-01

示例2:邮箱提取

正则表达式:[\w.-]+@[\w.-]+\.\w+

标志:g

测试文本:联系我们:admin@example.com 或 support@test.org

匹配结果:2 处匹配——admin@example.comsupport@test.org

常见问题

Q: 支持哪些正则语法?

A: 支持 JavaScript 正则表达式语法,包括字符类、量词、分组、反向引用、零宽断言等。标志支持 g、i、m、s、u、y。

Q: 可以直接粘贴 /pattern/flags 格式的正则吗?

A: 可以。工具会自动识别 /pattern/flags 格式并提取正则体和标志,无需手动拆分。

Q: 捕获组引用怎么写?

A: 在替换字符串中使用 $1$2$3 等引用捕获组。例如正则 (\d{4})-(\d{2})-(\d{2}),替换为 $3/$2/$1 可以将 2026-05-19 转换为 19/05/2026

Q: 为什么我的正则没有匹配到结果?

A: 常见原因:1) 忘记勾选 g 标志导致只匹配第一个;2) 正则语法有误,检查特殊字符是否需要转义;3) 测试文本中确实没有匹配内容。工具会在正则语法错误时提示具体错误信息。

Q: 我的测试数据会上传到服务器吗?

A: 不会。所有正则匹配和替换操作都在浏览器本地完成,你的文本和正则表达式不会上传到任何服务器。

Q: 替换功能支持回调函数吗?

A: 当前版本仅支持字符串替换模式(含 $1$2 等捕获组引用),暂不支持 JavaScript 回调函数替换。