lua 中的上n級模組路徑函式分享

2022-01-12 19:38:42 字數 728 閱讀 8221

--

- 得到 lua 模組路徑的上 n 級,返回的的字串結尾有個 "." 字元

--@usage getupfloder("math.base.core", 2) --將返回 "math."

--@string 想要處理的模組路徑字串

--@int 向上 n 級,可選引數,預設為 1

local

function

getupfloder(path, n)

--錯誤檢查

path = path or

""n = n or

1assert(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中的模組

從lua 5.1開始,我們可以使用require和module函式來獲取和建立lua中的模組。從使用者的角度來看,乙個模組就是乙個程式庫,可以通過require來載入,之後便得到乙個型別為table的全域性變數。此時的table就像名字空間一樣,可以訪問其中的函式和常量,如 1 require mo...

Lua的使用入門之在C 程式中呼叫lua函式1

學習lua將近半個月了,以前也了解過,只是沒有實際運用的環境。現在將自己這半個月來的心得寫下來。首先,要想在c 程式中作用lua指令碼,必須包含相應的lua標頭檔案,extern c 因為lua是基於c的,所以要使變數和 函式按照c語言方式編譯和連線 在你的編譯環境中要包含lua的標頭檔案,我的是l...

XLua框架學習(三)C 訪問Lua中的全域性函式

function add print add endusing xlua luaenv luaenv newluaenv luaenv.dostring require csharpcalllua 需要先將lua指令碼載入進來 action add1 luaenv.global.get action...