【步兵 lua】匹配模式 之 花式split
2016-06-13 10:55
344 查看
【步兵 lua】匹配模式 之 花式split by EOS.
练习匹配模式自己写的一些东西,拿出来分享一下,希望对大家有帮助=。=代码
local str = "a/b/c/d//e" print"\nsplit first:" local iter = string.gmatch(str, "[^/]+") for v in iter do print(v, type(v)) end print"\nsplit second:" local iter = string.gmatch(str, "(.-)/") local last = string.match(str, ".*/(.*)") for v in iter do print(v, type(v)) end print(last, type(last)) print"\nsplit third:" local str2 = string.gsub(str, "(//)",function(p1) if(p1 == "")then p1 = "nil"end return "/nil/" end) for v in string.gmatch(str2, "[^/]+") do print(v, type(v)) end print"\nsplit fourth:" local str2 = string.gsub(str, "(.-)/",function(p1, p2) if(p1 == "")then p1 = "nil"end return p1.."/" end) for v in string.gmatch(str2, "[^/]+") do print(v, type(v)) end print"\nsplit fifth:" local str2 = str local arr = {} while true do local b,e = string.find(str2, "/") if b == nil then table.insert(arr, str2) break end table.insert(arr, string.sub(str2, 1, e-1)) str2 = string.sub(str2, e+1, -1) end for k,v in ipairs(arr) do print(v, type(v)) end print"\nsplit sixth:" local arr = {} local str2 = str while string.find(str2, "/") do arr[#arr+1] = string.match(str2, "(.-)/") str2 = string.gsub(str2, "(.-)/", "", 1) end arr[#arr+1] = str2 for k,v in pairs(arr) do print(v, type(v)) end
输出
上班ING,偷偷上传的。。 = 3= 干活去了
See Again~
之前
真爱无价,欢迎打赏~
相关文章推荐
- PreparedStatement中in子句的处理
- 详解Lua中的表的概念及其相关操作方法
- Lua编程示例(二):面向对象、metatable对表进行扩展
- ASP 中 Split 函数的实例分析
- 把Lua编译进nginx步骤方法
- Lua脚本自动生成APK包
- Lua中的元表(metatable)、元方法(metamethod)详解
- Lua中的metatable介绍
- Lua中ipair和pair的区别
- Lua中的函数精讲笔记
- 浅谈Lua的面向对象特性
- 详解Lua中的变量相关知识点
- Lua脚本语言入门笔记
- Lua脚本调用外部脚本
- 详解Lua中的if语句的使用方法
- Lua中调用函数使用点号和冒号的区别
- Lua中的闭合函数、非全局函数与函数的尾调用详解
- Lua中强大的元方法__index详解
- Lua中调用C++函数示例
- Lua面向对象之类和继承浅析