Lua的字符串

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/DY_1024/article/details/81254467

Lua里面的字符串是由:字母、数字、下划线组成的一串字符,有下面三种组成方式:

由单引号括起来:' this is a string'

由双引号括起来: " this is a string"

如果字符串太长的话,可以由两个中括号括起来:[[ Hello,Welcome to Lua study],this is a string]

当我们将这三个字符串都输出的时候:

string1 = 'this is string1'
string2 = "this is string2"
string3 = [[ Hello Welcome to Lua study,this is a string ]]
print(string1)
print(string2)
print(string3)

输出结果:

Lua里面有一种最简单的字符串连接:“..”

使用两个点来连接字符串:

print("Hello ".."Lua user")

输出结果:

字符串的类型就是:string类型,在Lua中,为string类型提供很多操作字符串的接口,来供我们使用,在Lua中使用字符串主要的就是使用这些接口。

表格中使用的string1,string2,string3就是我们在第一个输出结果里面定义的字符串

将字符串变成全大写

string.upper()

print(string.upper(string1))    输出结果>>THIS IS STRING1

将字符串变成全小写

string.lower()

print(string.lower(string2))    输出结果>>this is string2

将指定的字符串替换成指定的部分

string.gsub(mainString,findString,replaceString,num)

mainString:要替换的字符串

findString:需要替换的字符

replaceString:替换成这个参数所传的字符

num:替换的次数

eg:print(string.gsub(string1,"s","Q",2))

输出结果:thiQ iQ string1          2

在目标字符串当中寻找指定的字符串

string.find (str, substr, [init, [end]])

str:目标字符串

substr:需要查找的字符串

最后一个参数可以吧他当做索引:我们传1

eg:print(    string.find (string1, "is", 1))

输出结果:3          4

字符串的反转

string.reverse(arg)

eg:print(string.reverse(string1))
输出结果:1gnirts si siht

按照一定的格式输出字符串

string.format(...)

eg:

print(    string.format("this is a value : %d",4))

输出结果:this is a value : 4

将整数转化成字符并连接

string.char()

eg:print(string.char(97,98,99,100))

输出结果;abcd

将指定位置的字符转化成对应的指数

string.byte(mainstring,index)

eg:print(string.byte("abcd",4))

输出结果:100

计算字符串的长度

string.len(arg)

eg:print(string.len(string1))

输出结果:15

返回字符串的n个拷贝

string.rep(string, n)

eg:print(    string.rep(string1, 2))

输出结果:this is string1this is string1

返回字符串中符合描述的字符

string.gmatch(str,pattern)

str:目标字符串

pattern:希望在str里面能找到的符合pattern这个格式的字符,pattern就是一个格式标准 

eg:for word in string.gmatch("This is a number: 4","%d")

        do

             print(word)

         end

输出结果:4

返回字符串中符合描述的字符串(可设置起始位置)

string.match(str, pattern, init)

str:目标字符串

pattern:所描述的格式

init:在字符串里面查找的起始位置,默认为1

eg:    print(string.match("this is 2 question", "%d %a+", 1))

输出结果:2 question

下面是字符串匹配的转义字符表示格式:

.(点): 与任何字符配对
%a: 与任何字母配对
%c: 与任何控制符配对(例如\n)
%d: 与任何数字配对
%l: 与任何小写字母配对
%p: 与任何标点(punctuation)配对
%s: 与空白字符配对
%u: 与任何大写字母配对
%w: 与任何字母/数字配对
%x: 与任何十六进制数配对
%z: 与任何代表0的字符配对
%x(此处x是非字母非数字字符): 与字符x配对. 主要用来处理表达式中有功能的字符(^$()%.[]*+-?)的配对问题, 例如%%与%配对

猜你喜欢

转载自blog.csdn.net/DY_1024/article/details/81254467