Text functions
Functions for formatting text values. These are commonly used in the labeling and popup profiles.
Concatenate
Concatenate(values?, separator?, format?) -> Text
Function bundle: Core
Concatenates values together and returns a text value.
Parameters
- values (Optional): Array<Text> - An array of text values to concatenate.
- separator (Optional): Text - Separator to use for concatenation if
values
parameter is an array. Or text to concatenate, if a single value is provided for the first parameter. If not provided will be empty. - format (Optional): Text - Formatting text for dates or numbers. This parameter is available in Arcade version 1.3 and later.
Possible values:0
: Digit#
: Digit, omitting leading/trailing zerosD
: Day of the month, not padded (1 - 31)DD
: Day of the month, padded (01 - 31)DDD
: Ordinal day of the year (1 - 365)d
: Day of the week (1 - 7)ddd
: Abbreviated day of the week (e.g. Mon)dddd
: Full day of the week (e.g. Monday)M
: Month number (1 - 12)MM
: Month number, padded (01 - 12)MMM
: Abbreviated month name (e.g. Jan)MMMM
: Full month name (e.g. January)m
: Minutes, not padded (0 - 59)mm
: Minutes, padded (00 - 59)Y
: Full yearYY
: Two-digit yearh
: Civilian hours, not padded (0 - 12)hh
: Civilian hours, padded (00 - 12)H
: Military hours, not padded (0 - 24)HH
: Military hours, padded (00 - 24)s
: Seconds, not padded (0 - 59)ss
: Seconds, padded (00 - 59)
Return value: Text
Example
prints 'red/blue/green'
Count
Count(value) -> Number
Function bundle: Core
Returns the number of characters in a text value.
Parameter
- value: Text - A text value on which to perform the operation.
Return value: Number
Example
Returns 13
Find
Find(searchText, targetText, startPosition?) -> Number
Function bundle: Core
Finds a sequence of characters within a text value. Wildcards are NOT supported. A returned value of -1
indicates no results were found.
Parameters
- searchText: Text - The text to search for.
- targetText: Text - The text to search.
- startPosition (Optional): Number - The zero-based index of the character in the text to search from.
Return value: Number
Example
prints 6
FromCharCode
FromCharCode(charCode1, [charCode2, ..., charCodeN]?) -> Text
Function bundle: Core
Returns a text value created from a sequence of UTF-16 character codes.
Parameters
- charCode1: Number - A number representing UTF-16 code units. Each unit has a range of 0-65535.
- [charCode2, ..., charCodeN] (Optional): Number - A sequence of numbers representing UTF-16 code units. Each unit has a range of 0-65535.
Return value: Text
Examples
The following example returns 'XYZ'
The following example returns '🌉'
FromCodePoint
FromCodePoint(codePoint1, [codePoint2, ..., codePoint1N]?) -> Text
Function bundle: Core
Returns a text value created from a sequence of UTF-32 code points.
Parameters
- codePoint1: Number - A code point.
- [codePoint2, ..., codePoint1N] (Optional): Number - A list of code points
Return value: Text
Examples
The following example returns 'XYZ'
The following example returns '🌉'
Guid
Guid(guidFormat?) -> Text
Function bundle: Core
Returns a random GUID as a text value.
Parameter
- guidFormat (Optional): Text - An named format for the GUID. The default value is
digits-hyphen-braces
.
Possible Values:digits
|digits-hyphen
|digits-hyphen-braces
|digits-hyphen-parentheses
Return value: Text
Examples
Returns a value similar to {db894515-ed21-4df1-af67-36232256f59a}
Returns a value similar to d00cf4dffb184caeb8ed105b2228c247
Left
Left(value, charCount) -> Text
Function bundle: Core
Returns the specified number of characters from the beginning of a text value.
Parameters
- value: Text - The value from which to get characters.
- charCount: Number - The number of characters to get from the beginning of the text.
Return value: Text
Example
prints 'the'
Lower
Lower(inputText) -> Text
Function bundle: Core
Makes a text value lower case.
Parameter
- inputText: Text - The text to be made lowercase.
Return value: Text
Example
prints 'hello'
Mid
Mid(value, startPosition, charCount?) -> Text
Function bundle: Core
Gets a number of characters from the middle of a text value.
Parameters
- value: Text - The value from which to get characters. If the value is not of type Text, the value is first converted to Text.
- startPosition: Number - The starting position from which to get the text. 0 is the first position.
- charCount (Optional): Number - The number of characters to extract. If omitted, extracts characters to the end of the Text
Return value: Text
Example
prints 'quick'
Proper
Proper(inputText, applyToText?) -> Text
Function bundle: Core
Converts a text value to title case. By default, the beginning of every word is capitalized. The option firstword
will capitalize only the first word.
Parameters
- inputText: Text - The text to convert to title case.
- applyToText (Optional): Text - A text value specifying the type of capitalization to be performed. By default every word is capitalized. This parameter accepts one of two values:
everyword
orfirstword
.
Return value: Text
Example
prints 'The Quick Brown Fox'
Replace
Replace(value, searchText, replacementText, allOccurrences?) -> Text
Function bundle: Core
Replaces characters within a text value. Defaults to replacing all occurrences.
Parameters
- value: Text - The text in which to make replacements.
- searchText: Text - The text to search for.
- replacementText: Text - The replacement text.
- allOccurrences (Optional): Boolean - Indicates if all occurrences of the
search
should be replaced in the text. Defaults toText true
.
Return value: Text
Example
prints 'the quick red fox'
Right
Right(value, charCount) -> Text
Function bundle: Core
Returns the specified number of characters from the end of a text value.
Parameters
- value: Text - The text from which to get characters.
- charCount: Number - The number of characters to get from the end of the text value.
Return value: Text
Example
prints 'fox'
Split
Split(inputText, separatorText, limit?, removeEmpty?) -> Array<Text>
Function bundle: Core
Splits a text value into an array.
Parameters
- inputText: Text - The text value to be split.
- separatorText: Text - The separator used to split the text.
- limit (Optional): Number - An integer that specifies the number of splits. The default is
-1
, which indicates an unlimited number of splits. - removeEmpty (Optional): Boolean - Indicates whether to remove empty values. By default this is
false
.
Examples
returns '[red,green]'
Splits the paragraph at each space an unlimited number of times. Returns an array of the words in the paragraph.
StandardizeGuid
StandardizeGuid(inputGuid, format) -> Text
Function bundle: Core
Returns a standardized, formatted GUID string.
Parameters
- inputGuid: Text - The input GUID in any format to standardize.
- format: Text - A named format for the GUID.
Possible Values:digits
|digits-hyphen
|digits-hyphen-braces
|digits-hyphen-parentheses
Return value: Text
Examples
Converts a GUID to digits
format
Converts a GUID to digits-hyphen
format
Text
Text(value, format?) -> Text
Function bundle: Core
Converts its argument into a text value and optionally formats it. Returns null
if it fails.
Parameters
- value: Any - A value to be converted to a text (e.g. date, number or other type). When a date is provided, this function assumes the date/time object is in UTC and automatically converts the value to the local time of the client executing the expression. If the date/time value returned from the database already represents local time, then you should use the
t
function to avoid applying an extra offset.o UTC - format (Optional): Text - Special formatting characters for dates or numbers.
Possible values:0
: Digit#
: Digit, omitting leading/trailing zerosD
: Day of the month, not padded (1 - 31)DD
: Day of the month, padded (01 - 31)DDD
: Ordinal day of the year (1 - 365)d
: Day of the week (1 - 7)ddd
: Abbreviated day of the week (e.g. Mon)dddd
: Full day of the week (e.g. Monday)M
: Month number (1 - 12)MM
: Month number, padded (01 - 12)MMM
: Abbreviated month name (e.g. Jan)MMMM
: Full month name (e.g. January)Y
: Full yearYY
: Two-digit yearh
: Civilian hours, not padded (0 - 12)hh
: Civilian hours, padded (00 - 12)H
: Military hours, not padded (0 - 24)HH
: Military hours, padded (00 - 24)m
: Minutes, not padded (0 - 59)mm
: Minutes, padded (00 - 59)s
: Seconds, not padded (0 - 59)ss
: Seconds, padded (00 - 59)A
: AM/PM
Return value: Text
Examples
Pad the number to the left of the decimal
Restrict the number to the left of the decimal
Group the number by thousands
Round the number to two decimal places
Format number as currency
Round the number to two decimal places
Maintain significant digits and group by thousands
Format the number and format positive/negative - if there is a negative subpattern, it serves only to specify the negative prefix and suffix
Multiply by 100 and format as percentage
Format date and time at the moment. eg 'Tuesday, October 25, 2016 @ 08:43:11'
Date stored in the datetime
field already represents local time, but Arcade assumes it is UTC. Offsets the local time to UTC to avoid applying the timezone offset twice.
ToCharCode
ToCharCode(inputText, index?) -> Number
Function bundle: Core
Returns a number between 0 and 65535 representing the UTF-16 code unit at the given index. Invalid halves of surrogate pairs are automatically removed.
Parameters
- inputText: Text - The text from which to get a UTF-16 code unit value.
- index (Optional): Number - An integer with a value of at least 0 and no greater than the number of characters of
input
. By default, this value is 0.Text
Return value: Number
Examples
The following example returns 88, the Unicode value for X.
The following example returns 89, the Unicode value for Y.
The following example returns 65535.
The following example returns 55356.
The following example returns 57097.
ToCodePoint
ToCodePoint(inputText, position?) -> Number
Function bundle: Core
Returns a non-negative number representing the UTF-32 code point value of the input text. If indexed into the first half of a surrogate pair, the whole code point is returned. If indexed into the second half of the pair, this function returns the value of the second half. If a large code isn't a valid character, the function returns only the value of the half it indexes into.
Parameters
- inputText: Text - The text from which to get a UTF-32 code point value.
- position (Optional): Number - Position of a character in
input
from which to return the code point value. By default this value is 0.Text
Return value: Number
Examples
The following example returns 88, the Unicode value for X.
The following example returns 89, the Unicode value for Y.
The following example returns 127753.
The following example returns 57097.
ToHex
ToHex(value) -> Text
Function bundle: Core
Converts an integer to a hexidecimal representation.
Parameter
- value: Number - The value to be converted to a hexidecimal value.
Return value: Text
Examples
Returns "64"
.
Returns the hexidecimal representation for the color royal blue, "#4169E1"
, from its RGB values
Trim
Trim(inputText) -> Text
Function bundle: Core
Removes spaces from the beginning or end of an input text value.
Parameter
- inputText: Text - The text to be trimmed.
Return value: Text
Example
prints 'hello world'
Upper
Upper(inputText) -> Text
Function bundle: Core
Makes text upper case.
Parameter
- inputText: Text - The text value to be made uppercase.
Return value: Text
Example
prints 'HELLO'
UrlEncode
UrlEncode(textOrDictionary) -> Text
Function bundle: Core
Encodes a URL by replacing each instance of certain characters by one, two, three, or four escape sequences representing the UTF-8 encoding of the character.
Parameter
- textOrDictionary: Text | Dictionary - The URL to be encoded.
Return value: Text
Example
Encodes the URL provided