Blueprism:如何在计算阶段使用替换功能?

Blueprism: how to use the replace function in a calculation stage?

我正在阅读来自使用 BluePrism 的应用程序的文本。文本具有以下结构(数量因情况而异):"Please take note of your order reference: 525"。我需要能够从文本中提取数字。再看计算阶段,有一个replace函数:replace(text, pattern, new-text)。我想使用此函数将我的文本中的所有字母字符替换为空字符串 return 仅任何数字。我怎样才能在模式中输入它? 所以我想要这样的东西:

Replace([Order confirmation text ], /^[A-z]+$/, " ")

此外,我试图为 blueprism 附带的 VBO 寻找合适的文档,但找不到任何文档。有谁知道我们可以从哪里获得 blueprism 函数的文档?

这里有几件事:

-您的模式不匹配,因为它正在寻找从开始到结束的恒定字母字符串(^ 定位到字符串的开头,$ 定位到结尾)。

-您将模式替换为 space,而不是空字符串,因此即使您更正模式,结果中也会出现一堆 space .

-你说你只想替换字母字符,但看起来你还想去掉 space 和冒号。

尝试将 [A-Za-z :]+ 替换为“”。

计算阶段的 Replace() 函数是最简单的函数。这不是正则表达式!

因此,如果 stirng 始终采用该格式,则您可以使用:

Replace([Text],"Please take note of your order reference:","")

如果文本并不总是那么标准,那么您应该使用正则表达式。为此,您需要使用一个将调用正则表达式代码的对象。

在标准的blueprism对象中,您可以找到:

Object: Utility - Strings C#
Action: Extract Regex Values

我认为默认情况下没有 Regex Replace 操作,因此如果您愿意,则必须实施它。您可以在下面找到我正在使用的代码:

Dim R as New Regex(Regex_Pattern, RegexOptions.SingleLine)
Dim M as Match = R.Match(Text)
replacement_result = R.Replace(Text,Regex_Pattern,replacement_string)

您的目标是从字符串中检索数字,然后使用 Right():

Right("Please take note of your order reference: 525", 3)

这将 return 只有数字。

问候 维马尔

快速回答如果前面的文本是不变的使用中间语句,那么这将解决另一个人对权利的问题。即

中("Please take note of your order reference: 525",42,6)

如果您的目标是最大数字长度,它无论如何都会在最后停止。