使用模式匹配仅提取文件名。

能否使用 string.match 并返回直到最后一个 . 字符的捕获以停止在扩展名部分?

点赞
用户1009479
用户1009479
本地的str变量被初始化为"filename.lua.txt"
通过匹配,赋值给cap变量的是字符串中除了最后一个点及后面的内容的所有字符。
操作结果为"filename.lua"
该匹配的关键在于使用贪婪量词`+`,以及使用`%.`来表示文字`.`。
local str = "filename.lua.txt"
local cap = str:match("(.+)%..+")
print(cap)

输出结果:filename.lua

2013-09-19 00:37:23