activities
latest
false
重要 :
请注意此内容已使用机器翻译进行了部分本地化。 新发布内容的本地化可能需要 1-2 周的时间才能完成。
UiPath logo, featuring letters U and I in white

Document Understanding 活动

上次更新日期 2024年12月5日

基于正则表达式的提取程序

UiPath.IntelligentOCR.Activities.DataExtraction.RegexBasedExtractor

描述

使您能够创建和使用自定义 的基于正则表达式 的方法从文档中提取信息。 该活动只能与“ 数据提取作用域 ”活动一起使用。

注意: 此活动不适用于 setboolean 字段。

项目兼容性

Windows - Legacy | Windows

配置

设计器面板

配置表达式 - 打开“配置正则表达式”向导。

属性面板

常见

  • “显示名称”- 活动的显示名称。

输入

  • 配置 ” - 将提取程序的配置值指定为 JSON 转义字符串。 使用提取程序向导生成配置。 您可以将“ 属性 ”面板中的配置保留为字符串,也可以使用向导进行定义,并将其绑定到变量。 建议使用向导而不是“ 属性 ”面板来编辑“配置”字段。
  • 超时 ” - 指定任何正则表达式搜索的超时值,以毫秒为单位。 0超时或负数超时被解释为无限期。 默认值为 2000
  • “使用视觉对齐”- 选中后,系统会对基于视觉字词对齐生成的文本版本应用正则表达式(视觉字词对齐文本中包含由单个空格字符分隔的字词、由单个换行符分隔的行以及由两个换行符分隔的页。)默认值为“False”。该选项可用于复杂的布局,方便用户根据文字在行上的视觉组织方式来编写正则表达式,而忽略文档中标识出的其他任何句子、段落或布局组。

其他

  • “私有”- 选中后将不再以“Verbose”级别记录变量和参数的值。

使用配置正则表达式向导

  1. 在“数据提取作用域”活动中,向工作流添加“基于正则表达式的提取程序”活动。
  2. 选择“配置表达式”,配置正则表达式。

    系统将打开“向导”窗口。

    图 1.“配置正则表达式”向导概览

  3. 展开文档类型条目,以查看所有已定义的字段,并开始配置您的正则表达式。系统会自动从项目的分类中读取文档类型及其相应字段。“正则表达式”配置选项可用于分类中的每个字段。检查您可能会在向导中遇到的以下配置选项:
    • 您可以选择一种文档类型,在展开该文档类型时,系统会显示单个常规字段。

      对于简单字段,只能使用“配置正则表达式”向导定义单个正则表达式。当您选择该字段旁边的“编辑”时,该向导会打开。

      图 2.“配置正则表达式”向导中定义的常规字段的文档类型

    • 您可以使用一种文档类型,在展开该文档类型时,系统会显示一个表格字段,其中显示表格的配置选项,例如适用于整个表格内容的“表达式”,或适用于各个行的“表达式”。
      查看以下列表,了解可用于表格字段配置的多个设置和选项:
      • “表格值正则表达式”可用于捕获整个表格区域。如果在“表格”字段行中未添加任何值,则系统会将文档的整个文本内容视为进行后续表格处理。
      • “行值正则表达式”可用于捕获给定表格捕获中的整个行。如果“行”字段行中未添加任何值,则按行尾分隔表格区域。从此刻开始,系统会将每个捕获的值视为要应用的列提取的行。
      • 列值正则表达式”可用于从每个捕获的行中捕获特定列的值。
      图 3.“配置正则表达式”向导中定义的表格字段的文档类型

      使用表格、行和列正则表达式的场景
      查看以下可能发生的场景,以使用可用的表格正则表达式选项:
      • 如果您将“表格正则表达式”和“行正则表达式”字段留空,则文档文本版本中的所有行都将用于应用“列级别正则表达式”来标识单元格值。
      • 如果您定义了一个正则表达式来捕获表格区域,但将“行正则表达式”留空,则使用每个“列正则表达式”单独处理表格中的所有行,以捕获单元格值。
      • 如果您将“表格正则表达式”留空,但定义了“行正则表达式”,则使用“行正则表达式”捕获的所有文本,并应用“列正则表达式”捕获每一行的单元格值。
      • 如果您同时填写“表格”和“行正则表达式”,则该活动将应用“表格正则表达式”来标识表格字符串,然后应用“行正则表达式”来标识每一行,再应用“列级别正则表达式”来捕获单元格值。
  4. 在“表达式”字段中添加您的正则表达式。

    您可以选择在“表达式”字段中写入整个正则表达式,也可以使用“编辑”选项构建它。

    重要提示:对于您定义的任何正则表达式,请确保至少有一个捕获组。报告值时仅使用表达式中已捕获的部分。
  5. 选择“正则表达式选项”列中的下拉列表。您可以在该多选选项中设置“正则表达式选项”。

    您可以从以下选项中进行选择:

    • “CultureInvariant”- 指定忽略语言文化差异。
    • ECMAScript - 为表达式启用 ECMA(欧洲计算机制造商协会)脚本合规行为。此值只能与“忽略大小写”和“多行”选项一起使用。
    • 显式捕获 - 指定唯一有效的捕获是经过显式命名或编号的,并定义为 (?<name> subexpression) 的组。任何未命名的括号都将被忽略。
    • “忽略大小写”- 指定搜索不区分大小写。
    • 忽略模式空白 - 从定义的模式中消除未转义的空格,并启用标有 #(井号)的注释。此选项不适用于标记单个正则表达式语言元素开头的字符类、数字量词或令牌。
    • “单行”- 指定在单行中启动搜索。点 (.) 匹配所有字符,包括异常 \n
    • “多行”- 指定在多行中启动搜索。对于此选项,特殊字符 ^$ 可匹配任何行的开头和结尾。
    • “从右到左”- 指定从右到左执行搜索。
      注意:有关可以使用的正则表达式选项的更多信息,请访问正则表达式选项枚举
    图 4. 展开的“正则表达式选项”下拉列表,显示可用选项

正则表达式编辑器向导

  1. 选择“编辑”以编辑该字段的选项和正则表达式的格式。

    系统将打开“正则表达式构建器”向导。

    图 5.“正则表达式构建器”向导概览

  2. 在“测试文本”字段中输入所需的文本。这是您要根据您选择的搜索条件应用正则表达式的文本。之后,在正则表达式的“值”字段中插入一个值,该值也会在“测试文本”字段中高亮显示。
    图 6. 在“测试文本”字段中输入文本,并使用“值”字段高亮显示其中的某个值

  3. 从下拉列表中选择一种正则表达式类型。这将设置正则表达式以匹配以下特征之一:
    • “文字”- 匹配您指定的确切字符。此选项区分大小写。
    • “数字”- 匹配数字。
    • “其中之一”- 匹配集合中存在的单个字符。
    • “非其中之一”- 匹配集合中不存在的单个字符。
    • “任何内容”- 匹配除 \n 以外的任何字符。
    • “任何单词字符”- 匹配任何字母和数字。
    • “空格”- 匹配一个空格。
    • “开头为”- 从行开始的位置开始搜索。
    • “结尾为”- 在行尾处开始搜索。
    • “高级”- 需要自定义表达式。
    • “电子邮件”- 匹配电子邮件地址。
    • “URL”- 匹配 URL。
    • “美国日期”- 匹配美国日期格式。
    • “美国电话号码”- 匹配美国电话号码格式。
      图 7. 显示正则表达式可用特征的下拉列表

      注意:有关 .NET 中正则表达式的更多信息,请访问 .NET 正则表达式
  4. 使用“值”字段以写入正则表达式的值。
  5. 从“量词”下拉列表中选择一个量词。您可以从以下选项中进行选择:
    • “精确”- 精确匹配前面指定的元素次数。默认情况下,它设置为 1
    • “任何(0 次或更多)”- 匹配前面的元素零次或多次,但次数越少越好。
    • “至少一次(1 次或更多)”- 匹配前面的元素一次或多次。
    • “零次或一次”- 匹配前面的元素零次或一次,但次数越少越好。
    • “在 x 次和 y 次之间”- 匹配前面的元素的次数为 x 次和 y 次之间,其中 xy 是整数,但次数越少越好。
  6. 要编辑字段,可以使用以下选项:
    1. 选择“添加”添加,添加额外的正则表达式字段。
    2. 选择“上移”上移和“下移”下移,在层次结构中上下移动字段。
    3. 选择“删除”remove,以删除字段。
  7. 如果要提取该特定字段,请选中“捕获”选项的复选框。
  8. “完整表达式”字段会准确显示您自定义的整个表达式。
  9. 从“正则表达式选项”下拉列表中选择一个或多个选项。
    图 8.“正则表达式选项”下拉列表中的可用选项

  10. 完成所有配置后,选择“保存”以退出“编辑”模式。
  11. 再次选择“保存”以关闭向导。

Document Understanding 集成

基于正则表达式的提取程序活动是 Document Understanding 解决方案的一部分。

此页面有帮助吗?

获取您需要的帮助
了解 RPA - 自动化课程
UiPath Community 论坛
Uipath Logo White
信任与安全
© 2005-2024 UiPath。保留所有权利。