Contact Us 1-800-596-4880

find

find<T>(@StreamCapable() elements: Array<T>, elementToFind: Any): Array<Number>

Returns indices of an input that match a specified value.

This version of the function returns indices of an array. Others return indices of a string.

Parameters

Name Description

elements

An array with elements of any type.

elementToFind

Value to find in the input array.

Example

This example finds the index of an element in a string array.

Source

%dw 2.0
output application/json
---
["Bond", "James", "Bond"] find "Bond"

Output

[0,2]

find(@StreamCapable() text: String, matcher: Regex): Array<Array<Number>>

Returns the indices in the text that match the specified regular expression (regex), followed by the capture groups.

The first element in each resulting sub-array is the index in the text that matches the regex, and the next ones are the capture groups in the regex (if present).

Note: To retrieve parts of the text that match a regex. use the scan function.

Parameters

Name Description

text

A string.

matcher

A Java regular expression for matching characters in the text.

Example

This example finds the beginning and ending indices of words that contain ea

Source

%dw 2.0
output application/json
---
"I heart DataWeave" find /\w*ea\w*(\b)/

Output

[ [2,7], [8,17] ]

find(@StreamCapable() text: String, textToFind: String): Array<Number>

Lists indices where the specified characters of a string are present.

Parameters

Name Description

text

A source string.

textToFind

The string to find in the source string.

Example

This example lists the indices of "a" found in "aabccdbce".

Source

%dw 2.0
output application/json
---
"aabccdbce" find "a"

Output

[0,1]

find(@StreamCapable() text: Null, textToFind: Any): Array<Nothing>

Helper function that enables find to work with a null value.