查找表单元格出现项
查找出现的特定值及其在数据表中的位置。 使用特定文本或正则表达式。
命令可用性: 本地 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"