Contact Us 1-800-596-4880

match

match(text: String, matcher: Regex): Array<String>

Uses a Java regular expression (regex) to match a string and then separates it into capture groups. Returns the results in an array.

Note that you can use match for pattern matching expressions that include case statements.

Parameters

Name Description

text

A string.

matcher

A Java regex for matching characters in the text.

Example

In this example, the regex matches the input email address and contains two capture groups within parentheses (located before and after the @). The result is an array of elements: The first matching the entire regex, the second matching the initial capture group () in the the regex, the third matching the last capture group ([a-z]).

Source

%dw 2.0
output application/json
---
"me@mulesoft.com" match(/([a-z]*)@([a-z]*).com/)

Output

[
  "me@mulesoft.com",
  "me",
  "mulesoft"
]

Example

This example outputs matches to values in an array that end in 4. It uses flatMap to iterate over and flatten the list.

Source

%dw 2.0
var a = '192.88.99.0/24'
var b = '192.168.0.0/16'
var c = '192.175.48.0/24'
output application/json
---
[ a, b, c ] flatMap ( $ match(/.*[$4]/) )

Output

[  "192.88.99.0/24", "192.175.48.0/24" ]

match(text: Null, matcher: Any): Null

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

Introduced in DataWeave version 2.4.0.