首先自然是字符串的表达
在lua里面表示字符串一般是这三个表达方式
string1= "hello lua" //使用双引号表示
string2 = ‘ hello your monther’ //使用单引号表示
string3 = [[hello you **]] //使用双括号表示
那么双引号怎么表示呢,和c一样运算符重载(这个说法可能有歧义),
eg:
>print( " \" 水光潋滟晴方好\" " )
>"水光潋滟晴方好"
> //或者使用[[]] 括起来的所有元素都是会显示的
> string1 = [["山色空蒙雨益奇"]]
> print(string)
> “山色空蒙雨益奇”
下面就介绍一些常用函数
> string.upper( sting1 ) //吧string1变成大写字符串
> string.lower( sting1 ) //吧string1变成小写字符串
> string.gsub ( mainString ,findString , RepalceString , num )//替换
// mianString我们要修改的字符串 ,findString我们要替换的string
// ReplaceString我们替换成的string, num 我们替换从次数
// 返回值是替换后的字符串 以及替换次数
> string.find( mainString , targetString , num ) //搜索指定内容,以及其具体位置,不存在返回nil
// mainString 被搜索的字符串,targetString 收缩内容 , num 为索引相当于搜索的起始位置
// 返回值为起始位置和结束位置
> string.reverse( string ) //字符串反转
> string.format("the value is ::%d",7) //返回一个类似c语言里面print的输出语句f
> string.char( arg ) 和 string.byte ( arg , num )
// 转化类型,后面那个转化int可选,类似下表指定转化哪一个,不填默认第一个
> string.len(string) //返回字符串长度
>string.rep(string,num) //将字符串拷贝num次并返回
>string.gmatch(str,pattern) // 在str里面找到符合pattern的目标字符串,并返回
// 后面会有对patern的详细说明
> string.match(sting , pattern ,init)//init索引起始位置可不选
// string 里面的按照要求的第一个字符串
>string.sub(str,i,j) //字符串截取
// str目标 i开始,j结束,j可不选
string.gsub
string.find
string.format
string.char & string.byte
string.rep
string.gmatch
字符串格式化
string.match
string.sub
最后写一个匹配模式来会在那个一下lua的sring。
> s = "deadline is 04/12/2020,sun"
> date = "%d%d/%d%d/%d%d%d%d"
> print(string.sub(s,string.find(s,date)))
04/12/2020