lua语言字符串转table

最近在用lua语言写一个工具,遇见了一个问题,获取到了str="1,2,3,4,5 " 这样的 字符串 ,想要将str转换成table进行处理,以下代码就可以实现,type(list) is table

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  



用法:

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

--然后list里面就是

abc
123
345

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

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容