%dw 2.0
output application/json
---
[ 1, 2, 3, 4 ] contains(2)
DataWeave
contains
contains<T>(@StreamCapable items: Array<T>, element: Any): Boolean
Returns true
if an input contains a given value, false
if not.
This version of contains
accepts an array as input. Other versions
accept a string and can use another string or regular expression to
determine whether there is a match.
Parameters
Name | Description |
---|---|
|
The input array. |
|
Element to find in the array. Can be any supported data type. |
Example
This example finds that 2
is in the input array, so it returns true
.
Source
Output
true
JSON
Example
This example indicates whether the input array contains '"3"'.
Source
%dw 2.0
output application/json
---
ContainsRequestedItem: payload.root.*order.*items contains "3"
DataWeave
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>
XML
Output
{ "ContainsRequestedItem": true }
JSON
contains(text: String, toSearch: String): Boolean
Indicates whether a string contains a given substring. Returns true
or false
.
Parameters
Name | Description |
---|---|
|
An input string (a |
|
The substring (a |
Example
This example finds "mule" in the input string "mulesoft", so it returns true
.
Source
%dw 2.0
output application/json
---
"mulesoft" contains("mule")
DataWeave
Output
true
JSON
Example
This example finds that the substring "me"
is in "some string"
, so it
returns true
.
Source
%dw 2.0
output application/json
---
{ ContainsString : payload.root.mystring contains("me") }
DataWeave
Input
<?xml version="1.0" encoding="UTF-8"?>
<root><mystring>some string</mystring></root>
XML
Output
{ "ContainsString": true }
JSON
contains(text: String, matcher: Regex): Boolean
Returns true
if a string contains a match to a regular expression, false
if not.
Parameters
Name | Description |
---|---|
|
An input string. |
|
A Java regular expression for matching characters in the input |
Example
This example checks for any of the letters e
through g
in the input
mulesoft
, so it returns true
.
Source
%dw 2.0
output application/json
---
contains("mulesoft", /[e-g]/)
DataWeave
Output
true
JSON
Example
This example finds a match to /s[t|p]rin/
within "A very long string"
,
so it returns true
. The [t|p]
in the regex means t
or p
.
Source
%dw 2.0
output application/json
---
ContainsString: payload.root.mystring contains /s[t|p]rin/
DataWeave
Input
<?xml version="1.0" encoding="UTF-8"?>
<root><mystring>A very long string</mystring></root>
XML
Output
{ "ContainsString": true }
JSON
contains(text: Null, matcher: Any): false
Helper function that enables contains
to work with a null
value.
Introduced in DataWeave version 2.4.0.