Lua 中的上n级模块路径函数分享

--- 得到 lua 模块路径的上 n 级,返回的的字符串结尾有个 "." 字符
-- @usage getUpFloder("math.base.core", 2) --将返回 "math."
-- @string 想要处理的模块路径字符串
-- @int 向上 n 级,可选参数,默认为 1
local function getUpFloder(path, n)
    -- 错误检查
    path = path or ""
    n = n or 1
    assert(type(path) == "string", "传入的参数不是字符串类型!")

-- 找到文件夹的每一级
    local path_part = {}
    for w in string.gmatch(path, "%.?[^%.]+") do
        path_part[#path_part + 1] = w
    end

-- 生成需要的部分
    local new_path = ""
    for i = 1, #path_part - n do
        new_path = new_path .. path_part[i]
    end

-- 返回
    return new_path .. "."
end

欢迎指错,当然,如果你有更好的方法也请@我告诉我!

Lua 语言 15 分钟快速入门

Lua程序设计(第2版)中文 PDF

Lua程序设计(第二版)阅读笔记

NetBSD 将支持用 Lua 脚本开发内核组件

CentOS 编译安装 Lua LuaSocket

Programming In Lua 高清PDF中文版 

如何配置一套优雅的Lua开发环境 

Lua 的详细介绍请点这里
Lua 的下载地址请点这里

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/3ebfae2f48a23a83799b7287394f2fe6.html