Lua自己实现string.split功能
2016-06-17 15:10
423 查看
local function split(str, d) --str是需要查分的对象 d是分界符 local lst = { } local n = string.len(str)--长度 local start = 1 while start <= n do local i = string.find(str, d, start) -- find 'next' 0 if i == nil then table.insert(lst, string.sub(str, start, n)) break end table.insert(lst, string.sub(str, start, i-1)) if i == n then table.insert(lst, "") break end start = i + 1 end return lst end
另一种:用指定字符或字符串分割输入字符串,返回包含分割结果的数组:
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
相关文章推荐
- Lua中函数与面向对象编程的基础知识整理
- Lua的table库函数insert、remove、concat、sort详细介绍
- LUA string库详解
- Lua里实现将Table转为String输出,Debug神器
- “java.lang.IllegalArgumentException: Failed to evaluate expression ‘ROLE_USER’”报错的解决
- [leetcode] 【栈】150. Evaluate Reverse Polish Notation
- lua邮箱和手机号验证
- Lua学习笔记之字符串及模式匹配
- LeetCode:Evaluate Reverse Polish Notation
- lua加载动态库缺乏相应的系统库
- lua防止访问不存在的全局变量
- ios waxpatch lua语法
- lua常见异常 USE " cc.exports. = value " INSTEAD OF SET GLOBAL VARIABLE"
- How do you evaluate music?
- Android和Luaj之间互相传值的问题
- lua 闭包
- Metatable 对象默认的操作方式
- luajit 2.1beta2 bytecode windows mac 下32 64编译文件
- Lua学习笔记2:Windows7下使用VS2008搭建Lua开发环境(二)
- Lua学习笔记1:Windows7下使用VS2008搭建Lua开发环境(一)