This module contains helper functions to work with Strings.

To use this module, you must import it to your DataWeave code, for example, by adding the line import * from dw::core::Strings to the header of your DataWeave script.

Functions

camelize

camelize(String): String

Returns a string in camel case based on underscores in the string.

Parameters

Name Description

text

The string to convert to camel case.

Example

This example converts a string that contains underscores to camel case.

Source

1
2
3
4
5
%dw 2.0
import * from dw::core::Strings
output application/json
---
{ "camelize" : camelize("customer_first_name") }

Output

1
{ "camelize" : "customerFirstName" }

camelize(Null): Null

Helper function that allows camelize to work with null values.

capitalize

capitalize(String): String

Capitalizes the first letter of each word in a string.

It also removes underscores between words and puts a space before each capitalized word.

Parameters

Name Description

text

The string to capitalize.

Example

This example capitalizes a set of strings.

Source

1
2
3
4
5
6
7
8
9
10
%dw 2.0
import * from dw::core::Strings
output application/json
---
{
  "a" : capitalize("customer"),
  "b" : capitalize("customer_first_name"),
  "c" : capitalize("customer NAME"),
  "d" : capitalize("customerName")
}

Output

1
2
3
4
5
6
{
  "a": "Customer",
  "b": "Customer First Name",
  "c": "Customer Name",
  "d": "Customer Name"
}

capitalize(Null): Null

Helper function that allows capitalize to work with null values.

charCode

charCode(String): Number

Returns the unicode for the first character in an input string.

For an empty string, the function fails and returns Unexpected empty string.

Parameters

Name Description

text

The input string.

Example

This example returns unicode for the "M" in "Mule".

Source

1
2
3
4
5
6
7
%dw 2.0
import * from dw::core::Strings
output application/json
---
{
  "charCode" : charCode("Mule")
}

Output

1
{ "charCode" : 77 }

charCodeAt

charCodeAt(String, Number): Number

Returns the Unicode for a character at the specified index.

This function fails if the index is invalid.

Parameters

Name Description

content

The input string.

position

The index (a Number type) of a character in the string (as a string array). Note that the index of the first character is 0.

Example

This example returns Unicode for the "u" at index 1 in "MuleSoft".

Source

1
2
3
4
5
6
7
%dw 2.0
import * from dw::core::Strings
output application/json
---
{
  "charCodeAt" : charCodeAt("MuleSoft", 1)
}

Output

1
{ "charCodeAt": 117 }

dasherize

dasherize(String): String

Replaces spaces, underscores, and camel-casing in a string with dashes (hyphens).

If no spaces, underscores, and camel-casing are present, the output will match the input.

Parameters

Name Description

text

The input string.

Example

This example replaces the spaces, underscores, and camel-casing in the input. Notice that the input "customer" is not modified in the output.

Source

1
2
3
4
5
6
{
  "a" : dasherize("customer"),
  "b" : dasherize("customer_first_name"),
  "c" : dasherize("customer NAME"),
  "d" : dasherize("customerName")
}

Output

1
2
3
4
5
6
{
  "a": "customer",
  "b": "customer-first-name",
  "c": "customer-name",
  "d": "customer-name"
}

dasherize(Null): Null

Helper function that allows dasherize to work with null values.

fromCharCode

fromCharCode(Number): String

Returns a character that matches the input unicode.

Parameters

Name Description

charCode

The input unicode (a Number).

Example

This example inputs the unicode number 117 to return the character "u".

Source

1
2
3
4
5
6
7
%dw 2.0
import * from dw::core::Strings
output application/json
---
{
  "fromCharCode" : fromCharCode(117)
}

Output

1
{ "fromCharCode": "u" }

ordinalize

ordinalize(Number): String

Returns a number as an ordinal, such as 1st or 2nd.

Parameters

Name Description

num

An input number to return as an ordinal.

Example

This example returns a variety of input numbers as ordinals.

Source

1
2
3
4
5
6
7
8
9
10
%dw 2.0
import * from dw::core::Strings
output application/json
---
{
  "a" : ordinalize(1),
  "b": ordinalize(2),
  "c": ordinalize(5),
  "d": ordinalize(103)
}

Output

1
2
3
4
5
6
{
   "a": "1st",
   "b": "2nd",
   "c": "5th",
   "d": "103rd"
}

ordinalize(Null): Null

Helper function that allows ordinalize to work with null values.

pluralize

pluralize(String): String

Pluralizes a singular string.

If the input is already plural (for example, "boxes"), the output will match the input.

Parameters

Name Description

text

The string to pluralize.

Example

This example pluralizes the input string "box" to return "boxes".

Source

1
2
3
4
5
%dw 2.0
import * from dw::core::Strings
output application/json
---
 { "pluralize" : pluralize("box") }

Output

1
{ "pluralize" : "boxes" }

pluralize(Null): Null

Helper function that allows pluralize to work with null values.

singularize

singularize(String): String

Converts a plural string to its singular form.

If the input is already singular (for example, "box"), the output will match the input.

Parameters

Name Description

text

The string to convert to singular form.

Example

This example converts the input string "boxes" to return "box".

Source

1
2
3
4
5
%dw 2.0
import * from dw::core::Strings
output application/json
---
{ "singularize" : singularize("boxes") }

Output

1
{ "singularize" : "box" }

singularize(Null): Null

Helper function that allows singularize to work with null values.

underscore

underscore(String): String

Replaces hyphens, spaces, and camel-casing in a string with underscores.

If no hyphens, spaces, and camel-casing are present, the output will match the input.

Parameters

Name Description

text

The input string.

Example

This example replaces the hyphens and spaces in the input. Notice that the input "customer" is not modified in the output.

Source

1
2
3
4
5
6
{
   "a" : underscore("customer"),
   "b" : underscore("customer-first-name"),
   "c" : underscore("customer NAME"),
   "d" : underscore("customerName")
}

Output

1
2
3
4
5
6
{
   "a": "customer",
   "b": "customer_first_name",
   "c": "customer_name",
   "d": "customer_name"
}

underscore(Null): Null

Helper function that allows underscore to work with null values.