在Lua中获取当前文件名

时间:2018-01-23 13:26:20

标签: lua filenames

如何获取没有路径的当前文件名和.lua?

我尝试过:

local info = debug.getinfo(1,'S');
print(info.source);

这就是我得到的:

@data/spells/scripts/10lvl/bakurichimacha.lua
@data/spells/scripts/1000lvl/brave sword attack.lua

如何删除这些部分:

@data/spells/scripts/10lvl/ and .lua
@data/spells/scripts/1000lvl/ and .lua

打印只是bakurichimacha和勇敢的剑攻击?

3 个答案:

答案 0 :(得分:3)

试试这个:

function get_file_name(file)
      return file:match("^.+/(.+)$")
end

答案 1 :(得分:1)

您可以使用string.match函数

aria-selected

答案 2 :(得分:0)

尽管在大多数情况下似乎可以接受@kingjulian答案,但对于无路径文件名参数,它却失败了。 例如。 aTestFile.lua等。

我对正则表达式做了一些修改,以包括这些遗漏的情况

df <- read.table(text = "E-mail         Phone      Name
mortena        3076       morten
kaspera        2688       kasper
christoffera   1212       christoffer
mortenb        3076       morten
mortena        3075       morten
kasperb        2688       kasper
christoffera   1213       christoffer", header = T)

经过测试的here

要获取除扩展名.lua之外的唯一文件名

function get_file_name(file)
      return file:match("[^/]*.lua$")
end