LUA string库详解

LUA string库详解

ID:37711773

大小:30.50 KB

页数:4页

时间:2019-05-29

LUA string库详解_第1页
LUA string库详解_第2页
LUA string库详解_第3页
LUA string库详解_第4页
资源描述:

《LUA string库详解》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、http://hi.baidu.com/bidepan2023/blog/item/5f49bda4468e91f09052eedc.htmlLUAstring库详解2009-01-0918:33string.byte(s[,i])Returnstheinternalnumericalcodeofthei-thcharacterofs,orniliftheindexisoutofrange.Ifiisabsent,thenitisassumedtobe 1.imaybenegative.Notethatnumericalcodesarenotnecessarilyportableacross

2、platforms.string.char(i1,i2,...)Receives0ormoreintegers.Returnsastringwithlengthequaltothenumberofarguments,inwhicheachcharacterhastheinternalnumericalcodeequaltoitscorrespondentargument.Notethatnumericalcodesarenotnecessarilyportableacrossplatforms.1.string库中所有的字符索引从前往后是1,2,...;从后往前是-1,-2,...2.str

3、ing库中所有的function都不会直接操作字符串,而是返回一个结果s="[abc]"string.len(s)       <==返回5string.rep("abc",2)<==返回"abcabc"string.lower("ABC")<==返回"abc"string.upper("abc")<==返回"ABC"string.sub(s,2)    <==返回"abc]"string.sub(s,-2)   <==返回"c]"string.sub(s,2,-2)<==返回"abc"string.format(fmt,...)返回一个类似printf的格式化字符串string.find(

4、s,pattern,pos)第1个参数:源字符串第2个参数:待搜索之模式串第3个参数:Ahint,从pos位置开始搜索找到匹配返回:匹配串开始和结束的位置,否则返回nil简单的模式串s="helloworld"i,j=string.find(s,"hello")print(i,j)-->15print(string.sub(s,i,j))-->helloprint(string.find(s,"world"))-->711i,j=string.find(s,"l")print(i,j)-->33print(string.find(s,"lll"))-->nil格式化的模式串s="Deadli

5、neis30/05/1999,firm"date="%d%d/%d%d/%d%d%d%d"print(string.sub(s,string.find(s,date)))-->30/05/1999下面的表列出了Lua支持的所有字符类:.任意字符%s空白符%p标点字符%c控制字符%d数字%x十六进制数字%z代表0的字符%a字母%l小写字母%u大写字母%w字母和数字上面字符类的大写形式表示小写所代表的集合的补集。例如,'%A'非字母的字符:模式串中的特殊字符().%+-*?[^$'%'用作特殊字符的转义字符'%.'匹配点;'%%'匹配字符'%'。转义字符'%'不仅可以用来转义特殊字符,还可以用于

6、所有的非字母的字符。当对一个字符有疑问的时候,为安全起见请使用转义字符转义他。用'[]'创建字符集'[%w_]'匹配字母数字和下划线'[01]'匹配二进制数字'[%[%]]'匹配一对方括号在'[]'中使用连字符'-''%d'   表示'[0-9]';'%x'   表示'[0-9a-fA-F]''[0-7]'表示'[01234567]'在'[]'开始处使用'^'表示其补集:'[^0-7]'匹配任何不是八进制数字的字符;'[^]'匹配任何非换行符户的字符。'[^%s]'=='%S'模式修饰符+匹配前一字符1次或多次*匹配前一字符0次或多次;最长匹配-匹配前一字符0次或多次;最短匹配?匹配前一

7、字符0次或1次^匹配字符串开头$匹配字符串结尾捕获:用()将要捕获的部分包围起来pair="name=Anna"firstidx,lastidx,key,value=string.find(pair,"(%a+)%s*=%s*(%a+)")print(key,value)<==nameAnna拷贝捕获(%1-%9)s="abc"it'sacat""_,_,_,q=string.find(s,"(["'

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。