您的位置:首页 > 编程语言 > Lua

【Lua学习笔记】 --> 《字符串string与table的函数操作》

2016-02-12 23:07 736 查看

字符串string的函数操作

string.upper(argument); -- 字符串全部转为大写字母并返回
string.lower(argument); -- 字符串全部转为小写字母并返回



string.gsub(mainStirng, findString, replaceString, num); -- 将mainString所有的findString都替换为replaceString,num表示替换次数,如果只够替换一次,则只替换一次



string.find(s, substr, [init, [end]]); -- 在s中寻找substr,如果找到,返回substr开始和结束位置,如果没有找到返回nil。第三个可选参数表示从哪里开始搜索。



init值并不影响substr的位置,比如上图的第二个例子,"r" 原来在 "helloworld" 的第 8 个位置,即使从第三个位置开始搜索,它依旧返回8

string.reverse(arg); -- 反转字符串并返回



string.len(str); -- 计算字符串str的长度



string.rep(str, num); -- 返回字符串str的 num个拷贝



string.char(arg1, arg2, ...); -- char函数根据ASCII码, 将参数arg转换为对应的字符并返回,如果有多个参数,则将它们都转为对应的ASCII字符并连接后返回



string.byte(arg[, init]); -- byte() 转换字符为整数,可指定一个位置init,默认为1 ( -1表示最后一个,-2表示倒数第二个,依此类推)



string.sub(str, start, end); -- 函数返回指定字符串的子串,start为开始位置,end为结束位置,start也可以为负数,表示倒数第几个位置,end默认为最后一个



string.format(...); -- 返回一个类似C语言printf函数的格式化字符串



比如:



这个例子表示了format函数有连接字符串的功能。

format函数主要功能是根据参数格式化输出复杂的字符串:



格式是一种模板,让Lua可以从字符串中过滤出有意义的结果:



table的函数操作

table.concat(list [, sep [, start [, end ]]]); -- 在list中,从start开始到end,用sep作为间隔,将它们连接起来并返回。sep默认为空的string,start默认为1,end默认为#list



table.insert(list, [pos, ] value); -- 在指定位置pos处插入一个元素value, pos为可选参数,默认为数组末尾。



table.remove(list [, pos]); -- 移除数组list中pos位置处的元素,返回移除的元素,pos默认为#list



table.sort(list [, comp]); -- 将数组list排序,comp必须是一个接受两个参数数组元素的function,function返回值为true,用来比较数组参数元素。sort函数默认使用 "<" 来排序



更多的、更高级的table操作在后面会有更新~
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: