在java中,很容易使用正则表达式将一个字符串分割,下面使用Lua实现spilt函数
方法一:
local spilt=function (str,pattern) local ret={}; local _pattern= "[^"..pattern.. "]+"; for s in string.gfind(str,_pattern) do table.insert(ret,s); end return ret; end
方法二:
local spilt = function(str,pattern) local ret= {} string.gsub(str, "[^".. pattern .."]+", function(item) table.insert(ret, item) end ) return ret; end
local a="a.zip;b.zip"; local f=spilt(a,";"); for _, s in ipairs(f) do print(s) end
a.zip
b.zip
注意:lua可能因为库版本的问题,gsub不能用时改为gmatch即可