UiPath Studio

The UiPath Studio Guide

Non-Greedy Search

About Non-Greedy Search

The Non-Greedy search makes it possible to identify the target element from a pool of similar applications, matching the attributes you specify. It needs to be included in the top-level tag of a selector.

If a generated selector contains the idx attribute, its value is set by default to *.

How Non-Greedy Search Works

Introducing Non-Greedy search in your selectors instructs it to search through all the active windows or browser instances which match the top-level tags of your selector, and not just the window instances in focus. Non-Greedy search makes use of the idx() attribute, which needs to be included in the top-level tag, as follows:

Option
Description

<idx='*'>

Searches through all active window instances for the element matching the top-level tag attributes.
Please note that the <idx='1'> option only searches through window instances in focus.

Currently, Non-Greedy search is supported for the following selector types:

Selector Type
Support

<wnd>

check_mark

<html>

check_mark

<webctrl>

no_right

<java>

no_right

<ctrl>

no_right

<sap>

no_right

<silverlight>

no_right

Selectors inside the following containers:
Open Application
Open Browsers
Attach Window
Attach Browser

no_right

Universal Windows Platform (UWP) applications

no_right

Example of Using Non-Greedy Search

For the purpose of the example, let's assume that we want to build an automation process which interacts with the Windows 10 Calculator app. However, there are two active instances, a Standard Calculator and a Programmer Calculator. We only need to interact with the Standard Calculator, so we introduce the idx='*' option in the top-level tag, in our case <wnd>. The following selector is generated, which returns the Calculator instance we are looking for:

<wnd app='applicationframehost.exe' appid='Microsoft.WindowsCalculator_8wekyb3d8bbwe!App' 
title='Calculator' idx='*' />
<uia cls='LandmarkTarget' />
<uia automationid='ProgrammerOperators' cls='NamedContainerAutomationPeer' name='Radix selection' />
<uia automationid='hexButton' cls='RadioButton' name='HexaDecimal ‭0 ‬' />

Updated 19 days ago


Non-Greedy Search


Suggested Edits are limited on API Reference Pages

You can only suggest edits to Markdown body content, but not to the API spec.