Я применяю функцию, но выглядит так плохо.
function find_without_pattern(s1,s2)
for i =1,#s1-#s2+1 do
local t = string.sub(s1,i,#s2+i-1)
if t == s2 then
return i,i+#s2-1
end
end
end
Я применяю функцию, но выглядит так плохо.
function find_without_pattern(s1,s2)
for i =1,#s1-#s2+1 do
local t = string.sub(s1,i,#s2+i-1)
if t == s2 then
return i,i+#s2-1
end
end
end
Метод string.find
предоставляет необязательный 4-й параметр для принудительного поиска открытого текста.
Например:
string.find("he#.*o", "e#.*o", 1, true)
даст вам правильные результаты.
Цитирование справочных страниц Lua:
string.find (s, pattern [, init [, plain]])
Значение
true
в качестве четвертого необязательного аргументаplain
отключает средства сопоставления с шаблоном, поэтому функция выполняет простую операцию «найти подстроку», при этом никакие символы в шаблоне не считаются магическими. Обратите внимание, что если указаноplain
, то также должно быть указаноinit
.