查找表单元格出现项

查找出现的特定值及其在数据表中的位置。 使用特定文本或正则表达式。

命令可用性: 本地 IBM RPA SaaS 和 IBM RPA

脚本语法

IBM RPA 的专有脚本语言的语法与其他编程语言类似。 该脚本语法在脚本文件中定义命令的语法。 您可以在 IBM RPA Studio的 脚本 方式下使用此语法。

findTableCell --dataTable(DataTable) [--useRegex(Boolean)] --value(String) --regexPattern(String) [--regexOptions(DisplayableRegexOptions)] --search(FindTableRowSearches) --index(Numeric) --direction(FindTableRowDirectionsWrapper) --occurrencetype(FindOccurrenceTypes) --occurrence(Numeric) (Boolean)=success (Numeric)=row (Numeric)=column (String)=columnName (Scalar)=value (Numeric)=count

输入参数

下表显示了此命令中提供的输入参数的列表。 在表中,您可以看到在 IBM RPA Studio的脚本方式及其 Designer 方式等效标签中工作时的参数名称。

设计器方式标签 脚本方式名称 必需的 接受的变量类型 Description
数据表 dataTable Required Data Table 已评估的数据表。
使用正则表达式 useRegex Required Boolean 启用此选项可使用正则表达式在数据表中搜索内容。
value Required only when the Use Regex parameter is True Text 要在数据表中查找的文本值。
正则表达式 regexPattern Required only when the Use Regex parameter is True Text 输入正则表达式以在数据表中查找匹配项。
选项 regexOptions Optional DisplayableRegexOptions 选择一个选项以使用正则表达式来过滤搜索匹配项。

请参阅 regexOptions 参数选项
正则表达式(已废弃) regex Optional Boolean 启用以使用 "正则表达式" 来搜索表单元格。

此参数已过时,请改为使用 使用正则表达式 参数。
忽略大小写(已废弃) ignorecase Optional Boolean 启用以允许不区分大小写的匹配。

此参数已过时,请改为使用 选项
点与换行符匹配(已废弃) dotmatchesnewline Optional Boolean 启用以允许点字符 (.) 与每个字符 (包括 "\n") 匹配。

此参数已过时,请改为使用 选项 参数。
忽略空格(已废弃) freespacing Optional Boolean 启用以消除空格和分界,而不添加转义字符。

此参数已过时,请改为使用 选项 参数。
显式捕获(已废弃) explicitcapture Optional Boolean 启用以允许使用格式 (?) 仅捕获与指定组对应的文本。)。

此参数已过时,请改为使用 选项 参数。
多行(已废弃) multiline Optional Boolean 启用以允许 ^ 和 $分别与任何行的开头和结尾匹配,而不仅仅是整个字符串的开头。

此参数已过时,请改为使用 选项 参数。
搜索 search Required FindTableRowSearches 选择搜索单元格内容时所用的选项。 请参阅 search 参数选项 以获取详细信息。
列或行 index Only when Search in Rows, Columns Number 表单元格位置索引的元组。 示例:5,6
方向 direction Required FindTableRowDirectionsWrapper 选择用于控制搜索从哪个方向开始的选项之一。 请参阅 direction 参数选项
出现项类型 ocurrencetype Required FindOccurrenceTypes 确定应该找到该单元的实例。

请参阅 the ocurrencetype options parameter
出现 occurrence Only when Occurrence Type is N Number 您要查找的出现次数。

regexOptions 参数选项

下表显示了可用于 regexOptions 输入参数的选项。 该表显示了在脚本方式下工作时的可用选项以及在设计器方式下的等效标签。

设计器方式标签 脚本方式名称
已编译 Compiled
区域固定格式 CultureInvariant
ECMA 脚本 ECMAScript
显式捕获 ExplicitCapture
忽略大小写 IgnoreCase
忽略模式空格 IgnorePatternWhitespace
多行 Multiline
从右到左 RightToLeft
单行 Singleline

direction 参数选项

下表显示了可用于 direction 输入参数的选项。 该表显示了在脚本方式下工作时的可用选项以及在设计器方式下的等效标签。

设计器方式标签 脚本方式名称
从下到上,从左到右 Bottom2TopLeft2Right
从下到上,从右到左 Bottom2TopRight2Left
从左到右,从下到上 Left2RightBottom2Top
从左到右,从上到下 Left2RightTop2Bottom
从右到左,从下到上 Right2LeftBottom2Top
从右到左,从上到下 Right2LeftTop2Bottom
从上到下,从左到右 Top2BottomLeft2Right
从上到下,从右到左 Top2BottomRight2Left

occurrencetype 参数选项

下表显示了可用于 ocurrencetype 输入参数的选项。 该表显示了在脚本方式下工作时的可用选项以及在设计器方式下的等效标签。

设计器方式标签 脚本方式名称
第一次出现 First
最后出现 Last
第 n 次出现 N

search 参数选项

下表显示了可用于 search 输入参数的选项。 该表显示了在脚本方式下工作时的可用选项以及在设计器方式下的等效标签。

设计器方式标签 脚本方式名称 Description
rows 在定义的行上搜索实例。
Column 在定义的列上搜索实例。
所有单元格 Allcells 搜索所有单元格上的实例。

输出参数

设计器方式标签 脚本方式名称 接受的变量类型 Description
成功 success Boolean 如果成功找到单元格,那么返回 True,否则返回 False
row Number 返回在其中找到单元格的行的索引。
column Number 返回在其中找到单元格的列的索引。
列名 columnname Text 返回单元格的列名。
value Primitives 返回找到的单元格的内容。
计数 count Number 返回找到的出现次数。

示例

以下示例演示如何使用 查找表单元格实例 命令来查找要在数据表中使用的值。

defVar --name excelFile --type Excel
defVar --name obtainedSheet --type DataTable
defVar --name searchSuccess --type Boolean
defVar --name rowNumber --type Numeric
defVar --name columnsNumber --type Numeric
defVar --name columnName --type String
defVar --name cellContent --type String
defVar --name occurrencesQuantity --type Numeric
// Enter the file path to the excel file
excelOpen --file "Excelfile.xlsx" excelFile=value
excelGetTable --file ${excelFile} --getfirstsheet  --entiretable  --hasheaders  obtainedSheet=value
// Enter the parameters values to find a specific value occurrence.
findTableCell --dataTable ${obtainedSheet} --value "Value occurrence" --search "AllCells" --direction "Left2RightTop2Bottom" --occurrencetype "First" searchSuccess=success columnName=columnName rowNumber=row columnsNumber=column occurrencesQuantity=count cellContent=value
logMessage --message "Success: ${searchSuccess}\r\nRow: ${rowNumber}\r\nColumn: ${columnsNumber}\r\nColumn Name: ${columnName}\r\nContent: ${cellContent}\r\nOccurrences: ${occurrencesQuantity}" --type "Info"