(adsbygoogle = window.adsbygoogle || []).push({});
我们在使用cocos2dx开发过程中经常会使用指定分隔符来分割字符串,并返回包含分割结果的数组,这里就介绍一种比较常用的方法
代码语言:javascript复制--------------------------------
-- 用指定字符或字符串分割输入字符串,返回包含分割结果的数组
-- @function [parent=#string] split
-- @param string input 输入字符串
-- @param string delimiter 分割标记字符或字符串
-- @return array#array 包含分割结果的数组
--[[--
用指定字符或字符串分割输入字符串,返回包含分割结果的数组
local input = "Hello,World"
local res = string.split(input, ",")
-- res = {"Hello", "World"}
local input = "Hello- -World- -Quick"
local res = string.split(input, "- -")
-- res = {"Hello", "World", "Quick"}
]]
function string.split(input, delimiter)
input = tostring(input)
delimiter = tostring(delimiter)
if (delimiter == '') then return false end
local pos, arr = 0, {}
-- for each divider found
for st, sp in function() return string.find(input, delimiter, pos, true) end do
table.insert(arr, string.sub(input, pos, st - 1))
pos = sp 1
end
table.insert(arr, string.sub(input, pos))
return arr
end