4 метода перебора строки в Lua с примерами кода

Чтобы перебрать строку в Lua, вы можете использовать несколько методов. Вот несколько примеров:

Метод 1: использование длины строки и функции string.sub

local str = "Hello, World!"
for i = 1, #str do
    local char = string.sub(str, i, i)
    -- Do something with the character
    print(char)
end

Метод 2: использование функции string.gmatchс шаблоном

local str = "Hello, World!"
for char in string.gmatch(str, ".") do
    -- Do something with the character
    print(char)
end

Метод 3: преобразование строки в таблицу и перебор элементов

local str = "Hello, World!"
local chars = {}
-- Convert the string to a table of characters
for char in string.gmatch(str, ".") do
    table.insert(chars, char)
end
-- Iterate over the characters in the table
for i, char in ipairs(chars) do
    -- Do something with the character
    print(char)
end

Метод 4. Использование итератора utf8.codesдля поддержки Юникода

local str = "Hello, 世界!"
for _, codepoint in utf8.codes(str) do
    local char = utf8.char(codepoint)
    -- Do something with the character
    print(char)
end