Tinderbox v9 Icon


Operator Type: 

Operator Scope of Action: 

Operator Purpose: 

Operator First Added: 

Operator Altered: 

 Function   [other Function type actions]

 Item   [operators of similar scope]

 Data manipulation   [other Data manipulation operators]




This operator allows extraction of a substring from a string attribute. The source string is not affected.


returns the substring of $MyString beginning startN characters from the beginning. The numbers for startN and lengthN are 0-based. i.e. zero is character position #1. A negative startN value counts back from the end of the string .Negative values are 1-based, i.e. the -1 represents the last character in the string.

In the examples below assume $MyString's value is "Hello World". Examples:

$MyString = "abcde".substr(2); returns "cde"

$MyString = "abcde".substr(-2); returns "de"

$MyString = $MyString.substr(6); returns "World"

If the string does not contain at least startN characters, the empty string is returned.

A second argument lengthN specifies the length of the returned string. If unspecified, the entire remaining string is returned.

$MyString = "abcde".substr(2,2); returns "cd"

$MyString = "abcde".substr(-3,2); returns "cd"

$MyString = $MyString.substr(0,5); returns "Hello"

If the length of the substring is negative, it is treated as an offset from the end of the string.

$MyString = "Hello".substr(1,-1); → "ell"

Besides strings and string literals, this operator can also be used on other attribute data types that are string-like, URL, File, etc. Although the operator also works on lists/sets, the source data is all the values as a single semi-colon-joined string literal so there is less point in its use in this context.

This function respects existing rich text styling.

Trimming leading/trailing quotes

See String.trim().