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.

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:

<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 TypeSupport
Selectors inside the following containers:
Open Application
Open Browsers
Attach Window
Attach Browser
Universal Windows Platform (UWP) applicationsno_right

Example of Using Non-Greedy Search

For the purpose of the example, let's assume that we want to build an automation process that 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 2 years 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.