您的位置:首页 > 编程语言 > Lua

Lua中分割字符串

2016-02-22 17:43 435 查看
function Split(szFullString, szSeparator)
local nFindStartIndex = 1
local nSplitIndex = 1
local nSplitArray = {}
while true do
local nFindLastIndex = string.find(szFullString, szSeparator, nFindStartIndex)
if not nFindLastIndex then
nSplitArray[nSplitIndex] = string.sub(szFullString, nFindStartIndex, string.len(szFullString))
break
end
nSplitArray[nSplitIndex] = string.sub(szFullString, nFindStartIndex, nFindLastIndex - 1)
nFindStartIndex = nFindLastIndex + string.len(szSeparator)
nSplitIndex = nSplitIndex + 1
end
return nSplitArray
end


第二种:

splitlist = {}
string.gsub(str, '[^,]+', function(w) table.insert(splitlist, w) end )


[^,] 除了逗号之外的任何字符

用法:

local list = Split("abc,123,345", ",")

然后list里面就是

abc

123

345

了。第二个参数可以是多个字符,但是不能是Lua正则表达式。例如. ,或者 %w 之类的。

增强版等以后再放出来吧,这个应该大部分够用了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: