contains

DataWeave 2.1 is compatible with Mule 4.1. Standard Support for Mule 4.1 ended on November 2, 2020, and this version of Mule will reach its End of Life on November 2, 2022, when Extended Support ends.

Deployments of new applications to CloudHub that use this version of Mule are no longer allowed. Only in-place updates to applications are permitted.

MuleSoft recommends that you upgrade to the latest version of Mule 4 that is in Standard Support so that your applications run with the latest fixes and security enhancements.

contains(Array<T>, Any): Boolean

Returns true if a list (array) contains a given value, false if not.

Parameters

Name Description

items

The input list (an Array).

elements

An element to find in the list. Can be any supported data type.

Example

This example indicates whether the input list contains '"3"'.

Source

%dw 2.0
output application/json
---
ContainsRequestedItem: payload.root.*order.*items contains "3"

Input

<?xml version="1.0" encoding="UTF-8"?>
<root>
    <order>
      <items>155</items>
    </order>
    <order>
      <items>30</items>
    </order>
    <order>
      <items>15</items>
    </order>
    <order>
      <items>5</items>
    </order>
    <order>
      <items>4</items>
      <items>7</items>
    </order>
    <order>
      <items>1</items>
      <items>3</items>
    </order>
    <order>
        null
    </order>
</root>

Output

{
  "ContainsRequestedItem": true
}

contains(String, String): Boolean

Indicates whether a string contains a given substring. Returns true or false.

Parameters

Name Description

text

An input string (a String).

toSearch

The substring (a String) to find in the input string.

Example

This example finds the substring "me" in "some string", so it returns true.

Source

%dw 2.0
output application/json
---
{ "ContainsString" : payload.root.mystring contains "me" }

Input

<?xml version="1.0" encoding="UTF-8"?>
<root>
  <mystring>some string</mystring>
</root>

Output

{ "ContainsString": true }

contains(String, Regex): Boolean

Returns true if a string contains a match to a regular expression, false if not.

Parameters

Name Description

text

An input string (String type).

matcher

A regular expression for matching characters in the input text.

Example

This example finds a match to /s[t|p]rin/ within "A very long string", so it returns true.

Source

%dw 2.0
output application/json
---
ContainsString: payload.root.mystring contains /s[t|p]rin/

Input

<?xml version="1.0" encoding="UTF-8"?>
<root>
  <mystring>A very long string</mystring>
</root>

Output

{
  "ContainsString": true
}

Was this article helpful?

💙 Thanks for your feedback!

Edit on GitHub