Пошук та заміна тексту

Lua:
Пошук та заміна тексту

Як це зробити:

Lua дає можливість шукати та заміняти текст за допомогою шаблонів та функцій. Ось як це робити:

local text = "Привіт, світ! Доброго ранку, світ!"
local to_find = "світ"
local replace_with = "Всесвіт"

local result = text:gsub(to_find, replace_with)
print(result)  -- Виведе: "Привіт, Всесвіт! Доброго ранку, Всесвіт!"

Ще один приклад, якщо вам потрібно використовувати шаблони:

local text = "Ідентифікатори: #123, #456, #789"
local pattern = "#(%d+)"
local increment_id = function(id) return "#" .. (tonumber(id) + 1) end

local result = text:gsub(pattern, increment_id)
print(result)  -- Виведе: "Ідентифікатори: #124, #457, #790"

Поглиблений огляд

Пошук та заміна тексту в Lua реалізовані через функцію string.gsub. Історично, такі операції є основними для обробки тексту та маніпуляції даними. Lua використовує «шаблони», що є спрощеною версією регулярних виразів, зручних для перевірки, пошуку та маніпуляції рядками.

Більш складні пошукові вирази можуть бути реалізовані з використанням відповідних паттернів, які допускають спеціальні символи та квантифікатори для опису шаблонів. Наприклад, %d+ знайде одну або більше цифр.

Альтернативно, інші мови програмування пропонують регулярні вирази (regular expressions), які дають ще більш потужні можливості для пошуку та заміни тексту.

Ще кілька ресурсів