Tarantool CE/EE Documentation portal logo
Support
Updated at July 17, 2026   02:08 PM

Module string

Overview

The string module has everything in the standard Lua string library, and some Tarantool extensions.

In this section we only discuss the additional functions that the Tarantool developers have added.

Index

Below is a list of all additional string functions.

Name

Use

string.ljust()

Left-justify a string

string.rjust()

Right-justify a string

string.hex()

Given a string, return hexadecimal values

string.fromhex()

Given hexadecimal values, return a string

string.startswith()

Check if a string starts with a given substring

string.endswith()

Check if a string ends with a given substring

string.lstrip()

Remove characters from the left of a string

string.rstrip()

Remove characters from the right of a string

string.split()

Split a string into a table of strings

string.strip()

Remove spaces on the left and right of a string

ljust(input-string, width [, pad-character])

Return the string left-justified in a string of length width.

Parameters:

  • input-string (string) — the string to left-justify

  • width (integer) — the width of the string after left-justifying

  • pad-character (string) — a single character, default = 1 space

Return : left-justified string (unchanged if width <= string length)

Rtype : string

Example:

tarantool> string = require('string')---...tarantool> string.ljust(' A', 5)---- ' A   '...
Example

rjust(input-string, width [, pad-character])

Return the string right-justified in a string of length width.

Parameters:

  • input-string (string) — the string to right-justify

  • width (integer) — the width of the string after right-justifying

  • pad-character (string) — a single character, default = 1 space

Return : right-justified string (unchanged if width <= string length)

Rtype : string

Example:

tarantool> string = require('string')---...tarantool> string.rjust('', 5, 'X')---- 'XXXXX'...
Example

hex(input-string)

Return the hexadecimal value of the input string.

Parameters:

  • input-string (string) — the string to process

Return : hexadecimal, 2 hex-digit characters for each input character

Rtype : string

Example:

tarantool> string = require('string')---...tarantool> string.hex('ABC ')---- '41424320'...
Example

fromhex(hexadecimal-input-string)

Given a string containing pairs of hexadecimal digits, return a string with one byte for each pair. This is the reverse of string.hex(). The hexadecimal-input-string must contain an even number of hexadecimal digits.

Parameters:

  • hexadecimal-input-string (string) — string with pairs of hexadecimal digits

Return : string with one byte for each pair of hexadecimal digits

Rtype : string

Example:

tarantool> string = require('string')---...tarantool> string.fromhex('41424320')---- 'ABC '...
Example

startswith(input-string, start-string [, start-pos [, end-pos]])

Return True if input-string starts with start-string, otherwise return False.

Parameters:

  • input-string (string) — the string where start-string should be looked for

  • start-string (string) — the string to look for

  • start-pos (integer) — position: where to start looking within input-string

  • end-pos (integer) — position: where to end looking within input-string

Return : true or false

Rtype : boolean

start-pos and end-pos may be negative, meaning the position should be calculated from the end of the string.

Example:

tarantool> string = require('string')---...tarantool> string.startswith(' A', 'A', 2, 5)---- true...
Example

endswith(input-string, end-string [, start-pos [, end-pos]])

Return True if input-string ends with end-string, otherwise return False.

Parameters:

  • input-string (string) — the string where end-string should be looked for

  • end-string (string) — the string to look for

  • start-pos (integer) — position: where to start looking within input-string

  • end-pos (integer) — position: where to end looking within input-string

Return : true or false

Rtype : boolean

start-pos and end-pos may be negative, meaning the position should be calculated from the end of the string.

Example:

tarantool> string = require('string')---...tarantool> string.endswith('Baa', 'aa')---- true...
Example

lstrip(input-string [, list-of-characters])

Return the value of the input string, after removing characters on the left. The optional list-of-characters parameter is a set not a sequence, so string.lstrip(...,'ABC') does not mean strip 'ABC', it means strip 'A' or 'B' or 'C'.

Parameters:

  • input-string (string) — the string to process

  • list-of-characters (string) — what characters can be stripped. Default = space.

Return : result after stripping characters from input string

Rtype : string

Example:

tarantool> string = require('string')---...tarantool> string.lstrip(' ABC ')---- 'ABC '...
Example

rstrip(input-string [, list-of-characters])

Return the value of the input string, after removing characters on the right. The optional list-of-characters parameter is a set not a sequence, so string.rstrip(...,'ABC') does not mean strip 'ABC', it means strip 'A' or 'B' or 'C'.

Parameters:

  • input-string (string) — the string to process

  • list-of-characters (string) — what characters can be stripped. Default = space.

Return : result after stripping characters from input string

Rtype : string

Example:

tarantool> string = require('string')---...tarantool> string.rstrip(' ABC ')---- ' ABC'...
Example

split(input-string [, split-string[, max]])

Split input-string into one or more output strings in a table. The places to split are the places where split-string occurs.

Parameters:

  • input-string (string) — the string to split

  • split-string (string) — the string to find within input-string. Default = space.

  • max (integer) — maximum number of delimiters to process counting from the beginning of the input string. Result will contain max + 1 parts maximum.

Return : table of strings that were split from input-string

Rtype : table

Example:

tarantool> string = require('string')---...tarantool> string.split("A:B:C:D:F", ":", 2)---- - A  - B  - C:D:F...
Example

strip(input-string [, list-of-characters])

Return the value of the input string, after removing characters on the left and the right. The optional list-of-characters parameter is a set not a sequence, so string.strip(...,'ABC') does not mean strip 'ABC', it means strip 'A' or 'B' or 'C'.

Parameters:

  • input-string (string) — the string to process

  • list-of-characters (string) — what characters can be stripped. Default = space.

Return : result after stripping characters from input string

Rtype : string

Example:

tarantool> string = require('string')---...tarantool> string.strip(' ABC ')---- ABC...
Example