string.byte
S = "Текст";
string.byte(S, i); -- Возвращает числовой код символа в строке по индексу i
-- i (необязательный параметр) - начальный индекс (по умолчанию, 1)
S:byte(i); -- Эквивалентно
string.byte(S, 1); -- Вернет 210
string.byte(S, 2); -- Вернет 229
string.byte(S, 3); -- Вернет 234
string.byte(S, 4); -- Вернет 241
string.byte(S, 5); -- Вернет 242 |
S = "Текст";
string.byte(S, i); -- Возвращает числовой код символа в строке по индексу i
-- i (необязательный параметр) - начальный индекс (по умолчанию, 1)
S:byte(i); -- Эквивалентно
string.byte(S, 1); -- Вернет 210
string.byte(S, 2); -- Вернет 229
string.byte(S, 3); -- Вернет 234
string.byte(S, 4); -- Вернет 241
string.byte(S, 5); -- Вернет 242
string.char
string.char(n,...); -- Возвращает символы по числовым кодам, может принимать любое количество кодов через запятую
string.char(210); -- Вернет "Т"
string.char(210,229,234,241,242); -- Вернет "Текст" |
string.char(n,...); -- Возвращает символы по числовым кодам, может принимать любое количество кодов через запятую
string.char(210); -- Вернет "Т"
string.char(210,229,234,241,242); -- Вернет "Текст"
string.dump
string.dump(func); -- Возвращает двоичное представление функции func |
string.dump(func); -- Возвращает двоичное представление функции func
string.find
-- Ищет вхождение подстроки в строку и возвращает индекс начала вхождения, или nil, если совпадение не найдено
S = "Текст";
string.find(S,"екс"); -- Вернет 2
S:find("екс"); -- Эквивалентно
-- В строке поиска можно использовать регулярные выражения |
-- Ищет вхождение подстроки в строку и возвращает индекс начала вхождения, или nil, если совпадение не найдено
S = "Текст";
string.find(S,"екс"); -- Вернет 2
S:find("екс"); -- Эквивалентно
-- В строке поиска можно использовать регулярные выражения
string.format
-- Выводит отформатированную строку
string.format("quik%scsharp%s", "lua", ".ru"); -- Вернет строку "quikluacsharp.ru"
-- Поддерживаемые опции:
%a -- Шестнадцатеричное в виде 0xh.hhhhp+d (только С99)
%A -- Шестнадцатеричное в виде 0Xh.hhhhP+d (только С99)
%c -- Символ по коду
%d -- Десятичное целое со знаком
%i -- Десятичное целое со знаком
%e -- Экспоненциальное представление ('е' на нижнем регистре)
%E -- Экспоненциальное представление ('Е' на верхнем регистре)
%f -- Десятичное с плавающей точкой
%g -- В зависимости от того, какой вывод будет короче, используется %е или %f
%G -- В зависимости от того, какой вывод будет короче, используется %Е или %F
%o -- Восьмеричное без знака
%s -- Строка символов
%u -- Десятичное целое без знака
%x -- Шестнадцатеричное без знака (буквы на нижнем регистре)
%X -- Шестнадцатеричное без знака (буквы на верхнем регистре)
%p -- Выводит указатель
%n -- Аргумент, соответствующий этому спецификатору, должен быть указателем на целочисленную переменную. Спецификатор позволяет сохранить в этой переменной количество записанных символов (записанных до того места, в котором находится код %n)
%% -- Выводит знак % |
-- Выводит отформатированную строку
string.format("quik%scsharp%s", "lua", ".ru"); -- Вернет строку "quikluacsharp.ru"
-- Поддерживаемые опции:
%a -- Шестнадцатеричное в виде 0xh.hhhhp+d (только С99)
%A -- Шестнадцатеричное в виде 0Xh.hhhhP+d (только С99)
%c -- Символ по коду
%d -- Десятичное целое со знаком
%i -- Десятичное целое со знаком
%e -- Экспоненциальное представление ('е' на нижнем регистре)
%E -- Экспоненциальное представление ('Е' на верхнем регистре)
%f -- Десятичное с плавающей точкой
%g -- В зависимости от того, какой вывод будет короче, используется %е или %f
%G -- В зависимости от того, какой вывод будет короче, используется %Е или %F
%o -- Восьмеричное без знака
%s -- Строка символов
%u -- Десятичное целое без знака
%x -- Шестнадцатеричное без знака (буквы на нижнем регистре)
%X -- Шестнадцатеричное без знака (буквы на верхнем регистре)
%p -- Выводит указатель
%n -- Аргумент, соответствующий этому спецификатору, должен быть указателем на целочисленную переменную. Спецификатор позволяет сохранить в этой переменной количество записанных символов (записанных до того места, в котором находится код %n)
%% -- Выводит знак %
string.match
string.match (S, "шаблон", i); -- Ищет первое вхождение "шаблона" в строку S, при нахождении, возвращает совпадение, иначе nil
-- i (необязательный параметр) - указывает с какого по счету символа начинать поиск (по-умолчанию, 1)
S:match ("шаблон", i); -- Эквивалентно |
string.match (S, "шаблон", i); -- Ищет первое вхождение "шаблона" в строку S, при нахождении, возвращает совпадение, иначе nil
-- i (необязательный параметр) - указывает с какого по счету символа начинать поиск (по-умолчанию, 1)
S:match ("шаблон", i); -- Эквивалентно
string.gmatch
string.gmatch (S, "шаблон"); -- Возвращает итератор, который, при каждом вызове, возвращает следующее вхождение шаблона в S
S:gmatch("шаблон"); -- Эквивалентно
-- Пример:
Str = "Привет, Мир!";
for S in string.gmatch (Str, "р") do
-- какой-то код
end;
-- Данный цикл совершит 2 итерации, каждый раз помещая в переменную S букву "р" |
string.gmatch (S, "шаблон"); -- Возвращает итератор, который, при каждом вызове, возвращает следующее вхождение шаблона в S
S:gmatch("шаблон"); -- Эквивалентно
-- Пример:
Str = "Привет, Мир!";
for S in string.gmatch (Str, "р") do
-- какой-то код
end;
-- Данный цикл совершит 2 итерации, каждый раз помещая в переменную S букву "р"
string.gsub
string.gsub(S, "Шаблон поиска", "Шаблон замены", n); -- Возвращает копию S, в которой все вхождения "Шаблона поиска" заменяются на "Шаблон замены", который может быть строкой, таблицей или функцией, вторым значением возвращает общее количество проведенных подстановок
-- в "Шаблоне замены" символ % работает как символ со специальным назначением: любая последовательность в виде %n, где n от 1 до 9, заменяется на n-ную захваченную подстроку
-- n (необязательный параметр) - указывает сколько максимум раз можно сделать подстановку
S:gsub("Шаблон поиска", "Шаблон замены", n); -- Эквивалентно
-- Примеры:
string.gsub("Привет, Мир!", "Мир", "Lua"); -- Вернет "Привет, Lua!"
string.gsub("Привет, Мир!", "Мир", "%1%1"); -- Вернет "Привет, МирМир!" |
string.gsub(S, "Шаблон поиска", "Шаблон замены", n); -- Возвращает копию S, в которой все вхождения "Шаблона поиска" заменяются на "Шаблон замены", который может быть строкой, таблицей или функцией, вторым значением возвращает общее количество проведенных подстановок
-- в "Шаблоне замены" символ % работает как символ со специальным назначением: любая последовательность в виде %n, где n от 1 до 9, заменяется на n-ную захваченную подстроку
-- n (необязательный параметр) - указывает сколько максимум раз можно сделать подстановку
S:gsub("Шаблон поиска", "Шаблон замены", n); -- Эквивалентно
-- Примеры:
string.gsub("Привет, Мир!", "Мир", "Lua"); -- Вернет "Привет, Lua!"
string.gsub("Привет, Мир!", "Мир", "%1%1"); -- Вернет "Привет, МирМир!"
string.len
string.len(S); -- Возвращает длину строки S
S:len(); -- Эквивалентно
#S; -- Эквивалентно |
string.len(S); -- Возвращает длину строки S
S:len(); -- Эквивалентно
#S; -- Эквивалентно
string.upper
string.upper(S); -- Возвращает копию строки S, где все буквы в нижнем регистре заменены на буквы в верхнем регистре
S:upper(); -- Эквивалентно |
string.upper(S); -- Возвращает копию строки S, где все буквы в нижнем регистре заменены на буквы в верхнем регистре
S:upper(); -- Эквивалентно
string.lower
string.lower(S); -- Возвращает копию строки S, где все буквы в верхнем регистре заменены на буквы в нижнем регистре
S:lower(); -- Эквивалентно |
string.lower(S); -- Возвращает копию строки S, где все буквы в верхнем регистре заменены на буквы в нижнем регистре
S:lower(); -- Эквивалентно
string.rep
string.rep(S,n); -- Возвращает строку, которая содержит n копий строки S
S:rep(n); -- Эквивалентно |
string.rep(S,n); -- Возвращает строку, которая содержит n копий строки S
S:rep(n); -- Эквивалентно
string.reverse
string.reverse(S); -- Возвращает строку, в которой символы строки S расположены в обратном порядке
S:reverse(); -- Эквивалентно |
string.reverse(S); -- Возвращает строку, в которой символы строки S расположены в обратном порядке
S:reverse(); -- Эквивалентно
string.sub
string.sub(S, i, j); -- Возвращает подстроку строки S, которая начинается с символа с индексом i и заканчивается символом с индексом j
-- j (необязательный параметр) - по-умолчанию, индекс последнего символа
S:sub(i,j); -- Эквивалентно |
string.sub(S, i, j); -- Возвращает подстроку строки S, которая начинается с символа с индексом i и заканчивается символом с индексом j
-- j (необязательный параметр) - по-умолчанию, индекс последнего символа
S:sub(i,j); -- Эквивалентно
Поддерживаемые опции регулярных выражений:
. -- Любой символ
%a -- Буква (только англ.!)
%A -- Любая буква (русская), символ, или цифра, кроме английской буквы
%c -- Управляющий символ
%d -- Цифра
%D -- Любая буква, или символ, кроме цифры
%l -- Буква в нижней раскладке (только англ.!)
%L -- Любая буква, символ, или цифра, кроме английской буквы в нижней раскладке
%p -- Символ пунктуации
%P -- Любая буква, символ, или цифра, кроме символа пунктуации
%s -- Символ пробел
%S -- Любая буква, символ, или цифра, кроме символа пробела
%u -- Буква в верхней раскладке (только англ.!)
%U -- Любая буква, символ, или цифра, кроме английской буквы в верхней раскладке
%w -- Любая буква, или цифра (только англ.!)
%W -- Любой символ, или буква (русская), кроме английской буквы, или цифры
%x -- Шестнадцатеричное число
%X -- Любая буква, или символ, кроме цифры, или английской буквы, используемой в записи шестнадцатеричного числа
%z -- Строковые параметры, содержащие символы с кодом 0 |
. -- Любой символ
%a -- Буква (только англ.!)
%A -- Любая буква (русская), символ, или цифра, кроме английской буквы
%c -- Управляющий символ
%d -- Цифра
%D -- Любая буква, или символ, кроме цифры
%l -- Буква в нижней раскладке (только англ.!)
%L -- Любая буква, символ, или цифра, кроме английской буквы в нижней раскладке
%p -- Символ пунктуации
%P -- Любая буква, символ, или цифра, кроме символа пунктуации
%s -- Символ пробел
%S -- Любая буква, символ, или цифра, кроме символа пробела
%u -- Буква в верхней раскладке (только англ.!)
%U -- Любая буква, символ, или цифра, кроме английской буквы в верхней раскладке
%w -- Любая буква, или цифра (только англ.!)
%W -- Любой символ, или буква (русская), кроме английской буквы, или цифры
%x -- Шестнадцатеричное число
%X -- Любая буква, или символ, кроме цифры, или английской буквы, используемой в записи шестнадцатеричного числа
%z -- Строковые параметры, содержащие символы с кодом 0
Если у Вас появились какие-то вопросы, задайте их в комментариях под статьей !!!