在线提交需求

请留下您的联系方式,我们的专家将在 24 小时内与您沟通。

极奇策RPA技术教程:正则批量替换 (NodeRegexReplace) - 自动化开发与配置详细指南

极奇策技术团队更新于 2026-08-260 阅读

image.png

正则批量替换

📖 节点概述

使用正则表达式对文本执行批量查找与替换。支持多条正则规则(每行一条),每条规则由分隔符分成“正则表达式”和“替换文本”。提供常用的正则标志(忽略大小写、多行模式、点号匹配换行)。该节点为纯数据节点,无执行端口。

💡 使用场景

  • 文本格式化:将多种日期格式统一(如 \d{4}-\d{1,2}-\d{1,2}$1/$2/$3)。
  • 数据清洗:移除 HTML 标签(<[^>]+>'')、多余空白字符(\s+' ')。
  • 敏感信息脱敏:将手机号中间四位替换为 ****(\d{3})\d{4}(\d{4})$1****$2)。
  • 代码生成:批量修改变量命名风格(如驼峰转下划线)。
  • 日志解析:提取并重组日志行中的字段顺序。

🎮 实战连线指南:如何正确使用它?

节点有三个输入端口:原文本替换规则分隔符,以及三个高级选项(正则标志)。输出端口 结果

场景案例:将文本中的所有数字替换为 [数字]

  1. 准备原文:从【变量获取】读取 content = "订单号 10086,金额 299.00 元"

  2. 设置替换规则(多行文本):

    \d+(?:\.\d+)? [数字]
    

    说明:匹配整数或小数,替换为 [数字]

  3. 分隔符:默认空格(规则中正则和替换文本之间用空格分隔)。

  4. 获取结果结果 输出 "订单号 [数字],金额 [数字] 元"

反向引用示例:将 yyyy-mm-dd 格式转换为 dd/mm/yyyy

  • 正则:(\d{4})-(\d{1,2})-(\d{1,2})
  • 替换:$3/$2/$1
  • 原文:2025-01-1515/01/2025

高级标志组合

  • 忽略大小写:使正则中的字母匹配不区分大小写。
  • 多行模式:^$ 匹配每行的开始和结束(而非整个字符串)。
  • 点号匹配换行:. 可以匹配换行符 \n

⚙️ 引脚与参数说明

📥 输入引脚

引脚名称数据类型说明
原文本STRING待处理的原始文本。可通过多行文本框填写或连线传入。
替换规则STRING正则替换规则列表,每行一条。格式:正则表达式 替换文本,正则与替换之间的分隔符由“分隔符”参数指定。
分隔符STRING用于分割每条规则中“正则”与“替换文本”的字符串。支持转义序列(如\n\t)。默认为空格

⚙️ 控件参数

控件名称类型说明
原文本多行文本框手动输入原始文本。连线时优先使用连线值。
替换规则多行文本框手动输入正则替换规则(每行一条)。
分隔符单行文本框手动输入分隔符(默认空格)。
忽略大小写 (i)复选框(高级)对应正则标志re.IGNORECASE
多行模式 (m)复选框(高级)对应re.MULTILINE
点号匹配换行 (s)复选框(高级)对应re.DOTALL

📤 输出引脚

引脚名称数据类型说明
结果STRING应用所有正则替换规则后得到的新字符串。

🔧 替换顺序与规则解析

  • 规则按从上到下的顺序依次应用于文本(前一条规则的结果会成为下一条规则的输入)。
  • 每条规则按分隔符拆分成两部分:正则表达式 和 替换文本。如果一行中包含多个分隔符,仅拆分第一个分隔符(因为替换文本中可能包含分隔符本身)。
  • 替换文本中可以使用反向引用:$1$2 等引用正则捕获组的内容;$0$& 表示整个匹配。
  • 如果正则表达式编译错误,该条规则会被跳过。

⚠️ 注意事项

  • 转义字符:在正则表达式或替换文本中如需字面反斜杠,需要写 \\(因为节点内部会先解析一次转义)。建议在规则中使用原始字符串形式(但这里只能手动双写)。
  • 分隔符选择:建议使用正则表达式中不会出现的字符作为分隔符(如 |\t)。如果使用空格,则正则表达式本身不能包含空格(除非用 \s[ ] 匹配)。
  • 性能:正则替换对于大文本和复杂正则可能开销较大。避免在循环中反复执行。
  • 标志位作用:标志位应用于所有规则。如果需要不同规则使用不同标志,请分多次使用本节点或使用多个节点串联。
  • 空规则:如果替换规则为空,原文本保持不变。

💎 小贴士

  • 使用 (?:...) 可以创建非捕获分组,避免影响反向引用编号。
  • 替换文本中的 \1 等价于 $1,但推荐使用 $1 以免与转义混淆。
  • 如果需要删除匹配的内容,将替换文本设为空字符串。
  • 结合【字符串长度】或【截取字符串】节点,可以进一步处理替换后的结果。
  • 该节点与【批量替换字符串】的区别在于:本节点使用正则表达式,匹配能力更强;后者使用普通文本,但更简单安全。
助理
咨询
微信
微信客服扫码添加微信
社群
QQ群扫码加入Q群
电话
免费咨询热线0371-67993886
顶部