lua中字符分割和去掉某类字符
2015-07-28 11:03
615 查看
http://blog.csdn.net/dai_xiangjun/article/details/40383467
lua代码:
[plain] view
plaincopyprint?
![](https://oscdn.geek-share.com/Uploads/Images/Content/201611/a7c8e286f463007e2a900848b93dd72c.png)
![](https://oscdn.geek-share.com/Uploads/Images/Content/201611/9e12f1d3e499fc949c886e7c9e0484f9)
function LuaSplit(str,split)
local lcSubStrTab = {}
while true do
local lcPos = string.find(str,split)
if not lcPos then
lcSubStrTab[#lcSubStrTab+1] = str
break
end
local lcSubStr = string.sub(str,1,lcPos-1)
lcSubStrTab[#lcSubStrTab+1] = lcSubStr
str = string.sub(str,lcPos+1,#str)
end
return lcSubStrTab
end
[plain] view
plaincopyprint?
![](https://oscdn.geek-share.com/Uploads/Images/Content/201611/a7c8e286f463007e2a900848b93dd72c.png)
![](https://oscdn.geek-share.com/Uploads/Images/Content/201611/9e12f1d3e499fc949c886e7c9e0484f9)
local s = LuaSplit("11:22:33:44",":")
local i = 1
while true do
if s[i] then
print(s[i])
i = i+1
else
break
end
end
--[[
11
22
33
44
]]--
lua代码
[plain] view
plaincopyprint?
![](https://oscdn.geek-share.com/Uploads/Images/Content/201611/a7c8e286f463007e2a900848b93dd72c.png)
![](https://oscdn.geek-share.com/Uploads/Images/Content/201611/9e12f1d3e499fc949c886e7c9e0484f9)
function LuaReomve(str,remove)
local lcSubStrTab = {}
while true do
local lcPos = string.find(str,remove)
if not lcPos then
lcSubStrTab[#lcSubStrTab+1] = str
break
end
local lcSubStr = string.sub(str,1,lcPos-1)
lcSubStrTab[#lcSubStrTab+1] = lcSubStr
str = string.sub(str,lcPos+1,#str)
end
local lcMergeStr =""
local lci = 1
while true do
if lcSubStrTab[lci] then
lcMergeStr = lcMergeStr .. lcSubStrTab[lci]
lci = lci + 1
else
break
end
end
return lcMergeStr
end
[plain] view
plaincopyprint?
![](https://oscdn.geek-share.com/Uploads/Images/Content/201611/a7c8e286f463007e2a900848b93dd72c.png)
![](https://oscdn.geek-share.com/Uploads/Images/Content/201611/9e12f1d3e499fc949c886e7c9e0484f9)
local s = LuaReomve("11:22:33:44",":")
print(s)
--[[
11223344
]]--
1.lua 以某个字符分割字符串
lua代码:[plain] view
plaincopyprint?
![](https://oscdn.geek-share.com/Uploads/Images/Content/201611/a7c8e286f463007e2a900848b93dd72c.png)
function LuaSplit(str,split)
local lcSubStrTab = {}
while true do
local lcPos = string.find(str,split)
if not lcPos then
lcSubStrTab[#lcSubStrTab+1] = str
break
end
local lcSubStr = string.sub(str,1,lcPos-1)
lcSubStrTab[#lcSubStrTab+1] = lcSubStr
str = string.sub(str,lcPos+1,#str)
end
return lcSubStrTab
end
[plain] view
plaincopyprint?
![](https://oscdn.geek-share.com/Uploads/Images/Content/201611/a7c8e286f463007e2a900848b93dd72c.png)
local s = LuaSplit("11:22:33:44",":")
local i = 1
while true do
if s[i] then
print(s[i])
i = i+1
else
break
end
end
--[[
11
22
33
44
]]--
2.lua 去掉某个字符
lua代码[plain] view
plaincopyprint?
![](https://oscdn.geek-share.com/Uploads/Images/Content/201611/a7c8e286f463007e2a900848b93dd72c.png)
function LuaReomve(str,remove)
local lcSubStrTab = {}
while true do
local lcPos = string.find(str,remove)
if not lcPos then
lcSubStrTab[#lcSubStrTab+1] = str
break
end
local lcSubStr = string.sub(str,1,lcPos-1)
lcSubStrTab[#lcSubStrTab+1] = lcSubStr
str = string.sub(str,lcPos+1,#str)
end
local lcMergeStr =""
local lci = 1
while true do
if lcSubStrTab[lci] then
lcMergeStr = lcMergeStr .. lcSubStrTab[lci]
lci = lci + 1
else
break
end
end
return lcMergeStr
end
[plain] view
plaincopyprint?
![](https://oscdn.geek-share.com/Uploads/Images/Content/201611/a7c8e286f463007e2a900848b93dd72c.png)
local s = LuaReomve("11:22:33:44",":")
print(s)
--[[
11223344
]]--
相关文章推荐
- Lua实现的Base64编码
- lua中文字符串长度计算和截取
- scikit-learn:3.1. Cross-validation: evaluating estimator performance
- 正确lua简单的扩展,可以加速相关C++数据。
- scikit-learn:3. Model selection and evaluation
- 如何从wireshark中获取H264码流(原创)
- Lua与C++ 第六篇(Lua调用C++的函数)
- Lua与C++ 第五篇(C++调用Lua的函数)
- Lua与C++ 第四篇(获取Lua表结构数据)
- Lua与C++ 第三篇(简单解析Lua的堆栈)
- Lua与C++ 第二篇(demo讲解)
- Lua与C++ 第一篇
- Lua笔记4-变量,赋值,函数特点
- Lua笔记2-string类型
- Lua笔记5-Serialization
- Lua笔记3-table
- Evaluate Reverse Polish Notation
- Lua打印table
- LeetCode(150) Evaluate Reverse Polish Notation
- Lua简明入门实践(从"基"搞起)_(一)Lua集成开发环境