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
|