Версия:

Модуль string

Модуль string

Общие сведения

Модуль string включает в себя всё из стандартной библиотеки для работы со строками в Lua, а также некоторые расширения специально для Tarantool’а.

В данном разделе мы рассматриваем только дополнительные функции, добавленные разработчиками Tarantool’а.

Ниже приведен перечень всех функций библиотеки string.

Имя Использование
string.ljust() Выравнивание строки по левому полю
string.rjust() Выравнивание строки по правому полю
string.hex() Получение шестнадцатеричного значения строки
string.startswith() Проверка, начинается ли строка с заданной подстроки
string.endswith() Проверка, заканчивается ли строка на заданную подстроку
string.lstrip() Удаление пробелов слева от строки
string.rstrip() Удаление пробелов справа от строки
string.strip() Удаление пробелов слева и справа от строки
string.ljust(input-string, width[, pad-character])

Возврат строки, выровненной по левому краю, шириной, указанной в width.

Параметры:
  • input-string – (строка) строка для выравнивания по левому краю
  • width – (целое число) ширина строки после выравнивания по левому краю
  • pad-character – (строка) отдельный символ, по умолчанию = 1 пробел
Возвращается:

выровненная по левому краю строка (не изменяется, если ширина <= длине строки)

Тип возвращаемого значения:
 

string (строка)

Пример:

tarantool> string = require('string')
 ---
 ...
 tarantool> string.ljust(' A', 5)
 ---
 - ' A   '
 ...
string.rjust(input-string, width[, pad-character])

Возврат строки, выровненной по правому краю, шириной, указанной в width.

Параметры:
  • input-string – (строка) строка для выравнивания по правому краю
  • width – (целое число) ширина строки после выравнивания по правому краю
  • pad-character – (строка) отдельный символ, по умолчанию = 1 пробел
Возвращается:

выровненная по правому краю строка (не изменяется, если ширина <= длине строки)

Тип возвращаемого значения:
 

string (строка)

Пример:

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

Возврат шестнадцатеричного значения введенной строки.

Параметры:
  • input-string – (строка) обрабатываемая строка
Возвращается:

шестнадцатеричное число, два символа шестнадцатеричных цифр для каждого введенного символа

Тип возвращаемого значения:
 

string (строка)

Пример:

tarantool> string = require('string')
 ---
 ...
 tarantool> string.hex('ABC ')
 ---
 - '41424320'
 ...
string.startswith(input-string, start-string[, start-pos[, end-pos]])

Возврат true (правда), если input-string начинается со start-string, в противном случае, возврат false (ложь).

Параметры:
  • input-string – (строка) строка, где производится поиск данных из start-string
  • start-string – (строка) искомая строка
  • start-pos – (целое число) положение: где начинать искать в пределах input-string
  • end-pos – (целое число) положение: где заканчивать искать в пределах input-string
Возвращается:

true или false

Тип возвращаемого значения:
 

boolean (логический)

Значения start-pos и end-pos могут быть отрицательными, что означает, что положение вычисляется с конца строки.

Пример:

tarantool> string = require('string')
 ---
 ...
 tarantool> string.startswith(' A', 'A', 2, 5)
 ---
 - true
 ...
string.endswith(input-string, end-string[, start-pos[, end-pos]])

Возврат true (правда), если input-string заканчивается на end-string, в противном случае, возврат false (ложь).

Параметры:
  • input-string – (строка) строка, где производится поиск данных из end-string
  • end-string – (строка) искомая строка
  • start-pos – (целое число) положение: где начинать искать в пределах input-string
  • end-pos – (целое число) положение: где заканчивать искать в пределах input-string
Возвращается:

true или false

Тип возвращаемого значения:
 

boolean (логический)

Значения start-pos и end-pos могут быть отрицательными, что означает, что положение вычисляется с конца строки.

Пример:

tarantool> string = require('string')
 ---
 ...
 tarantool> string.endswith('Baa', 'aa')
 ---
 - true
 ...
string.split(input-string[, split-string])

Разделение input-string на одну или более выводимых строк в таблице. Места разделения указаны в split-string.

Параметры:
  • input-string – (строка) строка для разделения
  • split-string – (строка) искомая строка в пределах input-string. По умолчанию = пробел.
Возвращается:

таблица строк, которые были разделены из input-string

Тип возвращаемого значения:
 

таблица

Пример:

tarantool> fiber = require('string')
 ---
 ...
 tarantool> string.split("A*BXX C", "XX")
 ---
 - - A*B
   - ' C'
 ...
string.lstrip(input-string)

Возврат значения введенной строки без пробелов слева.

Параметры:
  • input-string – (строка) обрабатываемая строка
Возвращается:

результат после удаления пробелов из введенной строки

Тип возвращаемого значения:
 

string (строка)

Пример:

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

Возврат значения введенной строки без пробелов справа.

Параметры:
  • input-string – (строка) обрабатываемая строка
Возвращается:

результат после удаления пробелов из введенной строки

Тип возвращаемого значения:
 

string (строка)

Пример:

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

Возврат значения введенной строки без пробелов слева или справа.

Параметры:
  • input-string – (строка) обрабатываемая строка
Возвращается:

результат после удаления пробелов из введенной строки

Тип возвращаемого значения:
 

string (строка)

Пример:

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