24 lines
621 B
Lua
24 lines
621 B
Lua
---Looks for the last match of pattern in the string.
|
|
---@param s string
|
|
---@param pattern string
|
|
---@param init? integer
|
|
---@param plain? boolean
|
|
function string.rfind(s, pattern, init, plain)
|
|
pattern = pattern:reverse()
|
|
return s:len() - s:reverse():find(pattern, init, plain) + 1
|
|
end
|
|
|
|
---Split string into list
|
|
---@param s string
|
|
---@param delimiter? string # default " "
|
|
---@return string[]
|
|
function string.split(s, delimiter)
|
|
delimiter = delimiter or " "
|
|
|
|
local result = {}
|
|
for match in (s..delimiter):gmatch("(.-)"..delimiter) do
|
|
table.insert(result, match)
|
|
end
|
|
return result
|
|
end
|