You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Blue Prism计算阶段提取文本末尾动态数字问题求助

解决Blue Prism中动态提取文本末尾数字的问题

首先,你之前用Right("Please take note of your order reference:","3")无效的核心原因是订单号的长度是动态变化的,固定取3位不仅会在数字位数改变时出错,还会误取到数字前的空格(原文本里数字前是: )。下面给你两种可靠的解决方案,完美适配动态长度的订单号:

方法1:使用正则表达式(最通用)

Blue Prism的Calculation阶段支持RegexExtract函数,专门用来提取符合规则的文本。因为你的需求是提取文本中的数字部分(且文本里只有这一处数字),可以用以下表达式:

RegexExtract([你的文本数据项名称], "\d+")
  • 细节说明:
    • 把[你的文本数据项名称]替换成你存储目标文本的实际数据项(比如[OrderReferenceText])
    • "\d+"是正则表达式,意思是匹配一个或多个连续的数字,不管数字是2位、3位还是更多,都能精准提取。

方法2:按固定分隔符拆分(适合格式固定的场景)

如果你的文本格式永远是[固定前缀]: [订单号],可以用Split函数按: (冒号加空格)拆分文本,直接取后面的数字部分:

Split([你的文本数据项名称], ": ")[2]
  • 细节说明:
    • Split函数会把文本按指定分隔符拆分成数组,Blue Prism的数组索引从1开始,所以[2]就是分隔符后面的内容(也就是动态变化的订单号)。
    • 这个方法的前提是前缀后面的分隔符永远是: ,不会有格式变化。

实际测试验证

比如当文本是"Please take note of your order reference: 4567"时:

  • 方法1会返回"4567"
  • 方法2也会返回"4567"
    当文本是"Please take note of your order reference: 89"时,两种方法都能正确返回"89",不会出现截取错误。

内容的提问来源于stack exchange,提问作者M.p

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.26 09:28:19