是否有无模式的Lua string.find

是否有无模式的Lua string.find,string,lua,lua-patterns,String,Lua,Lua Patterns,我应用了一个函数,但看起来很糟糕 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方法提供了一个可选的第四个参数,可以自行强制执行 例如: string.fi

我应用了一个函数,但看起来很糟糕

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
方法提供了一个可选的第四个参数,可以自行强制执行

例如:

string.find("he#.*o", "e#.*o", 1, true)
将为您提供正确的结果

引用Lua手册页面:

string.find(s,pattern[,init[,plain]])

true
作为第四个可选参数
plain
关闭模式匹配功能,因此该函数执行简单的“查找子字符串”操作,模式中的任何字符都不被视为魔法。请注意,如果给出了
plain
,那么也必须给出
init


很好,原来我做了不必要的工作。我也编辑了你的答案,因为我已经删除了我的。