Question

Is it possible to use string.match and return a capture until the last . character to stop at the extension part?

Was it helpful?

Solution

local str = "filename.lua.txt"
local cap = str:match("(.+)%..+")
print(cap)

Output: filename.lua

The key in this pattern is the greediness of + and to use %. to represent the literal .

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top